Repository navigation
0.5 — straps own env writing; copy becomes a residue mirror
Breaking clean break from the 0.4 config surface (ADRs 0007–0008). Suite: 159 bats tests green.
Env writing moves to straps (ADR-0007)
- The
env:block is deleted from the core config. Straps own every .env write, via the new core-lent helpers (source "$WTBS_LIB_DIR/strap-lib.sh"):wtbs_env_set,wtbs_state_set,wtbs_state_get— all dry-run aware. - Bundled db straps write
DB_DATABASEdirectly; the project's own keys belong to the project env strap (.wtbs/straps/env/, scaffolded automatically). - On activation, activated bundled straps are published into the project's
.wtbs/straps/— the project owns its copies; bundled becomes seed material. Skip with--no-publish/publish: false.
Copy becomes a git-aware residue mirror (ADR-0008)
copy: [file, …]lists are gone. All untracked files (including gitignored ones like.env) mirror from the main repo into the worktree, seed-only (never overwrites).- Exclusions via
copy.ignore:in the yml and/or a.wtbsignorefile (gitignore-style, both honored)..gitand.wtbs/always skipped.
Migrating from 0.4: env: entries become wtbs_env_set lines in .wtbs/straps/env/create; drop your copy: list and add copy.ignore: for node_modules/vendor/… instead. Legacy keys fail fast with pointers.