From 46549a7d9c15e84620ac326ef5954f2e1bd62524 Mon Sep 17 00:00:00 2001 From: Claude Date: Tue, 18 Aug 2026 13:34:21 +0000 Subject: [PATCH] docs(cli): name the fixture the `os compile` / `os info` transcripts were run against (#9430) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Both sample blocks in cli.mdx's Build & Validate section print `2 Objects 6 Fields` / `1 Views 1 Actions` / `3 plugins`, and the `os info` block also names `my_app_note` and `my_app_ticket`. Nothing on the page says where that project comes from: the page's own walkthrough builds a DIFFERENT fixture (`os generate object customer` / `action approve` / `flow onboarding`), which would print `my_app_customer` and a `Logic:` row. A reader who follows the page cannot reproduce the transcripts and has no way to tell whether the page or their own run is wrong. No printed value changes — the transcripts are verified against real runs (#9092/#9151 for `os compile`, #9342/PR #9429 for `os info`) and this is a pure insertion. What is added is the provenance those runs had and the page did not: * a Callout under the `os info` block naming the whole fixture — `npm create objectstack@latest my-app` (the `blank` starter: two-field `my_app_note`, three connector plugins) plus the four-field ticket object, the view and the action listed in build-with-claude-code.mdx, renamed out of `support_desk_` into `my_app_`, with that page's `support` app deliberately left out; * why the `UI:` row carries no `Apps` (printMetadataStats drops zero counts, packages/cli/src/utils/format.ts); * which lines are NOT fixture identity: timings are machine identity, the author-time rule count and artifact size track the CLI version; * one line under the `os compile` block pointing at that note, since its counts come from the same fixture and had the same gap. Every component of the counts is checkable in-tree: the blank template's note.object.ts (2 fields) and its three connector plugins, the ticket listing's 4 fields, one view, one action, and the scaffolder's namespace rewrite (rewrite-identity.ts) that makes `blank_note` read `my_app_note`. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01XqDQYVU5smx29ts9pAErja --- content/docs/deployment/cli.mdx | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/content/docs/deployment/cli.mdx b/content/docs/deployment/cli.mdx index 897b353ab0..43517f52df 100644 --- a/content/docs/deployment/cli.mdx +++ b/content/docs/deployment/cli.mdx @@ -418,6 +418,9 @@ os compile --json # JSON output for CI pipelines Artifact: dist/objectstack.json (7.6 KB) ``` +Those counts are from a sample project, named in full under [`os info`](#os-info) +below — the same fixture backs both output examples. + The resulting `dist/objectstack.json` is a **portable, self-describing deployment unit** — you can hand it to `os start` (locally or on a server), publish it to a CDN, or fetch it over HTTP from another runtime. See [`os start`](#os-start) and @@ -509,6 +512,23 @@ os info --json # JSON output for tooling Loaded in 59ms ``` + +**The project behind these counts.** The `os compile` and `os info` examples above were +run against one fixture, so the numbers can be rebuilt and checked rather than taken on +trust: the project this page scaffolds in +[Your First App in 2 Minutes](#your-first-app-in-2-minutes) — +`npm create objectstack@latest my-app`, whose `blank` starter supplies the two-field +`my_app_note` object and the three connector plugins — plus the four-field ticket object, +the view and the action listed under +[Build with Claude Code](/docs/getting-started/build-with-claude-code#3-what-claude-code-writes), +renamed out of that page's `support_desk_` namespace into `my_app_`. That page's `support` +app is **not** added, and a zero count is never printed, which is why the `UI:` row reads +`1 Views 1 Actions` with no `Apps`. The walkthrough's `os generate` commands are **not** +part of the fixture — run those as well and the summary gains `my_app_customer` and a +`Logic:` row. Timings are machine identity, and the rule count and artifact size track the +CLI version; everything else is fixture identity and reproduces. + + ### Schema migrations The metadata→database sync is **additive-only**: on boot it creates missing