Skip to content

feat(app-builder): add deterministic replay - #124

Merged
kattsushi merged 32 commits into
feat/app-builder-golden-cli-protocolfrom
feat/app-builder-golden-replay
Aug 14, 2026
Merged

feat(app-builder): add deterministic replay#124
kattsushi merged 32 commits into
feat/app-builder-golden-cli-protocolfrom
feat/app-builder-golden-replay

Conversation

@kattsushi

Copy link
Copy Markdown
Contributor

Closes #123

Tracker: #92

Chain Context

  • Strategy: feature-branch-chain
  • Current slice: PR 06 / Deterministic Replay
  • Base: feat/app-builder-golden-cli-protocol at fb2313382fb02d6753b7b55d6003800ebbd8a06d
  • Head: feat/app-builder-golden-replay at b7348d7eae289a6990c9d3142f293bad4217dafe
  • Out of scope: nested E2E, showcase, Effect AI, MCP, marketplace, arbitrary execution, and unrelated refactors.
tracker (#92) -> PR 01 -> PR 02 -> PR 03 -> PR 04 -> PR 05 -> 📍 PR 06 -> PR 07 -> PR 08

Summary

  • Adds canonical JSON/digest provenance and semantic dependency identity for frozen replay inputs.
  • Validates candidate and workspace output identities without crossing the Tree mutation boundary.
  • Binds the closed replay CLI command to trusted evidence while retaining JSON/JSONL framing and terminal semantics.

Changes

File Change
packages/app-builder/generation/src/{cjson,provenance,replay}.ts Adds canonical SHA-256 evidence, pin validation, semantic dependency comparison, and no-write replay validation.
packages/app-builder/generation/tests/replay.test.ts Covers R12/R13 and S21-S24 with a real Nx Tree replay harness.
packages/app-builder/cli/src/commands.ts Routes replay to the trusted validation authority.
openspec/changes/app-builder-golden-monorepo/tasks.md Marks only 6.1 and 6.2 complete.

Test Plan

  • pnpm nx run @effectify/repo:format:check passed.
  • pnpm nx run-many --target=lint|typecheck|test|build --projects=@effectify/app-builder-generation,@effectify/app-builder-cli passed.
  • Exact-parent pnpm nx affected --target=lint|typecheck|test|build --base=fb2313382fb02d6753b7b55d6003800ebbd8a06d --head=HEAD passed; existing warnings were outside this slice.
  • Built Node runtime replay returned exit 0, empty stderr, one Success terminal envelope, and { "diffPaths": [], "zeroDiff": true }.
  • No shell scripts changed; shellcheck is not applicable.

Contributor Checklist

@coderabbitai

coderabbitai Bot commented Aug 8, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: e96aaa8c-7427-4136-94eb-d9c204e60f52

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@kattsushi kattsushi added the type:feature New feature work label Aug 8, 2026
@kattsushi
kattsushi marked this pull request as ready for review August 8, 2026 21:00
refactor(app-builder): use declarative generation templates
feat(app-builder): prove installed CLI generation
feat(app-builder): preserve Todo v1 parity
feat(app-builder): materialize atomic Todo plans
feat(app-builder): add atomic Todo renderers
@kattsushi
kattsushi merged commit 50c58ab into feat/app-builder-golden-cli-protocol Aug 14, 2026
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type:feature New feature work

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant