Repository navigation
docs: re-measure the example CRM size (30 files, 1,844 lines, ~17.5k tokens) and state the commit it was measured at - #23876
Merged
Conversation
…sured at The four pages quoting the bundled example CRM's size (31 files, 1,929 lines, ~18,500 tokens) drifted again: the pages' own count command prints 30 files and 1,844 lines at 7a6ba03. Re-measure with that command and the bytes / 4 token method the figure was first made with, and state the measuring commit beside each figure, so the next edit to the example leaves the pages dated rather than wrong. The context-window post's Todo and showcase sizes, in the paragraph after the CRM table, had drifted the same way (90 showcase files, not 91) and are re-measured at the same commit under the same pin. Claude-Session: https://claude.ai/code/session_016PVjjuVPte5XEJvaQx1E4t Co-authored-by: Claude <noreply@anthropic.com>
Contributor
Author
席位核对 · ACCEPT · PR #23876 (draft, head
|
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.
Fixes #23832
Clause-②: no
What this changes
Four content pages quote the size of the bundled example CRM (
examples/app-crm) as 31 files, 1,929 lines and ~18,500 tokens. The count command those pages print gives 30 files and 1,844 lines onmain. This PR re-measures the figure. On every page that states it, the PR also names the commit the figure was measured at and links to the source tree at that commit.content/docs/concepts/metadata-driven.mdx7a6ba0310(linked), with tokens estimated at four bytes each. The example keeps changing, so count it yourself for today's numbers:"content/docs/getting-started/how-ai-development-works.mdx7a6ba0310, linked)"content/blog/context-window-is-the-constraint.mdx7a6ba0310(linked) over the non-test.tsfiles in each example'ssrc/, with tokens estimated at four bytes each. The examples keep changing, so today's counts will differ a little."content/blog/the-ontology-is-the-software.mdx7a6ba0310(linked)"The percentages derived from these figures stay the same. The CRM is still "about 9%" of a 200k window (8.8%). The showcase is still "about 87% of it, leaving about 13% free" (87.46%).
Every link targets
https://github.com/objectstack-ai/objectstack/tree/7a6ba03109dbb7e91359eb0f7f3e64dd1263bca8/examples/app-crm. The context-window post links to.../examplesinstead, because its pin covers three examples.Left alone
README.md:195-204prints the count command and states no figure: "small enough for an agent to load end-to-end ... Measure it yourself". There is nothing to pin, so it is untouched.1,929,1929,18,500,18.5k,31 files) overcontent/andREADME.mdhit 7 lines in the four pages above. They hit one more line,content/docs/releases/v17/17-5.mdx:942, where1929is part of#19291. That is not this figure, and the page is release-owned.Direction: (a), state the commit each figure was measured at
The card offers two directions short of a gate: (a) state the commit or release each figure was measured at, or (b) quote the figure once and link to it from the other pages. This PR takes (a). It is the only one of the two that stays true when the example next changes.
mainand gets a different number reads the page as dated, not wrong. Anyone can reproduce the exact figure by checking out the linked commit. The pages also now say how tokens were estimated, so the token figure is reproducible from the page.(a) adds one to five lines per page and changes no page's structure.
Commit, not release. A release would have to be mapped back to a tree before the figure could be checked. The commit link opens the measured tree directly.
The blog posts are re-measured, not kept with "at the time of writing". Neither post carries its time-of-writing figure today. The context-window post (dated 2026-07-17) was written with 1,792 lines and ~16,000 tokens. Both posts were rewritten to 1,929 / ~18,500 when those figures were re-measured at
3513ac778on 2026-10-08. "At the time of writing" would be false for both. One measuring commit across all four pages lets a reader check every figure with one checkout. After this PR, no page needs re-measuring for its figure to stay true.Measurements
Base:
origin/main7a6ba03109dbb7e91359eb0f7f3e64dd1263bca8, in this PR's worktree.A second reading, through git rather than the filesystem, agrees on files and bytes.
git ls-tree -r -l 7a6ba0310 -- examples/app-crm/src, summing the.tsfiles that are not.test.ts, gives 30 files and 70,655 bytes.origin/mainhas since moved to6db53acd663b.git diff --stat 7a6ba0310 6db53acd663boverexamples/app-crm/src,examples/app-todo/src,examples/app-showcase/src, the four pages andREADME.mdis empty, so every figure also holds at the current tip.Tokens
The method is the one recovered on the previous re-measure (PR #22267): bytes / 4, rounded to the nearest 500. Applied to the tree where the figure was first written, it reproduced the original ~16,000. Applied here:
A bounded fix on the same page: the Todo and showcase sizes
The context-window post's next paragraph quotes the Todo and showcase sizes, last re-measured at
58707166f(PR #22293). At this base they had drifted the same way. By the same command and method:git ls-tree -lat the same commit agrees: 27 files and 100,077 bytes for Todo, and 90 files and 699,704 bytes for the showcase.These sizes are re-measured at the same commit and covered by the same pin. Otherwise they would be the one unpinned, stale figure on a page whose new paragraph says "these figures were measured at commit
7a6ba0310". All four conditions for a bounded fix in this PR hold:Verification
This change is docs only. The gate list was derived from the actual diff with
node scripts/pm/dispatch-gates.mjs --commands --repo objectstack-ai/objectstack, with no path arguments: 4 paths against merge base7a6ba0310, 40 commands. Each command ran with its exit code recorded before any pipe, and the record was reconciled:1f0bbe4d1. They includecheck:doc-anchors,check:doc-authoring,check:docs-single-h1,check:docs-transcript-drift,check:nul-bytes,check:corpus-claim-drift,check:doc-formula-expressions,check:doc-security-posture,check:docsandcheck:skill-examples.@objectstack/lint...and@objectstack/client-react...were built first, under the shared verify lock (exit 0), so the gates that readdist/measured a built tree.pnpm --filtergate's log echoes its script name.node scripts/pm/check-governed-merges.mjs --branch claude/issue-23832-crm-size-pinreports 0 of 4 paths governed and 40 changed lines (+26 / -14), which is ordinary queue landing.No changeset.
content/**ships in no published package.Acceptance notes
security/sales-positions.ts) are still true.Generated by Claude Code