Examples cleanup: slim app-crm to its smoke core, migrate apis: to showcase, app-todo truth pass#2624
Merged
Merged
Conversation
…-crm Two ApiEndpoint artifacts (src/system/apis/): an object_operation task feed and a flow-typed POST that invokes the showcase_inquiry_purge janitor — the metadata counterpart of the code-mounted recalc endpoint. Executed by the runtime dispatcher (handleApiEndpoint); coverage records the apis stack collection as demonstrated, and gap-fill tests assert the wiring plus target liveness (a flow/object endpoint can never point at a name that doesn't exist). First half of the app-crm slim-down: apis: was the one feature demo in app-crm that is unique AND runtime-consumed, so it moves here before the crm feature matrix is removed. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G6pPpRszk9cD3SxcKNFMWs
app-crm's README declares it a minimal smoke-test app, but its config had grown a full feature matrix — including two demos of capabilities that are formally inert at runtime (mappings #2611, declarative connectors #2612 — Prime Directive #10) and several duplicated by the showcase's CI-enforced coverage (cube, own-object extension, webhooks, portal, themes, reports, jobs, emails, six extra flows). Removed the feature layer; kept the core the smoke purpose and CI need: 6 objects + relationships, 3 views, app, dataset-backed dashboard, hook, the convert-lead screen-flow wizard (+ its action), seed, datasources, translations/i18n, and security (roles/permissions/sharing — the CI verify --rls gate). requires: drops 'approvals' (no approval nodes remain). smoke.test.ts assertions pruned in lockstep (19 tests green). The one unique+working feature (declarative apis:) migrated to the showcase in the previous commit before this removal — no capability coverage is lost repo-wide. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G6pPpRszk9cD3SxcKNFMWs
…o the completeness bar app-todo: - README: replace the fictional 'AI Demo' section (test:ai / test:agent / service-ai / ai_traces — none of which ship) with the REAL MCP business-action E2E (test:mcp), the community-edition BYO-AI story (Prime Directive #10). Fix Reports 6→5 (Overdue is a ListView lens per ADR-0021), drop the retired 'workflows' claims (ADR-0020), refresh the structure tree (views/datasets/translations/data/docs existed but were omitted), license MIT→Apache-2.0 (matches package.json + headers). - translation-completeness: add ja-JP to the locale matrix — the repo's only Japanese bundle was declared+shipped but never held to the completeness bar (78 assertions, green). - Rename the two tsx driver scripts off the *.test.ts suffix (seed-check.ts, mcp-actions.e2e.ts) so the suffix means 'vitest spec' again; test:mcp script + README updated (E2E re-run, green). - reports/dashboard headers: the ADR-0021 dual-form migration window is over — comments now describe the single-form reality. embed-objectql: - README heading notes ADR-0076 is Proposed while the /core boundary itself has shipped — the example no longer implies a ratified decision. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G6pPpRszk9cD3SxcKNFMWs
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Third round of the examples overhaul (after #2619 showcase redesign and #2623 showcase optimization): bring the sibling examples in line with the upgraded protocol and the showcase's coverage contract. Three commits, each verified:
feat(showcase)— declarativeapis:demo. TwoApiEndpointartifacts (anobject_operationtask feed + a flow-typed POST invoking theshowcase_inquiry_purgejanitor) — the one feature in app-crm that was unique AND runtime-consumed (handleApiEndpoint), migrated before removal. Coverage recordsapisas demonstrated; gap-fill tests assert wiring + target liveness (53 showcase tests green).refactor(crm)— slim to the loading-pipeline smoke core. app-crm's README declares it a minimal smoke fixture, but its config had grown a feature matrix including two runtime-inert demos (mappings defineMapping artifacts are registered but never consumed — wire named mappings into REST import or de-scope from the stack #2611, declarative connectors Declarativeconnectors:stack entries are inert — bridge them to the automation connector registry or document as descriptor-only #2612 — Prime Directive chore: version packages #10) and several duplicated by the showcase (cube, own-object extension, webhooks, portal, themes, reports, jobs, emails, six extra flows). Removed the feature layer; kept objects/views/app/dataset-backed dashboard/hook/the convert-lead wizard/seed/datasources/i18n/security (the CIverify --rlssurface).requires:dropsapprovals(no approval nodes remain). smoke.test pruned in lockstep (19 tests green). Boot is lighter for thepnpm dev:crmdebug path.docs(todo,embed)— truth pass. app-todo README's fictional AI section (test:ai/test:agent/service-ai — none ship) replaced with the real MCP business-action E2E (test:mcp, re-run green); Reports 6→5 (Overdue is a ListView lens, ADR-0021); retiredworkflowsclaims dropped (ADR-0020); structure tree completed; license MIT→Apache-2.0. ja-JP — the repo's only Japanese bundle — added to the translation-completeness matrix (78 assertions green). The two tsx driver scripts renamed off*.test.tsso the suffix means vitest spec again. Stale ADR-0021 dual-form-window comments updated to the single-form reality. embed-objectql notes ADR-0076 is Proposed (the/coreboundary itself has shipped).Why
Each example keeps a distinct role — showcase: CI-enforced capability index · app-todo: beginner onboarding · app-crm: minimal loading-pipeline smoke + light dev target · embed-objectql: library embedding — but app-crm had drifted into a second, unenforced feature showcase (including inert-capability demos), and app-todo's README advertised an AI capability chain that does not exist in the open framework. This PR restores each example to its honest, single purpose; repo-wide capability coverage is now exclusively the showcase's CI-enforced job, and nothing was lost (the one unique working feature was migrated first).
Verification
pnpm --filter @objectstack/example-showcase verify— 53 tests green (includes new apis wiring/liveness assertions).pnpm --filter @objectstack/example-crm validate && typecheck && test— 19 tests green post-slim; validate output confirms the slim shape (1 flow, 3 roles, 2 permissions).pnpm --filter @objectstack/example-todo typecheckgreen;test:mcpE2E re-run green after the rename; vitest suite 78/78 (now including ja-JP).dev:crm, AGENTS.md, and docs reference the app/default export and security only (audited before deletion).🤖 Generated with Claude Code
https://claude.ai/code/session_01G6pPpRszk9cD3SxcKNFMWs
Generated by Claude Code