From 4b8ff84c6d46f9600a761dd5a9728b3450af789e Mon Sep 17 00:00:00 2001 From: os-steve Date: Mon, 17 Aug 2026 08:30:35 +0000 Subject: [PATCH] docs: re-derive the Support Desk clean-run stats from one real run (#9152) Both pages printed `Data: 1 Objects 6 Fields`, a line no run can emit: the object count comes from a project whose starter object was deleted and the field count from one where it was kept. Measured against the CLI built at origin/main, scaffolding `support-desk` from the `blank` template exactly as step 1 describes and applying the page's own listings: Data: 2 Objects 6 Fields UI: 1 Apps 1 Views 1 Actions Runtime: 3 plugins `6 Fields` was right all along -- 2 from the scaffolded `note` object plus 4 from the page's ticket. `1 Objects` was the wrong number. Deleting the starter object instead yields `1 Objects 4 Fields`; both variants were run. Also makes the run reconstructible from the page: adds the Support-nav app listing the prose already promises but never showed, and names the starter `note` object the counts depend on. Timings are machine identity, not fixture identity, and are left as #9151 left them. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01XqDQYVU5smx29ts9pAErja --- .../docs/deployment/validating-metadata.mdx | 4 +- .../build-with-claude-code.mdx | 45 ++++++++++++++++--- 2 files changed, 43 insertions(+), 6 deletions(-) diff --git a/content/docs/deployment/validating-metadata.mdx b/content/docs/deployment/validating-metadata.mdx index d5d693407c..51d3cffc16 100644 --- a/content/docs/deployment/validating-metadata.mdx +++ b/content/docs/deployment/validating-metadata.mdx @@ -538,9 +538,11 @@ A clean run walks the registry and reports timing: ✓ Validation passed (64ms) Support Desk v0.1.0 + Minimal ObjectStack environment — a clean slate for building. - Data: 1 Objects 6 Fields + Data: 2 Objects 6 Fields UI: 1 Apps 1 Views 1 Actions + Runtime: 3 plugins ``` On failure the exit code is non-zero and the error is located and corrective — diff --git a/content/docs/getting-started/build-with-claude-code.mdx b/content/docs/getting-started/build-with-claude-code.mdx index fd9850209b..1c1c675b0f 100644 --- a/content/docs/getting-started/build-with-claude-code.mdx +++ b/content/docs/getting-started/build-with-claude-code.mdx @@ -194,11 +194,44 @@ export const TicketViews = defineView({ }); ``` +```typescript title="src/apps/support.app.ts" +import { defineApp } from '@objectstack/spec'; + +export const SupportApp = defineApp({ + name: 'support_desk_support', + label: 'Support', + navigation: [ + { + id: 'grp_support', + type: 'group', + label: 'Support', + expanded: true, + children: [ + { + id: 'nav_open_tickets', + type: 'object', + label: 'Open', + objectName: 'support_desk_ticket', + viewName: 'open', + }, + ], + }, + ], +}); +``` + The agent also **wires the new files into `objectstack.config.ts`** — the object -through the `src/objects/index.ts` barrel, and the action and view via the -`actions:` / `views:` arrays in `defineStack()`. There is no filename-suffix -magic: metadata exists in the app only if the config imports it, so if a -freshly-authored action doesn't show up, the wiring is the first thing to check. +through the `src/objects/index.ts` barrel, and the action, view and app via the +`actions:` / `views:` / `apps:` arrays in `defineStack()`. There is no +filename-suffix magic: metadata exists in the app only if the config imports it, +so if a freshly-authored action doesn't show up, the wiring is the first thing to +check. + +What it does **not** touch is the starter `note` object the `blank` template +scaffolded in step 1 (`src/objects/note.object.ts`, two fields). Nothing asked +for it to go, so it stays in the project — which is why the counts below read +**two** objects and **six** fields, not one and four. Delete it once the ticket +object has replaced it and the same run reports `1 Objects 4 Fields`. This is the same metadata that powers the REST API, the Console UI, **and the MCP tools exposed to AI** — define it once, and ObjectStack derives the rest. @@ -255,9 +288,11 @@ Once it's clean: ✓ Validation passed (37ms) Support Desk v0.1.0 + Minimal ObjectStack environment — a clean slate for building. - Data: 1 Objects 6 Fields + Data: 2 Objects 6 Fields UI: 1 Apps 1 Views 1 Actions + Runtime: 3 plugins ```