Match evidence to the claim. Green pre-commit alone does not prove a journey or deployed health.
New claim? → fill out CLAIM-DISCOVERY.md first
(bun run docs:claim-discovery).
Upstream: harness-engineering proof thesis.
Markdown here is only a pointer. Enforcement is lint (error),
tsconfig.check.json / brand types, and the ratchets named under each artefact.
unit — pure logic / types Ratchet → bun test ·
bun run check:brands:typesboundary — wire → domain parse / spine ratchets Ratchet → staged brand
gate · harness eslint · check:path-bun · check:bun-envjourney — multi-step user/ops path Ratchet → scripted CLI sequence ·
contract JSONdeployed — live / machine state Ratchet → install:verify · machine
health · CI workflow greenbranded-ids — new domain IDs are branded after the boundary
(boundary + unit) Ratchet →
bun tools/branded-id-check.ts --staged --strict,
bun run check:brands:typesinstall-verify — Factory install produces a working Bun workspace
(journey + deployed) Ratchet → bun run proof:install ·
bun run install:verify (CI: repo-hygiene.yml)install-verify-journey — install:verify → HTML report → WebView asserts
#status = verified Ratchet → bun run test:install-verifytest-changed — import-graph affected tests (unit + journey)
Ratchet → bun run test:changed · bun run test:changed:main (CI:
harness-gates.yml)search-governance — bench gate policy holds (journey) Ratchet →
bun run search:bench:gate · .github/workflows/search-governance.ymlsearch-governance-basic — known query → WebView results (journey)
Ratchet → bun run test:search-governance ·
search-governance.mdruntime-cli-boundaries — critical Bun runtime CLI flags behave as
expected (boundary) Ratchet → bun test tests/fixtures/runtime-cli/ ·
evidence tests/fixtures/runtime-cli/**/fixture.test.ts Fixtures →
flag-placement/ (#watch) · resolution-order/ (#resolution-order) ·
shebang-bun/ (#bun) · console-depth/ (#bun-run-console-depth)bun-shell-boundaries — Bun.$ interpolation / error-handling / cwd behave
as expected Ratchet → bun test tests/fixtures/bun-shell/fs-native-boundaries — Bun.file / Bun.write / Bun.Glob behave as
expected Ratchet →
bun test tests/fs-bun.test.ts tests/bun-glob-scan.test.tsimage-metadata-boundaries — Bun.Image metadata extract / resize / verify
/ parse + TEST-003 remediation (awaitAllSettled · deepEquals unchanged ·
checkEvidenceTiming / runtime fingerprint) (unit + boundary) Ratchet →
bun test ./tests/image-metadata.test.ts · evidence
lib/image-metadata.ts ·
lib/screenshot-remediation.tsdeep-equals-boundaries — Bun.deepEquals wrapper + strict /
changed-index helpers (unit + boundary) Ratchet →
bun test ./tests/deep-equals.test.ts · evidence
lib/deep-equals.tspeek-settle-boundaries — Bun.peek settled-promise fast path
(awaitSettled / awaitAllSettled / peekIfSettled) (unit + boundary)
Ratchet → bun test ./tests/peek-settle.test.ts · evidence
lib/peek-settle.tsbun-time-boundaries — utils date/time/number tokens: Bun.nanoseconds ·
Bun.sleep/sleepSync · Bun.randomUUIDv7 · Bun.version/revision +
mintEvidenceId / mintEvidenceIdAt / checkEvidenceTiming (unit +
boundary) Ratchet → bun test ./tests/time.test.ts · evidence
lib/time.ts · wired into TEST-003 via
lib/screenshot-remediation.tscloudflare-pages-env-ssot — Pages project-r-score identity + build
pins in config/r2-env / .env.example (unit + boundary) Ratchet →
bun test tests/r2-env.test.ts · config/r2-env.ts
· tenants/cloudflare-pages.md ·
bun run cloudflare:env · :assert / :assert-apex (HTTP) · :assert-live
(API+apex)terminal-pty-boundaries — Bun.Terminal PTY helpers (spawnWithTerminal
/ capturing terminal) (unit + boundary) Ratchet →
bun test ./tests/terminal.test.ts · evidence
lib/terminal.tsconsole-depth-boundaries — lib/console-depth inspect/width/markdown
helpers + depth precedence (unit + boundary) Ratchet →
bun test tests/console-depth.test.ts · evidence
lib/console-depth.ts · CLI flag also under
runtime-cli-boundaries fixture console-depth/github-repository-ref-boundaries — Actions → git remote →
CANONICAL_REMOTES; fail-loud on garbage wire (unit + boundary) Ratchet
→ bun test tests/github-repository-ref.test.ts · evidence
lib/github-repository-ref.ts ·
AUTHORITY.mdmacros-embed-boundaries — bun build macros inline commit/branch + repo
parts; no substitute under plain bun scripts/*.ts (unit + boundary)
Ratchet → bun test tests/macros/embed-commit.test.ts · evidence
lib/macros/ ·
lib/macros/README.mdsecurity-hash-boundaries — Bun.password hash/verify and CryptoHasher
sha256/sha1 digests behave as expected Ratchet →
bun test tests/fixtures/security-hash/ · evidence
tests/fixtures/security-hash/**/fixture.test.ts Fixtures → password/ ·
cryptohasher/url-pattern-boundaries — Bun site URLs from URLPatternInit
protocol/hostname/pathname/hash (boundary) Ratchet →
bun test tests/bun-site-url.test.ts · evidence lib/docs/bun-site-url.tssocial-metadata-boundaries — HTMLRewriter extracts OG/Twitter/fallback
metadata correctly (boundary) Ratchet →
bun test tests/fixtures/social-metadata/ · evidence
lib/docs/extract-metadata.ts ·
guideblog-extraction-boundaries — article sans nav/footer (boundary)
Ratchet → bun test tests/fixtures/blog-extraction/ · evidence
lib/docs/blog-extract.tsfetch-page-boundaries — BunHarness page fetch: HTTPS, fragment strip,
Accept/UA, 15s timeout, optional verbose, non-OK throw, success body unread
(boundary) Ratchet → bun test tests/fixtures/fetch-page/ · evidence
lib/docs/fetch-page.ts ·
fetch
Call-site DNS → dns.prefetch(hostname) before fetchPage when host is
known; fetch.preconnect HTTPS still Invalid-port on 1.4 — use
bun --fetch-preconnect https://host:443 (startup) or
lib/http/fetch-preconnect.ts (HTTP OK)
· preconnect at startupblog-extraction-journey — CANONICAL_SOURCES.blog → URLPattern →
dns.prefetch → fetchPage → SocialMetadata + streamed article (journey)
Ratchet → bun test tests/journey/blog-extraction.test.ts · human-only
(live bun.com) · soft dns.getCacheStats after prefetchbun-http-server-docs — CANONICAL_REFS + GUIDE_EXAMPLES cover
runtime/http/server TOC (boundary) Ratchet →
bun test tests/bun-docs-catalog.test.ts · evidence tools/bun-doc-refs.ts ·
tools/bun-docs-guide-examples.ts ·
serverpath-bun — spine lib/ + tools/ do not import path / node:path
(boundary) Ratchet → bun run check:path-bunbun-env — spine lib/ + scripts/ do not use Node process.env
(boundary) Ratchet → bun run check:bun-env · eslint bun/prefer-bun-env
(error)invisible-chars — invisible/format Unicode code points are \u escapes
in source, not literal bytes (boundary) Ratchet →
bun run check:invisible-chars · evidence scripts/check-invisible-chars.ts
· // invisible-ok suppress · VS16 warn-only (--verbose) Origin →
tests/console-depth.test.ts vector corruption (U+200D→U+201D, U+FE0F→U+FE1D)
passed every validator; only width assertions caught itunknown-param — bare unknown params stay at parse edges (boundary)
Ratchet → eslint harness/no-unknown-function-param (error) ·
bun eslint --config eslint.bun-native.config.ts --quietday-loop-typecheck — advertised type-check covers spine agent edit
surfaces (journey) Ratchet → bun run type-check · tsconfig.check.jsonlib-docs-typecheck — lib/docs/** inside day-loop type-check (no
dual-era docs island) (boundary + journey) Ratchet →
bun run type-check · tsconfig.check.json include lib/docs/**/*lib-utils-typecheck — lib/utils/** inside day-loop type-check (no
dual-era utils island) (boundary + journey) Ratchet →
bun run type-check · tsconfig.check.json include lib/utils/**/*lib-core-typecheck — lib/core/** inside day-loop type-check with
ErrorSeverity enum (boundary + journey) Ratchet → bun run type-check
· tsconfig.check.json include lib/core/**/*lib-security-typecheck — lib/security/** inside day-loop type-check
(no dual-era security island) (boundary + journey) Ratchet →
bun run type-check · tsconfig.check.json include lib/security/**/*bun-cron — OS-persistent primary; in-process complement (unit +
boundary) Ratchet → bun run test:cron · cron.mdcron-os-persistent — OS register → entry → fire scheduled() → marker →
remove (journey + boundary) Ratchet → bun run test:cron-os ·
cron.mddocs-integrity — Bun docs stack integrity pass (journey + boundary)
Ratchet → bun tools/bun-doc-refs.ts schedule --once ·
tenants/docs-integrity.mdaudit-findings-catalog — FactoryWager audit findings+concepts verify
(evidence · graph · relatedDocs · catalog/page parity; sha3-256 primary)
(unit + boundary) Ratchet → bun run audit:verify · pre-commit (audit
SSOT staged) · ci:harness CHEAP · tools/bun-doc-refs.ts suggest --audit
· docs/audit/README.md · sibling SSOT (not BunToken)factory-registry-cli-v1 — R2 artifact registry client + CLI (publish,
install, list, search, readme) with README auto-detection; live path
is SigV4 S3Client via object-store.ts (unit + boundary) Ratchet →
bun test tests/registry.test.ts tests/cli.test.ts · lib/factory/ sourcesfactory-registry-pages-proxy-v1 — Pages Function /api/registry serves
allowlisted objects via R2 binding (unit + boundary) Ratchet →
bun test tests/registry-pages-function.test.ts ·
functions/api/registry/[[path]].ts · portal public/portal/factory-registry-integrity-v1 — Registry health, authenticated
publishing, full R2 size/SHA-256 audit, scheduled spine ownership, and
redacted Slack/Telegram alerts (unit + boundary) Ratchet →
bun test tests/factory-production.test.ts ·
tenants/registry-integrity.mdblog-codeblocks-boundaries — Blog div.CodeBlock extraction strips
Shiki markup, skips tabs, and preserves token joins (boundary) Ratchet →
bun test tests/bun-blog-codeblocks.test.ts tests/blog-codeblock-join.test.tsblog-codeblocks-journey — Live Bun blog HTML traverses fetchPostHtml →
extractCodeBlocks with the expected code-block inventory (journey)
Ratchet → bun test tests/journey/blog-codeblocks-journey.test.tsmulti-tenant-portal-v1 — Tenant config drives registry paths,
sidebar/manifest data, and proof badges (unit + boundary) Ratchet →
bun test tests/registry-pages-function.test.tsaccounts-r2-v1 — Portal account records and OIDC/Telegram indexes
persist through the R2 account store (unit) Ratchet →
bun test tests/accounts-r2.test.tsoperations-ssot-v1 — Unified operations schema and DB factory own
transactional dispatch, guardrails, reconciliation, sync, and backup (unit)
Ratchet →
bun test tests/operations-schema.test.ts tests/play-dispatcher.test.ts tests/account-service.test.ts tests/operations-phase2.test.ts tests/operations-phase3.test.tstelegram-webhook-v1 — Per-tenant Telegram webhooks validate their
secret, enqueue to R2 on Pages, and route commands on Bun (unit) Ratchet →
bun test tests/telegram-bot.test.ts tests/telegram-webhook-pages.test.ts ·
Pages functions/api/telegram/webhook/ + Bun consume ·
tenants/telegram-factory.mdops-loop-throughput — Closed loop dispatch → gate → settle → channels
with row-aligned loopCompletionRate ≥60% (journey + unit) Ratchet →
bun test tests/ops-loop-hardening.test.ts · bun run ops:loop:baseline /
ops:loop:post · tenants/ops-loop-throughput.mdops-snapshot-cron-v1 — In-process Bun.cron ops-snapshot refreshes
portal/Pages artifacts (ops-summary, monitoring, static, routing/bun-utils)
(unit + boundary) Ratchet → bun test tests/ops-snapshot-cron.test.ts ·
tenants/ops-snapshot.mdchannel-meta-verification-v1 — Channel-aware Bun verification tags rows
by subsystem; suite-aware saves isolate bundler/networking from
release-features; suite=all merges meta-proof; prefer-artifact meta refresh
bakes Pages via ops:snapshot / verify:channel:meta; channelMeta slice in
ops-summary / static.json / ops dashboard (unit + boundary) Ratchet →
bun test tests/channel-suite.test.ts tests/verification-subsystem.test.ts tests/bundler-loader-probes.test.ts tests/networking-channel.test.ts tests/verification-proof-taxonomy.test.ts tests/channel-meta-refresh.test.ts tests/verification-proof-consistency.test.ts
· tenants/channel-meta-verification.mdspine-multi-tenant — spine runs ≥2 in-process tenants (docs-integrity +
install-verify) (journey + boundary) Ratchet →
bun run spine:schedule:once -- --tenant=install-verify ·
cron.mdspine-maintenance-runbooks — TenantRunbook + SignalMonitor; retirement
attested + condition check; live freshRerun (boundary + journey)
Ratchet → bun run test:tenant-runbooks ·
spine-tenants.md ·
maintenance.ts ·
assertRetirementConditionCheckspine-tenant-heal — sandboxed E2E heal loop (break → signal → intervene
→ recover) (journey) Ratchet → bun run test:tenant-heal ·
heal-fixture.ts ·
tenant-heal.test.tscode-quality-tenants — types · harness coverage · orphan modules ·
complexity (boundary + journey) Ratchet → bun run test:code-quality ·
code-quality.mdharness-coverage-ratchet — lib/harness coverage ≥
coverage-baseline.json Ratchet → bun run test:harness-coverageharness-orphan-modules — every lib/harness/*.ts has an importer
Ratchet → bun run check:harness-orphansharness-complexity-floor — no lib/harness function exceeds
complexity-baseline.json Ratchet → bun run check:harness-complexityci-deploy-runbooks — CI/deploy jobs have runbooks; assertCICoverage
fail-closed Ratchet → bun run test:ci-deploy ·
ci-deploy.mdfreshRerunKind: 'catalog';
paste proves catalog presence, not intervention (see
FRESH-RERUN.md · Three catalogs). Each points at a runbook
in CI_RUNBOOKS ·
ci-deploy.md Ids → ci-core-envelope ·
typescript-ci-gate · deploy-production-preflight · deploy-staging-script
· bun-migrate-status Fresh-rerun → bun run docs:ci-deploy (shared;
prints live catalog) · fail-closed coverage → ci-deploy-runbooksHow each claim is enforced day-to-day. SSOT: ProofPath.gateClass +
gateRef in lib/harness/proof.ts. Catalog meta
(completeness · evidence⊇freshRerun · freshRerunKind) always applies. Classes:
pre-commit-harness and/or ci:harness / ci:core (Harness
Gates)freshRerun paste only (no always-on gate).
Do not label a package script as workflow unless a .github/workflows/*
job runs it.| id | class | gate / workflow |
|---|---|---|
branded-ids |
continuous | pre-commit brands staged‖smart; ci:harness smart; types when branded staged or --full |
install-verify |
continuous | ci:core · harness-gates |
install-verify-journey |
human-only | bun run test:install-verify |
test-changed |
continuous | ci:harness · harness-gates |
search-governance |
workflow | search-governance.yml · search:bench:gate |
search-governance-basic |
workflow | search-governance.yml · test:search-governance |
runtime-cli-boundaries |
continuous | ci:harness boundary-fixtures · bun test tests/fixtures/runtime-cli/ |
bun-shell-boundaries |
continuous | ci:harness boundary-fixtures · bun test tests/fixtures/bun-shell/ |
fs-native-boundaries |
continuous | ci:harness boundary-fixtures · fs-bun + bun-glob-scan |
image-metadata-boundaries |
human-only | bun test ./tests/image-metadata.test.ts |
deep-equals-boundaries |
human-only | bun test ./tests/deep-equals.test.ts |
peek-settle-boundaries |
human-only | bun test ./tests/peek-settle.test.ts |
bun-time-boundaries |
human-only | bun test ./tests/time.test.ts |
cloudflare-pages-env-ssot |
human-only | bun test tests/r2-env.test.ts |
terminal-pty-boundaries |
human-only | bun test ./tests/terminal.test.ts |
console-depth-boundaries |
human-only | bun test tests/console-depth.test.ts |
github-repository-ref-boundaries |
human-only | bun test tests/github-repository-ref.test.ts |
macros-embed-boundaries |
human-only | bun test tests/macros/embed-commit.test.ts |
security-hash-boundaries |
continuous | ci:harness boundary-fixtures · bun test tests/fixtures/security-hash/ |
url-pattern-boundaries |
continuous | ci:harness boundary-fixtures · bun test tests/bun-site-url.test.ts |
social-metadata-boundaries |
continuous | ci:harness boundary-fixtures · bun test tests/fixtures/social-metadata/ |
blog-extraction-boundaries |
continuous | ci:harness boundary-fixtures · bun test tests/fixtures/blog-extraction/ |
fetch-page-boundaries |
continuous | ci:harness boundary-fixtures · bun test tests/fixtures/fetch-page/ |
factory-registry-cli-v1 |
human-only | bun test tests/registry.test.ts tests/cli.test.ts |
factory-registry-pages-proxy-v1 |
human-only | bun test tests/registry-pages-function.test.ts |
factory-registry-integrity-v1 |
human-only | bun test tests/factory-production.test.ts |
blog-codeblocks-boundaries |
continuous | ci:harness · bun test tests/bun-blog-codeblocks.test.ts tests/blog-codeblock-join.test.ts |
blog-codeblocks-journey |
human-only | bun test tests/journey/blog-codeblocks-journey.test.ts |
multi-tenant-portal-v1 |
human-only | bun test tests/registry-pages-function.test.ts |
accounts-r2-v1 |
human-only | bun test tests/accounts-r2.test.ts |
operations-ssot-v1 |
human-only | operations Phase 1–3 unit suites |
telegram-webhook-v1 |
human-only | bun test tests/telegram-bot.test.ts |
ops-loop-throughput |
human-only | bun test tests/ops-loop-hardening.test.ts |
ops-snapshot-cron-v1 |
human-only | bun test tests/ops-snapshot-cron.test.ts |
channel-meta-verification-v1 |
continuous | ci:harness channel-meta step · also check:release-tracker |
blog-extraction-journey |
human-only | bun test tests/journey/blog-extraction.test.ts |
bun-http-server-docs |
continuous | ci:harness boundary-fixtures · bun test tests/bun-docs-catalog.test.ts |
path-bun |
continuous | pre-commit (lib|tools staged) · ci:harness |
bun-env |
continuous | pre-commit (lib|scripts staged) · ci:harness · eslint prefer-bun-env |
invisible-chars |
continuous | pre-commit (spine/test .ts staged) · ci:harness |
unknown-param |
continuous | pre-commit / ci:harness eslint |
day-loop-typecheck |
workflow | typescript-checks.yml · type-check (required check) |
lib-docs-typecheck |
workflow | typescript-checks.yml · type-check (required check) |
lib-utils-typecheck |
workflow | typescript-checks.yml · type-check (required check) |
lib-core-typecheck |
workflow | typescript-checks.yml · type-check (required check) |
lib-security-typecheck |
workflow | typescript-checks.yml · type-check (required check) |
bun-cron |
human-only | bun run test:cron |
cron-os-persistent |
human-only | bun run test:cron-os |
docs-integrity |
human-only | bun-doc-refs schedule --once · spine tenant |
audit-findings-catalog |
continuous | pre-commit (audit SSOT staged) · ci:harness · bun run audit:verify |
spine-multi-tenant |
human-only | spine:schedule:once -- --tenant=install-verify |
spine-maintenance-runbooks |
human-only | bun run test:tenant-runbooks (live tenant freshReruns; heavy) |
spine-tenant-heal |
human-only | bun run test:tenant-heal |
harness-coverage-ratchet |
continuous | ci:harness dual-catalog · test:code-quality |
harness-orphan-modules |
continuous | ci:harness dual-catalog · test:code-quality |
harness-complexity-floor |
continuous | pre-commit staged lib/harness; also test:code-quality in ci:harness |
code-quality-tenants |
continuous | ci:harness dual-catalog · bun run test:code-quality |
ci-deploy-runbooks |
continuous | ci:harness dual-catalog · bun run test:ci-deploy |
ci-core-envelope |
continuous | live gate ci:core; freshRerun = catalog docs:ci-deploy |
typescript-ci-gate |
workflow | typescript-checks.yml (required); freshRerun = catalog |
deploy-production-preflight |
human-only | catalog via docs:ci-deploy; behavior = deploy:production |
deploy-staging-script |
human-only | catalog via docs:ci-deploy; behavior = deploy:staging |
bun-migrate-status |
human-only | catalog via docs:ci-deploy; behavior = migrate:status |
Counts (must match gateClass tallies):
continuous 25 · workflow 8 · human-only 29.
Discover (display only, not gates): bun run harness:status ·
bun run docs:fresh-rerun.
Routing for lib/ modules. Bun docs = oven-sh / bun.com. Other external
= non-Bun (pinned types, thesis, Actions wire, etc.). Repo docs stay in-tree.
| Module / claim | Repo docs | Bun docs | Other external |
|---|---|---|---|
branded-ids · lib/types/branded* |
lib/types/branded/README.md · skill .agents/skills/branded-ids/ |
— | domain-modeling · parse, don’t validate |
bun-time-boundaries · lib/time.ts |
claim in this file · tests/time.test.ts |
utils (nanoseconds, sleep, randomUUIDv7, version) |
— |
deep-equals-boundaries · lib/deep-equals.ts |
claim · tests/deep-equals.test.ts |
Bun.deepEquals | — |
peek-settle-boundaries · lib/peek-settle.ts |
claim · tests/peek-settle.test.ts |
Bun.peek | — |
terminal-pty-boundaries · lib/terminal.ts |
claim · tests/terminal.test.ts |
Bun.Terminal / PTY | — |
console-depth-boundaries · lib/console-depth.ts |
AGENTS.md · BUN_NATIVE_CAPABILITIES.md · tests/console-depth.test.ts · bench tools/benchmarks/console-depth-perf.ts |
runtime/console · utils (inspect · stringWidth) · markdown.ansi · color · sliceAnsi |
bun-types pin |
github-repository-ref-boundaries · lib/github-repository-ref.ts |
AGENTS.md · AUTHORITY.md · lib/docs/repo-docs.ts |
Bun.env · spawnSync | GitHub Actions GITHUB_REPOSITORY* |
macros-embed-boundaries · lib/macros/ |
lib/macros/README.md · AUTHORITY.md · tests/macros/embed-commit.test.ts |
bundler · macros · serializability · plugins (unused) | — |
image-metadata-boundaries · lib/image-metadata.ts |
claim · lib/screenshot-remediation.ts · tests/image-metadata.test.ts |
Bun.Image | — |
url-pattern-boundaries · lib/docs/bun-site-url.ts |
claim · tests/bun-site-url.test.ts |
URLPattern | — |
social-metadata-boundaries · lib/docs/extract-metadata.ts |
claim · tests/fixtures/social-metadata/ |
HTMLRewriter social meta · HTMLRewriter | — |
blog-extraction-boundaries · lib/docs/blog-extract.ts |
claim · tests/fixtures/blog-extraction/ |
HTMLRewriter | — |
fetch-page-boundaries · lib/docs/fetch-page.ts |
claim · tests/fixtures/fetch-page/ |
fetch | Bun issue oven-sh/bun#21633 (fetch.preconnect deferred) |
path-bun · lib/path-bun.ts |
claim · bun run check:path-bun |
Bun path helpers (via lib/path-bun + bun-doc-refs) |
— |
bun-env |
claim · bun run check:bun-env |
Bun.env · environment variables | — |
cloudflare-pages-env-ssot · config/r2-env.ts |
tenants/cloudflare-pages.md · .env.example · public/index.html |
— | Cloudflare Pages / Wrangler (dashboard + API; not Bun) |
harness ratchets (coverage · orphans · complexity) |
lib/harness/README.md · code-quality.md |
— | harness-engineering |
type-check islands · lib/{docs,utils,core,security} |
claims lib-*-typecheck · tsconfig.check.json |
— | — |
audit-findings-catalog · lib/audit/ |
docs/audit/README.md |
— | — |
factory-registry-cli-v1 · lib/factory/ |
claim this file · tests/registry.test.ts · tests/cli.test.ts · object-store.ts · markdown.ts |
S3Client · Bun.semver · Bun.file · Bun.write · Bun.CryptoHasher · Bun.env · Bun.markdown · Bun.TOML · Bun.inspect.table · Bun.spawn | Cloudflare R2 (S3 SigV4) |
factory-registry-pages-proxy-v1 · functions/api/registry/ |
claim this file · tests/registry-pages-function.test.ts · public/portal/ · public/registry/registry.json |
Pages Functions · R2 bindings — no Bun.* on edge | Cloudflare Pages + R2 binding |
factory-registry-integrity-v1 · lib/factory/{health,integrity,monitoring,alerts,server}.ts |
tenants/registry-integrity.md · tests/factory-production.test.ts |
Bun.cron · Bun.CryptoHasher · Bun.serve | Cloudflare Pages + R2 binding · Slack · Telegram |
| Module | Repo docs | Bun docs | Other external |
|---|---|---|---|
lib/gate-map.ts · lib/gate-report-monorepo.ts |
file headers · .agents/skills/ast-grep/gate-map.json |
Bun.env · Bun.file · Bun.spawn | kimi-toolchain JSON summary (optional gate step) |
lib/projects-scan.ts |
file header · bun run registry:projects consumers |
Glob · Bun.file · spawnSync · Bun.which · Bun.peek | — |
lib/text.ts |
slugify helpers (Mintlify/GitHub-style) | Bun.stringWidth (related width work lives in console-depth) | — |
lib/index.ts |
barrel re-exports | — | — |
lib/mcp/ · lib/r2/ · lib/rss/ · lib/package/ · lib/ai/ · lib/theme/ · lib/performance/ · lib/shared/ · lib/constants/ |
domain README.md indexes · bun run lib:domains:check |
varies per module @see |
product/Cloudflare/R2 as applicable |
Resolve Bun URLs via bun tools/bun-doc-refs.ts suggest "<api>" before
inventing new @see lines.
Every path above has a freshRerun command in
lib/harness/proof.ts. Ratchet →
FRESH-RERUN.md · paste command output in the PR body when
touching the claim’s owner.
Do not invent a ProofPath by editing files ad hoc. Fill
CLAIM-DISCOVERY.md (Q0–Q14) so ceremony path (slim vs
full), claim / kinds / gateClass / gateRef / evidence / freshRerun /
freshRerunKind, contract asserts, and PR paste are decided before code.
Ratchet → bun run docs:claim-discovery · answered questionnaire in the PR or
commit trail
Each proof row carries subsystem (orthogonal to release channel in semanticTags). SSOT: lib/verification/types.ts · lib/verification/subsystem.ts · tools/canonical-helpers.ts.
| Subsystem | Script | Lib module | Proof JSON | Canonical source |
|---|---|---|---|---|
runtime |
tools/verify-bun-release.ts |
lib/docs/bun-release-tracker.ts |
public/registry/release-features.json |
Blog anchors + living runtime docs |
runtime |
tools/verify-bun-runtime-nits.ts |
lib/verification/bun-runtime-nits-probes.ts |
public/registry/bun-runtime-nits-proof.json |
CANONICAL_RUNTIME_NITS_TOKENS |
package-manager |
tools/verify-install-platform.ts |
lib/verification/install-platform.ts |
public/registry/install-platform.json |
CANONICAL_INSTALL_PLATFORM_TOKENS |
package-manager |
tools/verify-install-env.ts |
lib/verification/install-env-probes.ts |
public/registry/install-env-proof.json |
CANONICAL_INSTALL_ENV_TOKENS |
networking |
tools/verify-networking.ts --save · tools/verify-channel.ts --suite=networking |
lib/http/networking-proof.ts |
public/registry/networking-proof.json · networking-channel-proof.json |
fetch/DNS/preconnect docs |
bundler |
tools/verify-bundler.ts (optional) |
lib/verification/bundler-loader-probes.ts |
public/registry/bundler-loaders-proof.json |
bundler/loaders docs |
| (meta) | tools/verify-proof-taxonomy.ts --save |
lib/verification/proof-taxonomy.ts · proof-consistency.ts |
public/registry/proof-taxonomy-audit.json |
contract shape + cross-proof parity |
Each proof row may carry subsystem, introducedIn, canonicalKey, canonicalKind, canonicalStability (see tools/canonical-helpers.ts).
Ratchet → bun run verify-all · bun run verify:proof-taxonomy · bun run check:release-tracker · bun test tests/verification-canonical-coverage.test.ts · bun test tests/canonical-helpers.test.ts · bun test tests/verification-proof-consistency.test.ts · bun test tests/verification-proof-taxonomy.test.ts
CLAIM-DISCOVERY.md
(slim or full path from Q0).ProofPath.claim).gateClass + gateRef, freshRerunKind (claim |
catalog), and owner.childIds (CI / CQ / spine) so dual-catalog
membership can’t drift.freshRerun and keep
the output (PR body) — FRESH-RERUN.md.Code SSOT: lib/harness/proof.ts. Discover:
bun run harness:status · bun run docs:fresh-rerun ·
bun run docs:claim-discovery.