8000 Gates refuse a sprint in the run-data dir; record run 24 (haiku-supervisor experiment) by adeelahmad · Pull Request #41 · adeelahmad/aloop · GitHub
[go: up one dir, main page]

Skip to content

Gates refuse a sprint in the run-data dir; record run 24 (haiku-supervisor experiment) - #41

Merged
adeelahmad merged 1 commit into
masterfrom
claude/project-thread-vm6wyr-sprint-dir
Oct 18, 2026
Merged

adeelahmad merged 1 commit into
masterfrom
claude/project-thread-vm6wyr-sprint-dir

Conversation

@adeelahmad
Copy link
Copy Markdown
Owner

Requested by Adeel · project thread

Before: a sprint could be planned and built anywhere. Live run 24, an experiment with a haiku supervisor on the two-story wordfreq intent, put the whole sprint under .aladdin/sprint1/, the git-ignored run-data dir that is never committed. Every gate passed it, and the run's three planning checks found no sprint (10/13). The haiku supervisor also saved nothing: $0.66 in 51 turns against sonnet's $0.76 in 24 (run 23).

After: gate-stage2-complete and gate-dispatch refuse a sprint dir or a STORY_DIR inside .aladdin/ or .agentic/, and the block names docs/agents/sprintN/ and the mv to get there. With no argument, the stage-2 gate looks in docs/agents/ first. make e2e-live takes MODEL= for the supervisor, so the experiment reproduces as make e2e-live YES=1 INTENT=wordfreq MODEL=haiku. The supervisor stays on the strong route.

How: a path-component check on the resolved sprint dir (stage-2) and on the contract's STORY_DIR (dispatch), before the existing checks. ROADMAP M0.8 and the evidence ledger record run 24 as an experiment, not a public number; CHANGELOG, bin/README, SKILL.md and TRACKING are updated.

Evidence: tests written first and red before the change: planner-stuck.test.py 6/6 (new: refused named or discovered, for both dirs) and dispatch.test.py 13/13 (new: refused for both dirs, the docs/agents dir still passes). make test-hosts pycheck json conformance version-check shellcheck eval-validate OK, check-tracking 46 requirements, claude plugin validate --strict passes.


Generated by Claude Code

…visor experiment)

Live run 24 ran wordfreq with a haiku supervisor: 10/13, $0.66 in 51 turns (sonnet: $0.76 in
24), and the supervisor planned and built the whole sprint under .aladdin/sprint1/, the
git-ignored run-data dir. Every gate passed it. gate-stage2-complete and gate-dispatch now refuse
a sprint or STORY_DIR inside .aladdin/ or .agentic/ and name docs/agents/sprintN/; with no
argument the stage-2 gate looks in docs/agents/ first. Tests written first (red, then green).
make e2e-live takes MODEL= for the supervisor so the experiment reproduces as a make target.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014j4wLin3oJTtnvjE9Lq2VV
@adeelahmad adeelahmad self-assigned this Oct 18, 2026
@adeelahmad
adeelahmad merged commit 685a48b into master Oct 18, 2026
4 checks passed
adeelahmad pushed a commit that referenced this pull request Oct 18, 2026
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015QxyVf3NgwsgRyYpBgDDTC
adeelahmad pushed a commit that referenced this pull request Oct 18, 2026
…not .aladdin/

SKILL.md's layout tree listed `sprintN/` below `<project>/.aladdin/` (run data), and live
run 24's haiku supervisor put the whole sprint in `.aladdin/sprint1/` (#41 made the gates
refuse it). The tree now nests sprintN/ under docs/agents/ and draws .aladdin/ as run
data only. scripts/test/skill-layout.test.py checks the tree and holds SKILL.md to a
50 KB budget so #43's trim does not grow back.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015QxyVf3NgwsgRyYpBgDDTC
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.

2 participants

0