docs(work): tick story 00, record scope amendment and lint heads-up

Story 00 landed as 093de02 (reviewer-approved). Records the mid-flight
scope amendment (coverage-exclude calibration for the 4 packages whose
latent failures the provider outage masked) and adds the story-03
warning that breaking the package cycle triggers the repo's first-ever
real ESLint run.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016j8z4VHjedXDTjEDNg7qHK
This commit is contained in:
2026-07-12 13:55:29 +02:00
parent 093de02711
commit 45288d3df0
3 changed files with 10 additions and 7 deletions

View File

@@ -8,7 +8,7 @@ feature: tooling
depends-on: []
blocks: []
created: 2026-07-12T11:25:00Z
updated: 2026-07-12T11:16:19.512Z
updated: 2026-07-12T11:55:30.668Z
---
## Goal
@@ -28,13 +28,15 @@ The first dispatched slice discovered (and the orchestrator verified) that the t
## In scope
- The `@vitest/coverage-v8` devDependency additions + lockfile update.
- Correcting the documented L0 invocation everywhere it appears in repo docs/prompts.
- Correcting the documented L0 invocation everywhere it appears in repo docs/prompts (including CI workflows that invoke the broken form — keeping CI's L0 step meaningful is the story's point).
- **Coverage-config calibration for the 4 packages whose latent threshold failures the provider outage had masked** (cms, core-trpc, web-next, web-tanstack) — _amended 2026-07-12 after the implementer surfaced them_: apply the repo's own feature-package pattern (`coverage.exclude` for framework glue — Next.js layouts/pages/route handlers, TanStack routes, tRPC React providers/bootstrap). Guardrail: exclude non-testable glue honestly; do NOT lower thresholds to fit bad coverage — if a package still fails after honest excludes, that residue is a real gap to surface, not calibrate away.
## Out of scope
- Breaking the `core-trpc → core-api` package cycle (resolved structurally by story 03's deletions; waiver until then).
- Any coverage-threshold or manifest band changes.
- Feature-package manifest `coverage.bands` changes (the five feature packages stay untouched).
- Writing new tests for framework glue (excluded glue needs no tests; anything not honestly excludable surfaces as a reported gap).
## Tasks
- [ ] Add `@vitest/coverage-v8` to the 9 packages missing it (cms, core-audit, core-cms, core-eslint, core-testing, core-trpc, turbo-generators, web-next, web-tanstack), update the lockfile, and correct the documented L0 invocation in `.sandcastle/implementer.prompt.md` + `docs/guides/coverage.md` (+ CLAUDE.md if it repeats the broken form) — one commit; the full L0 run passes across all coverage-capable packages.
- [x] Add `@vitest/coverage-v8` to the 9 packages missing it (cms, core-audit, core-cms, core-eslint, core-testing, core-trpc, turbo-generators, web-next, web-tanstack), update the lockfile, and correct the documented L0 invocation in `.sandcastle/implementer.prompt.md` + `docs/guides/coverage.md` (+ CLAUDE.md if it repeats the broken form) — one commit; the full L0 run passes across all coverage-capable packages. _(landed 093de02 — squash of the reviewed two-commit slice; L0 sweep 21/21 via new root `pnpm test:coverage`; includes the amended-scope coverage-exclude calibration for cms/core-trpc/web-next/web-tanstack, reviewer-verified excludes-only)_

View File

@@ -8,7 +8,7 @@ feature: web-tanstack, blog, media, marketing-pages, navigation
depends-on: [02-single-version-release-please]
blocks: [04-web-next-shell, 08-rewrite-agent-docs]
created: 2026-07-12T10:22:00Z
updated: 2026-07-12T11:16:19.512Z
updated: 2026-07-12T11:55:30.668Z
---
## Goal
@@ -32,6 +32,7 @@ The demo content blocks the package map: the Veect features (workspaces, project
- The five deletion slices and their wiring/seed/e2e/Storybook/glossary pruning.
- Fixing any ESLint/turbo boundary config or generator breakage a deletion causes, inside the causing slice.
- **Heads-up for the final deletion slice:** breaking the package cycle means `pnpm lint` executes for the FIRST TIME EVER on this repo — latent ESLint errors across surviving packages may surface all at once. Fixing them is part of that slice (the waiver expires there); budget for it and report BLOCKED with specifics if the latent-error volume is beyond a single slice, so the orchestrator can split a follow-up story.
## Out of scope