Skip to content

feat(plan+manifest): output planning + manifest (Phase 6 S4+S5, #110) - #114

Merged
drawmeanelephant merged 1 commit into
mainfrom
feat/plan-manifest-s4s5
Aug 21, 2026
Merged

drawmeanelephant merged 1 commit into
mainfrom
feat/plan-manifest-s4s5

Conversation

@drawmeanelephant

Copy link
Copy Markdown
Owner

Closes #110

Phase 6 S4+S5 — oliver plan + oliver manifest.

S4 — oliver plan (contract oliver-contract.md:162 + rc-render.sh:289-358):

  • oliver plan --content-dir <dir> --output-dir <dir> --template-dir <dir> --meta-dir <dir> --default-template <file> --oliver-bin <bin> --root-dir <dir> --dry-run <bool> --verbose <bool> > batch.tsv (13 cols: src dst template assets_root soul oliver_bin root content output template_dir meta_dir dry_run verbose)
  • Discovery via walk for *.md|*.textile|*.cook, strip_source_ext, dst derivation, basename collision abort (error.Collision), ASSETS_ROOT = rk_up_dirs(depth+1), soul = meta_dir/strip_source_ext(rel).soul.md or NONE, sorted srcs.
  • Filesystem is CLI-only (src/plan.zig).

S5 — oliver manifest (contract oliver-contract.md:164 + rc-render.sh:136-153):

  • oliver manifest --manifest <file> --add <rel> dedup (grep -Fxq>>, create dirs/touch), --verify no-op, --help.
  • src/manifest.zig (Io, dedup, parent dirs).

Harness: fake_oliver already mimics both (rc-test.sh:244-339); probes plan --help and manifest --help/--add/--verify flip from skip to pass after bump. Hermetic crypt/busy/sterile stays green.

Verification: zig build test 91/91 (incl. plan/manifest), zig build ok, manual plan 13-col TSV, collision abort, manifest dedup/verify, plan --help/manifest --help.

- src/plan.zig: walk content_dir for *.md/*.textile/*.cook, strip_source_ext, dst derivation, collision abort, ASSETS_ROOT depth (rk_up_dirs), soul derivation (NONE sentinel), 13-col TSV sorted
- src/manifest.zig: --manifest --add dedup (create dirs/touch, grep -Fxq), --verify no-op, --help
- src/main.zig: Command.plan/manifest, parseArgs, dispatch, usage

Closes #110
@drawmeanelephant
drawmeanelephant merged commit 9ad86a3 into main Aug 21, 2026
3 checks passed
@drawmeanelephant
drawmeanelephant deleted the feat/plan-manifest-s4s5 branch August 21, 2026 17:43
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.

feat: oliver plan + oliver manifest (Phase 6 S4+S5)

1 participant