Releases: jimutt/dld-kit
v0.7.0
What's Changed
- New
/dld-reindexskill (#21) — Resolves decision ID collisions between a local branch and the base branch (and open PRs) before rebasing. When two developers independently draft a decision under the sameDL-NNNID, the skill renames the local copies to free IDs, rewrites@decisionannotations and cross-references, and squashes branch history into a single rebase-clean reindex commit. Includes:plan-renames.sh— single planning step combining collision detection,gh-aware PR scan (scoped todecisions/records/), and free-ID assignment.rename-decision.sh—git mvpreserves rename history; patches frontmatter, body self-refs, cross-refs in other local decisions, and@decision(DL-OLD)annotations in locally-changed code. Digit-aware (renamingDL-100won't touchDL-1000).find-stale-mentions.sh— surfaces bareDL-OLDmentions in code prose for the agent to review in context (no blanket find-and-replace).commit-reindex.sh— explicit-path staging (nogit add -A), INDEX.md held back to merge-base state to avoid rebase conflicts,EXITtrap rolls HEAD back on failure.resolve-base.sh— smarter upstream detection withorigin/mainfallback.- Explicit
AskUserQuestionconsent gate before the history rewrite.
- Open-PR awareness — when
ghis installed and authenticated against a GitHub remote,/dld-reindexalso scans open PRs so renamed IDs don't collide with someone else's in-flight work. Gracefully degrades whenghis unavailable. - README — adds a "Working in a team" section covering the collision-resolution flow.
Full Changelog: v0.6.0...v0.7.0
v0.6.0
What's Changed
- Incremental snapshot updates (#16) — The snapshot skill now detects what changed since the last run and applies targeted edits instead of rewriting SNAPSHOT.md and OVERVIEW.md from scratch. Includes
detect-snapshot-changes.shscript,commit_hashstate tracking,--fullflag, and auto-commit of pending decision files before change detection. - Review subagent step for dld-implement (#15) — The implement skill now spawns a review subagent to verify implementation quality before completing.
Full Changelog: v0.5.0...v0.6.0
v0.5.0
What's new
amends relationship for partial decision modification
New amends frontmatter field allows a decision to partially modify a previous one without fully superseding it. Amended decisions stay accepted — the amendment changes part of the original's scope while the rest remains in effect.
create-decision.sh: new--amendsflag/dld-decide&/dld-plan: prompt now distinguishes supersede (full replace) vs amend (partial modify)/dld-audit: informational check for amended decisions + mandatory missing-amends detection via newfind-missing-amends.shscript/dld-audit-auto: amend-aware auto-fix rules + script-driven missing amends backfill/dld-snapshot: cross-referenced*Amends:*/*Amended by:*annotations and relationship diagram edges/dld-implement: context-gathering now includes amended decisions- Steering rule: updated to distinguish supersede vs amend
New script: find-missing-amends.sh
Deterministic audit helper that finds decision IDs referenced in body text but not declared in supersedes or amends fields. Gives audits a concrete starting point for detecting missing amendment relationships.
Test fixes
- Fixed macOS compatibility:
/varvs/private/varsymlink resolution,sed→awkin structure tests - 8 new tests for
find-missing-amends.sh - 111/111 tests pass on macOS
v0.4.0
What's new
Configurable snapshot artifacts (#10)
/dld-snapshot can now generate custom documentation artifacts beyond the built-in SNAPSHOT.md and OVERVIEW.md. Define them in dld.config.yaml:
snapshot_artifacts:
- title: ONBOARDING.md
prompt: >
Generate a developer onboarding guide that explains the system
from scratch, assuming no prior context.
- title: API-CONTRACTS.md
prompt: >
Summarize all API-related decisions into a single API contract reference.Each artifact is synthesized from the decision log using the provided prompt and written to decisions/ alongside the built-in files. Per-artifact timestamps are tracked in .dld-state.yaml.
Test suite & CI (#12)
Added 102 bats tests covering all shell scripts and project structure, with GitHub Actions running on every PR and push to main.
- Tier 1: Unit tests for config parsing, ID generation, decision creation, status updates, index regeneration, annotation detection, snapshot/audit state tracking
- Tier 2: Structural checks for dual directory sync, script path references, SKILL.md frontmatter validation, tile.json integrity
Other changes
- Mermaid escaping rules added to snapshot diagram guidelines (#11)
- Clarified immutability semantics: decision content is immutable once accepted, metadata (status, references) is not
- Fixed missing
compatibilityfield indld-audit-autoSKILL.md
v0.3.0
Breaking Changes
- Decision records moved to
records/subdirectory.DL-*.mdfiles now live indecisions/records/instead of directly indecisions/. High-level docs (INDEX.md, OVERVIEW.md, SNAPSHOT.md, PRACTICES.md) and state files (.dld-state.yaml) remain at thedecisions/root. Existing projects need tomkdir decisions/records && mv decisions/DL-*.md decisions/records/(and for namespaced projects, move namespace subdirectories intorecords/).
What's New
- Added
get_records_dir()helper tocommon.sh - All scripts, SKILL.md files, steering rule, and docs updated to use the new layout