You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
ci: los contratos de release y los presupuestos seguían en la era de upstream
Tras el commit de ayer, main seguía rojo en Version drift y Lint. Cada
puerta que fallaba tapaba a la siguiente, así que aquí van todas las que
salieron al correrlas localmente en orden:
- release-workflows.test.js leía scripts/release/install.sh, borrado a
propósito en 5551d9d. Fuera esas tres aserciones.
- Exigía que nightly.yml no mencionara ghosty-tui, pero el alias
ghosty-tui-* es intencional desde el rebase (antes codew-*) y el propio
test pide el cmp primario/alias. Queda sólo la guardia contra compilar
un segundo binario.
- Contaba 34 assets de release; el inventario es de 27 desde 75fe13c
(dos familias, no tres). Test, mensaje final y runbook alineados.
- Pedía un job npm con trusted publishing que el rebase quitó: npm se
publica a mano. Fuera ese bloque.
- Presupuesto de dead-code: 389 allow(dead_code) en tui contra 372. No
vienen de los últimos commits; se fija el número actual para que la
puerta vuelva a vigilar crecimiento desde aquí.
- Presupuesto del contrato de runtime: el prompt base normalizado mide
6074 bytes (baseline 6089) y todas las identidades de stage cambiaron en
cascada. Los nombres de tools no cambiaron y todo métrica baja salvo
project.delta_bytes (255 -> 261). Rebaseline desde el recibo medido.
- web/data/latest-published-release.json decía v0.9.11 con v0.0.20
publicado; refrescado a mano junto con su espejo en
docs/public-surface-facts.json y facts.generated.ts, porque la API de
GitHub no respondía desde aquí.
Aparte, y sin tocar código: Sync to CNB y Web Frontend quedan desactivados
en el fork con `gh workflow disable`. CNB necesita un secreto del espejo
Tencent de upstream que no tenemos; Web Frontend corre seis contratos del
sitio de ghosty.net, que ni es nuestro ni se despliega (ver 5551d9d).
Se reactivan con `gh workflow enable` si esa decisión cambia.
Corrido localmente: release-workflows.test.js, assemble-release-assets
.test.js, runtime_web_client.test.mjs (36), check-dead-code-budget.py,
check-runtime-contract-budget.py y sus dos harness, web check:facts y
check:latest-release.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01T93Y7PFGs7ueC8Y7gyAizq
"_comment": "Ceiling for `#[allow(dead_code)]` across crates/. This number may go down freely; raising it needs a reviewer to say why in the PR. Regenerate with: python3 scripts/check-dead-code-budget.py --update",
Copy file name to clipboardExpand all lines: scripts/runtime-contract-budget.json
+32-32Lines changed: 32 additions & 32 deletions
Original file line number
Diff line number
Diff line change
@@ -1,47 +1,47 @@
1
1
{
2
-
"_comment": "One-way numeric ceilings and exact structural identities for the provider-free runtime contract. Decreases pass; increases or identity changes fail. Lock in decreases with: python3 scripts/check-runtime-contract-budget.py --update The v0.9.8 child-receipt restore grew every production tool surface by 1496 schema bytes / 374 estimated tokens (agent tool). The v0.9.8 workshop read/tool-result byte fields then grew every production tool surface by 371 schema bytes / 93 estimated tokens. Both raises are explicit maintainer decisions; identities stay on the pre-raise digests only if the name set is unchanged \u2014 re-measure on Linux CI if Lint reports identity drift. The v0.9.8 pinned session prefix added the <context_update> sentence to the base prompt (5848 -> 6084 bytes, every representative stage re-hashed), and the host-side Workflow/Goal verbs plus honest child posture grew the tool catalog (active 16531 -> 16602 bytes, full 71473 -> 72371); both are explicit v0.9.8 maintainer decisions measured from the release train. The v0.9.9 configured-skills change hides only custom configured-root paths, preserves discoverable default-root paths, normalizes Windows prompt separators, and trims 50 redundant skills-prompt bytes. The skill/memory/goal/handoff identities were re-measured without raising any ceiling. Explicit maintainer decision for #5473/#5492. The v0.9.10 full surfaces intentionally add the safe read_media tool; their measured schemas remain below the prior byte/token ceilings. Representative prompt byte metrics now use the same host-independent normalized text as their identities; the normalized base is 6089 bytes. The v0.9.11 model-visible sub-agent surface intentionally retires six legacy agents/* tools in favor of the canonical agent tool; all affected schema and prompt metrics decrease.",
2
+
"_comment": "One-way numeric ceilings and exact structural identities for the provider-free runtime contract. Decreases pass; increases or identity changes fail. Lock in decreases with: python3 scripts/check-runtime-contract-budget.py --update The v0.9.8 child-receipt restore grew every production tool surface by 1496 schema bytes / 374 estimated tokens (agent tool). The v0.9.8 workshop read/tool-result byte fields then grew every production tool surface by 371 schema bytes / 93 estimated tokens. Both raises are explicit maintainer decisions; identities stay on the pre-raise digests only if the name set is unchanged \u2014 re-measure on Linux CI if Lint reports identity drift. The v0.9.8 pinned session prefix added the <context_update> sentence to the base prompt (5848 -> 6084 bytes, every representative stage re-hashed), and the host-side Workflow/Goal verbs plus honest child posture grew the tool catalog (active 16531 -> 16602 bytes, full 71473 -> 72371); both are explicit v0.9.8 maintainer decisions measured from the release train. The v0.9.9 configured-skills change hides only custom configured-root paths, preserves discoverable default-root paths, normalizes Windows prompt separators, and trims 50 redundant skills-prompt bytes. The skill/memory/goal/handoff identities were re-measured without raising any ceiling. Explicit maintainer decision for #5473/#5492. The v0.9.10 full surfaces intentionally add the safe read_media tool; their measured schemas remain below the prior byte/token ceilings. Representative prompt byte metrics now use the same host-independent normalized text as their identities; the normalized base is 6089 bytes. The v0.9.11 model-visible sub-agent surface intentionally retires six legacy agents/* tools in favor of the canonical agent tool; all affected schema and prompt metrics decrease. Ghosty 0.0.20 (2026-09-01): the normalized base prompt measures 6074 bytes (was 6089) and every representative stage identity was re-measured from it; all byte/token ceilings decrease and the tool name sets are unchanged. Re-baselined after the gate had been skipped by an upstream dead-code failure since 2026-08-30.",
0 commit comments