From 7dbab2bc31f4a7f3860c81d82d0790e446e219fb Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 17 Aug 2026 12:10:07 +0000 Subject: [PATCH] docs: name the 16k measurement's host "the bundled example CRM" (#9293) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The three passages that measure `examples/app-crm` at ~16k tokens called their subject "the whole business system" / "the entire business system". Beside the new tagline ("a complete CRM in under 150k tokens") that made two different numbers claim the same host noun on the first screen. Host nouns only; both numbers, the 8% figure and the reproducible `find … wc -l` command are untouched, and the tagline copy is not edited here. After this each number owns one host: 16k is the bundled example CRM, 150k the complete CRM, 100k the business logic alone. Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_017TNzEetykdh7ceZGwuAPLq --- README.md | 4 ++-- content/docs/concepts/metadata-driven.mdx | 4 ++-- content/docs/getting-started/how-ai-development-works.mdx | 6 +++--- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 34c5683eb8..23e84eed35 100644 --- a/README.md +++ b/README.md @@ -140,10 +140,10 @@ The reason this works is the same reason TypeScript was the right host language: **an agent's errors become located, corrective text it can read and fix itself**, in seconds — instead of a silent runtime failure nobody traces back. -The other half is size. The CRM in this repo — [`examples/app-crm`](./examples/app-crm): +The other half is size. The bundled example CRM — [`examples/app-crm`](./examples/app-crm): six objects, views, a dashboard, a lead-conversion flow, permission sets, actions, translations — is **31 files, 1,792 lines, roughly 16k tokens**. That's the whole -business system, in about 8% of a 200k-token context window. Count it yourself: +example app, in about 8% of a 200k-token context window. Count it yourself: ```bash find examples/app-crm/src -name '*.ts' -not -name '*.test.ts' | xargs cat | wc -l diff --git a/content/docs/concepts/metadata-driven.mdx b/content/docs/concepts/metadata-driven.mdx index e28c6d9b54..74aa5cfb2e 100644 --- a/content/docs/concepts/metadata-driven.mdx +++ b/content/docs/concepts/metadata-driven.mdx @@ -211,7 +211,7 @@ React Flutter A simple CRUD feature that takes ~300 lines of hand-written code is ~30 lines of metadata. But per-feature ratios are the least interesting part. Here is the -measurement that matters — the CRM bundled in this repo +measurement that matters — the bundled example CRM ([`examples/app-crm`](https://github.com/objectstack-ai/objectstack/tree/main/examples/app-crm): six objects, views, a dashboard, a lead-conversion flow, permission sets, actions, translations): @@ -222,7 +222,7 @@ actions, translations): | Lines | 1,792 | | Approximate tokens | ~16,000 | -That's the **whole business system** — about 8% of a 200k-token context window. +That's the **whole example app** — about 8% of a 200k-token context window. Count it yourself: ```bash diff --git a/content/docs/getting-started/how-ai-development-works.mdx b/content/docs/getting-started/how-ai-development-works.mdx index 57b0c21198..6be7726fa6 100644 --- a/content/docs/getting-started/how-ai-development-works.mdx +++ b/content/docs/getting-started/how-ai-development-works.mdx @@ -26,10 +26,10 @@ build the thing I actually meant?* ## Why it's fast A typical enterprise app spreads CRUD, forms, queries, permissions, and API glue -across dozens of files. ObjectStack keeps only the part that's yours: the CRM -bundled in this repo — six objects, views, a dashboard, a lead-conversion flow, +across dozens of files. ObjectStack keeps only the part that's yours: the bundled +example CRM — six objects, views, a dashboard, a lead-conversion flow, permission sets, actions, translations — is **1,792 lines across 31 files, about -16k tokens**. That's the entire business system, not a module of it. +16k tokens**. That's the whole example app, not a module of it. The point isn't lines of code; it's **fit in an agent's context window.** When the entire business system is small, typed, and declarative, an agent can load it