Files
agentic-dev/.sandcastle
Danijel Martinek 093de02711 fix(tooling): restore L0 coverage sweep across all packages
The template baseline shipped 9 packages without @vitest/coverage-v8
and documented an L0 invocation turbo cannot parse — the full coverage
sweep had never run. Adds the provider (pinned to the feature-package
spec), a root test:coverage script, corrects every live doc/prompt/CI
occurrence, and calibrates coverage excludes for the 4 packages whose
latent threshold failures the outage masked (framework glue only —
zero threshold numbers changed). L0 sweep now passes 21/21.

Squash of a284baa + 5c6af95 (worktree-agent-a013c67cea83b2636),
implemented and reviewed via the dispatch loop under the epic's
baseline waiver (lint pending story 03).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016j8z4VHjedXDTjEDNg7qHK
2026-07-12 13:55:00 +02:00
..
2026-07-12 08:15:46 +00:00
2026-07-12 08:15:46 +00:00
2026-07-12 08:15:46 +00:00
2026-07-12 08:15:46 +00:00
2026-07-12 08:15:46 +00:00
2026-07-12 08:15:46 +00:00
2026-07-12 08:15:46 +00:00
2026-07-12 08:15:46 +00:00

.sandcastle/

This directory holds prompt templates that the future orchestrator (pnpm work dispatch in the sandcastle-dispatch-v1 epic) feeds to sandcastle when dispatching agents.

Prompt templates

File Role Variables
prd-eliciter.prompt.md Interview a human to produce a PRD draft {{INITIAL_BRIEF}}
adr-eliciter.prompt.md Interview a human to produce an ADR draft {{INITIAL_PROPOSAL}}
decomposer.prompt.md Turn a PRD into epic + story files {{PRD_FILE_CONTENT}}
implementer.prompt.md Execute a single task {{TASK_FILE_CONTENT}}
reviewer.prompt.md Review the implementer's diff {{TASK_FILE_CONTENT}}, {{DIFF}}

Convention: every prompt enforces "generators first"

Each prompt template starts with the same non-negotiable rule: the agent must prefer pnpm turbo gen <kind> over hand-rolled scaffolding. This applies to feature packages, events, jobs, realtime channels, optional core packages, and atomic-design components. Hand-rolled code is only acceptable when the generator's output doesn't cover the case — and even then, the agent runs the generator first and modifies its output rather than starting from scratch.

Environment

Configure runtime tokens via .env (gitignored). Copy .env.example and fill values for the providers you use.

Build the sandbox image (one-time)

Sandcastle dispatches into a Docker image tagged sandcastle:<root-package-name>. Build it once per clone before pnpm work dispatch --execute or pnpm work decompose <id> --execute will work:

pnpm exec sandcastle docker build-image
# Tags: sandcastle:template-vertical

Rebuild after editing this Dockerfile:

pnpm exec sandcastle docker remove-image
pnpm exec sandcastle docker build-image

See docs/guides/runbook.md → Using Sandcastle → Prerequisites for the full setup.

Manual usage

Until the orchestrator ships, these templates are usable manually: copy the relevant .prompt.md content into a Claude / Codex / other agent session, fill the {{VARIABLE}} placeholders by hand, and run.