diff --git a/content/blog/how-to-review-ai-generated-app-changes/index.mdx b/content/blog/how-to-review-ai-generated-app-changes/index.mdx index 012d764..a430cee 100644 --- a/content/blog/how-to-review-ai-generated-app-changes/index.mdx +++ b/content/blog/how-to-review-ai-generated-app-changes/index.mdx @@ -26,6 +26,8 @@ ObjectStack ships one shared author-time rule registry โ€” `packages/lint/src/au - **42 rules** in that registry. **29 of them can emit `error`**, which means they fail a build. - Those 29 run behind **four doors**, and the door your change came through decides how many of them ran. +*Both counts, and the 16 / 13 split below, were taken at objectstack `7da4cc2b` (2026-09-02); the registry has grown since.* + The doors are `os validate`, `os build`, `os lint`, and the **runtime publish gate** โ€” the path a Studio save, a REST `/meta` write, and an MCP/AI authoring call all funnel through. The registry's own invariant is that any rule which can emit `error` runs on all three CLI commands, so those three are one wall with three doors. The fourth is not equivalent: **16 of the 29 gating rules are wired to the runtime publish gate; the other 13 run only on the CLI.** Among the 13 are the two enforceability gates for row-level security and sharing rules. ![Four doors into one metadata wall: the three CLI commands run all 29 gating rules, while the runtime publish gate runs 16 of them](./review-gate-doors-en.svg) diff --git a/content/blog/how-to-review-ai-generated-app-changes/review-gate-doors-en.svg b/content/blog/how-to-review-ai-generated-app-changes/review-gate-doors-en.svg index ef70710..d5c91b0 100644 --- a/content/blog/how-to-review-ai-generated-app-changes/review-gate-doors-en.svg +++ b/content/blog/how-to-review-ai-generated-app-changes/review-gate-doors-en.svg @@ -56,4 +56,5 @@ Gating rules that run on the CLI only โ€” including the enforceability gates for row-level security predicates and sharing rules. + Counted at objectstack 7da4cc2b ยท 2026-09-02