Skip to content

Add tests for report command JSON output#28

Open
Garifallos wants to merge 6 commits into
alphacrack:mainfrom
Garifallos:patch-2
Open

Add tests for report command JSON output#28
Garifallos wants to merge 6 commits into
alphacrack:mainfrom
Garifallos:patch-2

Conversation

@Garifallos

Copy link
Copy Markdown
Contributor

What this changes

The grounding invariant

The LLM never publishes anything a fresh container didn't independently
execute. Grounding is enforced in code, not prompts.

  • This change does not let an unverified command reach tutorial.md,
    step_by_step.md, commands.sh, or the demo tape — or it adds a
    code-level check (not just a prompt rule) that keeps that true.
  • Sandbox hardening flags in sandbox.py are unchanged (or the change is
    explicitly discussed in the PR body).

Tests

  • python -m pytest tests/ -q passes locally.
  • Bug fixes carry a regression test named for the failure/run that found it.
  • parse_transcript / normalize.py changes stayed pure and
    deterministic (no LLM calls; testable against fixtures).

Prompt changes (if any)

  • N/A — this PR doesn't touch prompts/*.md.
  • Included a before/after transcript or run report as evidence.

Housekeeping

  • One concern per PR.
  • Type hints + docstrings on new/changed public functions.
  • If stages or boundaries moved, architecture/README.md and CLAUDE.md
    are updated to match.

@Garifallos
Garifallos requested a review from alphacrack as a code owner July 10, 2026 01:27

@alphacrack alphacrack left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nothing to merge, empty PR

@alphacrack

Copy link
Copy Markdown
Owner

Thanks for this contribution — the test made it in and did its job. Two things happened since: the last "Merge branch 'main' into patch-2" resolved to main's tree wholesale, so this PR now carries an empty diff (merging it would change zero files), and the report --json repair in #79 (v0.6.0) replaced the original test with a stronger regression test over a populated manifest — the original asserted cost == 0.0 on a manifest recording cost 1.50, which is exactly how the #29 breakage slipped past CI. Recommending close as superseded: the work itself shipped in v0.6.0. 🙏

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