Skip to content

docs: re-derive the three scaffolded-project transcripts after the description drop (#9342) - #9429

Merged
os-steve merged 1 commit into
mainfrom
claude/issue-9342-scaffold-description-transcripts
Aug 18, 2026
Merged

docs: re-derive the three scaffolded-project transcripts after the description drop (#9342)#9429
os-steve merged 1 commit into
mainfrom
claude/issue-9342-scaffold-description-transcripts

Conversation

@os-steve

Copy link
Copy Markdown
Collaborator

Fixes#9342

#9263 (merged via PR #9335) makes create-objectstackdrop the blank template's own manifest.description at scaffold time. Three docs pages still quoted that line inside a scaffolded-project transcript, so all three had gone stale together.

Both printers guard on presence (packages/cli/src/commands/validate.ts:294, packages/cli/src/commands/info.ts:64), so the row does not become empty or undefinedit disappears entirely. Confirmed in my own runs, not inherited.

Re-derived from real runs — not hand-edited

CLI and scaffolder built at origin/main (b2d9e04d1); both fixtures scaffolded from the blank template with the built create-objectstack.

Fixture A — Support Desk (os validate). Scaffolded support-desk, then applied build-with-claude-code.mdx's own listings: the ticket object, the resolve action, the ticket views and the Support app, wired through the src/objects/index.ts barrel and the actions: / views: / apps: arrays exactly as the page's prose describes.

 ✓ Validation passed (180ms)
Support Desk v0.1.0
Data: 2 Objects 6 Fields
UI: 1 Apps 1 Views 1 Actions
Runtime: 3 plugins

Fixture B — my-app (os info). A different command surface, which is why this page could not be fixed from #9263's one-page framing. Scaffolded my-app, added the ticket object, one view and one action (no app), reproducing 1 Views 1 Actions and both object rows verbatim.

◆ Info
────────────────────────────────────────
My App v0.1.0
my-app
Namespace: my_app
Type: app
Data: 2 Objects 6 Fields
UI: 1 Views 1 Actions
Runtime: 3 plugins
Objects:
my_app_note (2 fields, user) — Note
my_app_ticket (4 fields, user) — Ticket
Loaded in 88ms

Verified mechanically, not by eye. Each edited block was diffed line by line against its run after normalising the config path and the timings. All three match; the only residual difference is Loaded in 59ms vs 88ms on cli.mdx. Timings and the sanitised /path/to/... are machine identity, not fixture identity, and are left as #9151 / #9262 left them.

#9152's work does reconstruct

The Support Desk fixture was built only from build-with-claude-code.mdx's own listings, and it reproduces every documented row — 2 Objects 6 Fields, 1 Apps 1 Views 1 Actions, 3 plugins, and Running author-time rules (41). The self-reconstructibility PR #9262 established is intact; no regression to report there.

Scope

Three line deletions, nothing else. Deliberately untouched:

The card's own acceptance check now holds: git grep -n "Minimal ObjectStack environment" -- content/docs/ returns no hits.

Gates

Union re-derived from the actual changed paths with node scripts/pm/dispatch-gates.mjs, run after the final commit, at e92291332 — all green:

check:nul-bytes · check:docs-audit-scope · check:docs-redirects · check:role-word · spec check:empty-state · spec check:liveness · spec check:strictness-ledger · spec check:variant-docs · check-cross-package-test-inputs

Plus a control-byte self-scan over the three changed files (no hits).

Docs-only, releases nothing — skip-changeset.


Generated by Claude Code

…scription drop (#9342)
#9263 makes `create-objectstack` drop the blank template's own
`manifest.description` at scaffold time, so no scaffolded project prints
"Minimal ObjectStack environment — a clean slate for building." any more. Three
pages still quoted it inside a scaffolded-project transcript.
Re-derived from real runs against the CLI built at origin/main (b2d9e04), not
hand-edited:
* `os validate`, Support Desk — scaffolded `support-desk` from the `blank`
template and applied build-with-claude-code.mdx's own listings (ticket
object, resolve action, ticket views, Support app). Confirms #9152's work
still reconstructs: the page's listings alone reproduce
`2 Objects 6 Fields` / `1 Apps 1 Views 1 Actions` / `3 plugins`, and
`Running author-time rules (41)`.
* `os info`, my-app — scaffolded `my-app` from the same template with the
ticket object, one view and one action (no app), reproducing
`1 Views 1 Actions` and both object rows verbatim.
Both printers guard on presence (`validate.ts:294`, `info.ts:64`), so the row
does not become empty or `undefined` — it disappears entirely, and the
surrounding rows are byte-identical to the run. Verified mechanically: each
edited block now matches its run line for line, modulo the config path and the
timings, which are machine identity and are left as #9151/#9262 left them.
`cli.mdx`'s manifest-configuration example still shows a `description:` key.
That is a hand-authored config, not a scaffolded-project transcript, and
`description` remains an authorable manifest field — only the scaffolder's
carry-over went away.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XqDQYVU5smx29ts9pAErja
@os-steveos-steve added the skip-changeset PR has no user-facing published change; bypasses the changeset gate label Aug 18, 2026 — with Claude
@github-actionsgithub-actionsBot added the documentation Improvements or additions to documentation label Aug 18, 2026
@os-steve
os-steve marked this pull request as ready for review August 18, 2026 01:10
@os-steve
os-steve added this pull request to the merge queueAug 18, 2026
Merged via the queue into main with commit 6e211b7Aug 18, 2026
25 checks passed
@os-steve
os-steve deleted the claude/issue-9342-scaffold-description-transcripts branch August 18, 2026 01:23
os-steve pushed a commit that referenced this pull request Aug 18, 2026
…were run against (#9430)
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 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XqDQYVU5smx29ts9pAErja
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentationImprovements or additions to documentationsize/xsskip-changesetPR has no user-facing published change; bypasses the changeset gate

Projects

None yet

Development

Successfully merging this pull request may close these issues.

docs: three scaffolded-project transcripts still print the blank template's description line, which #9263 removes

1 participant

@os-steve