Skip to content

fix(site): the onboarding snapshot follows the refreshed catalog, so the build passes again - #1171

Merged
dmitrii-f-t27 merged 2 commits into
gHashTag:mainfrom
dmitrii-f-t27:fix/onboarding-snapshot
Sep 24, 2026
Merged

dmitrii-f-t27 merged 2 commits into
gHashTag:mainfrom
dmitrii-f-t27:fix/onboarding-snapshot

Conversation

@dmitrii-f-t27

@dmitrii-f-t27 dmitrii-f-t27 commented Sep 24, 2026 •

Copy link
Copy Markdown
Collaborator

The catalog refresh (#1039) moved the manifest to 1577 specs over 12 repositories, and apps/website prebuild (onboarding-from-spec) refuses to build while specs/catalog/onboarding.t27 still carries the 2026-09-21 snapshot. That is what failed the vibee-editor image on Railway at 17:49 UTC today (9 mismatches: SPEC_COUNT says 1419, the manifest says 1577 -- write 1577, …), so app.t27.ai kept serving the 2026-09-21 board.

  • Snapshot set to the manifest: 1577 specs, 451235 lines, health 1185 / 232 / 160, 12 repositories, 7 worlds, 160 unparsed, 113 partial, measured 2026-09-24.
  • The two subset asserts become <=: the seven specs that parsed and lost a backend were repaired this week, so every remaining fail is unparsed and a strict < turned that repair into a build failure — the spec's own rule is that a test must not forbid its subject from reaching zero.
  • public/agents.t27 / public/llms.txt regenerated.
  • src/data/siliconHistory.ts: the refresh also vendored tt-trinity-gamma's copies of three converters and three widths above the GF4–GF24 ladder, which turned check:silicon red on main; they get the same EXCLUDED reasons as their tt-trinity-euler twins.

npm run build with prebuild passes locally; onboarding-from-spec --check: 10 spec tests, 54 asserts, all hold. Follow-up worth doing separately: let the nightly scan rewrite this snapshot, or every refresh that moves the counts will break the build again.

{
  "version": 1,
  "head_sha": "e95bf21fa369609d47a3bcf8bc56d6fef7722f71",
  "summary": "The catalog refresh (#1039) moved the manifest to 1577 specs over 12 repositories, and the site's prebuild step onboarding-from-spec refuses to build while specs/catalog/onboarding.t27 still carries the 2026-09-21 snapshot. That failed the vibee-editor image on Railway, so app.t27.ai kept serving the old board. This updates the snapshot and relaxes two subset asserts that the week's spec repairs made false.",
  "changes": [
    "specs/catalog/onboarding.t27: snapshot constants set to the manifest (1577 specs, 451235 lines, health 1185/232/160, 12 repositories, 7 worlds, 160 unparsed, 113 partial, measured 2026-09-24)",
    "specs/catalog/onboarding.t27: HEALTH_FAIL_JS_ONLY and HEALTH_FAIL_UNPARSED are asserted <= HEALTH_FAIL instead of <, because every remaining fail is now unparsed after the backend-only failures were repaired",
    "public/agents.t27 and public/llms.txt regenerated by onboarding-from-spec"
  ],
  "tests": [
    {
      "command": "node scripts/onboarding-from-spec.mjs --check",
      "result": "Up to date; spec tests 10, asserts 54, all hold",
      "status": "passed",
      "evidence": "Local run on this branch at the manifest merged in #1039"
    },
    {
      "command": "npm run build (apps/website, prebuild included)",
      "result": "prebuild generators and vite build complete without errors",
      "status": "passed",
      "evidence": "Local run on this branch; the same step failed on Railway for 21780d8 with nine snapshot mismatches"
    },
    {
      "command": "python3 scripts/pr_blog_report.py validate --event event.json --output out",
      "result": "This PR body validates against the work report contract",
      "status": "passed",
      "evidence": "Local run of the script from main with a synthetic event at this head"
    }
  ],
  "limitations": [
    "The nightly scan still does not update this snapshot, so the next refresh that moves the counts will need the same edit unless the scan learns to write it; that is left as a separate change"
  ],
  "tags": [
    "site",
    "catalog",
    "build"
  ],
  "blog": {
    "title": "A snapshot that must match the corpus, and a week that moved the corpus",
    "summary": "The agent-facing page on t27.ai carries a dated snapshot of the spec corpus, and the build refuses to ship when the snapshot and the manifest disagree. The first catalog refresh in a week moved every number, so the snapshot is updated here.",
    "outline": [
      "The site's agent onboarding document states how many specs the corpus holds and how many of them compile.",
      "The build compares those numbers with the manifest and fails when they differ, so the document cannot drift quietly.",
      "The first catalog refresh since September 21 brought twelve repositories and 1577 specs, and the build stopped.",
      "The week's repairs also removed every spec that parsed but lost a backend, so a strict subset assertion became false.",
      "With the snapshot and the assertion updated, the site builds again and the refreshed map can ship."
    ]
  }
}

🤖 Generated with Claude Code

…the build passes again

The catalog refresh (gHashTag#1039) moved the manifest to 1577 specs over 12
repositories, and apps/website prebuild (onboarding-from-spec) refuses to
build while specs/catalog/onboarding.t27 still carries the 2026-09-21
snapshot. That is what failed the vibee-editor image on Railway at
2026-09-24 17:49, so app.t27.ai kept serving the 2026-09-21 board.

- Snapshot to the manifest: SPEC_COUNT 1577, SPEC_LINES 451235, health
  1185 / 232 / 160, REPO_COUNT 12, WORLD_COUNT 7, HEALTH_FAIL_UNPARSED 160,
  HEALTH_PARTIAL 113, MEASURED_AT 2026-09-24.
- The subset asserts become '<=': the seven specs that parsed and lost a
  backend were repaired, so every remaining fail is unparsed, and a strict
  '<' made that repair fail the build (the spec's own rule: a test must not
  forbid its subject from reaching zero).
- public/agents.t27 and public/llms.txt regenerated.

npm run build (prebuild included) passes locally; onboarding-from-spec
reports 10 spec tests, 54 asserts, all hold.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The catalog refresh (gHashTag#1039) vendored tt-trinity-gamma's own copies of three
format converters and three widths above the GF4-GF24 ladder. The silicon
coverage gate (website-checks, check:silicon) requires every spec naming a
verified format to be classified, so it went red on main. They get the same
EXCLUDED reasons as their tt-trinity-euler twins.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@dmitrii-f-t27
dmitrii-f-t27 merged commit e0cadc0 into gHashTag:main Sep 24, 2026
18 of 22 checks passed
github-actions Bot added a commit that referenced this pull request Sep 24, 2026
fix(site): the onboarding snapshot follows the refreshed catalog, so the build passes again (#1171)

Snapshot constants in specs/catalog/onboarding.t27 set to the manifest the catalog refresh (#1039) brought (1577 specs, 12 repositories); the subset asserts become <= because every remaining fail is now unparsed; public/agents.t27 and llms.txt regenerated; the six tt-trinity-gamma copies are classified for check:silicon. npm run build and website-checks pass.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant