Repository navigation
Releases
v1.6.1 — README/landing parity, honest claims, hermetic test suites
Fixed
- README: the directory tree listed files that do not exist
(docs/publicacion-github.md,docs/difusion/); skill count (15), suite
count (7) and assert count (178) now match the tree; ES script aliases
documented; test badge derived from the real suites. - Landing (
docs/index.html): language note aligned with the README (factory
in English, working language chosen at init);claudestep added between
init-system.shand/repo-add. - Comparison table: replaced the vague "limited" cells with what each tool
actually offers for brownfield; tagline softened from "cannot lie" to
"derived from real sources, with provenance seals" (README, landing, banner). test-dora.sh: fixture commits carry an explicit git identity, so the suite
passes on clean runners withoutuser.name/user.email.test-docs.sh: the smoke run over the real workspace now writes to a temp
copy; running the suite no longer modifies trackeddocs/*.html.generate-as-is.sh: structure step no longer aborts on empty repos under
pipefail; vendoredcontracts/are excluded from consumption detection..gitignore:harness/.venv/.
v1.6.0 — /context-report pre-empts committee-recurring findings
Changed — /context-report skill & documentation standard
Lessons distilled from generating several application context reports, encoded so future runs clear the review committee on the first pass:
- Valid CML — declare every context used in a relation (incl. external systems), keep the upstream/downstream direction right, one downstream strategy per upstream (ACL or Conformist, not both).
- ADRs as decision atoms — Context, Options considered with trade-offs, Decision, Consequences; outcome-only prose fails.
- Given/When/Then verifiable quality scenarios with anchor + RED/AMBER/green verdict.
- Cross-document count reconciliation — two authoritative docs must never contradict each other on the same seal; reconcile or fix.
- Complete Annex A inventories — promise N, list N.
- Honest severity calibration — a parametrized query with a constant-bounded table name is a mitigated smell, not a critical injection; reward calibration, reject both alarmism and omission.
Documentation standard (§5 ADR) gains a Common pitfalls note naming the three most frequent failures.
Fully generic — no example-stack or client/domain references. All 7 self-test suites green (178 asserts).
v1.5.0 — repository file structure as derived documentation
Added
scripts/repo-tree.sh <path> [depth]— deterministic file-structure tree: tracked files only (respects .gitignore), recursive per-directory counts, root files listed,findfallback for non-git dirs. Suitetest-repo-tree.sh(17 asserts, committed red before the implementation).- System architecture document: new derived section 5.2.1 Repository file structure —
generate-architecture.shinjects a depth-2 tree per registered repo on every regeneration ({{FILE_TREES}}placeholder in the template). - Documentation standard: new required Annex E — repository file structure (derived tree + curated
directory → role → sectionannotations, development-view complement). /context-reportskill: Annex E format encoded (root at depth 2, source dir at first level only, annotation table), structure-driven finding mining (loose migration scripts, deprecated infra trees, tracked tool residues), the E.4 sibling-repos pattern for standalone reports, and the system-doc regeneration step. Framework-neutral wording throughout.
All 7 self-test suites green (178 asserts).
v1.4.0 — /context-report + remote fleet support
Added — application context reports (/context-report)
- New skill
/context-report <repo> [--update]: generates the maximum-detail application architecture & context report (arc42 + C4 + 42010) — parallel file:line mining, graph queries with count reconciliation, obsolescence research with sources, a business-flow traceability matrix (UI route → front module → service → consumed domains → upstream route), an end-to-end view with a per-hop table, sequence diagrams, enriched ADRs, numbered verifiable quality scenarios, and a mandatory adversarial review committee (architecture + quality agents) before the human gate. - Corporate HTML twin for application reports:
templates/knowledge-architecture-app.html(light/dark palette, semantic category colors, provenance-box header) +scripts/app-architecture-html.py(reuses the md→html converter embedded ingenerate-architecture.sh). New suitetest-app-architecture-html.sh(14 asserts, committed red before the implementation).
Added — remote fleet support (codebase-memory-pg)
docs/codebase-memory-setup.md: new Remote fleet — Cloud Run deployment section — client configuration for a cloud-deployed fleet facade, including theX-Flota-Authorizationheader contract (Cloud Run strips theAuthorizationtoken signature after its IAM check), audience and identity (sub) rules, the project-naming requirement, and the audited remote seeding flow (/admin/apply→ staging upload →/publish).
All 6 self-test suites green (161 asserts).
v1.3.0
v1.3.0 — AI-consumable architecture documentation standard
Adds the standard the factory follows to produce maximum-detail, AI-consumable application architecture documentation, synthesized from the major frameworks and consultancies and adversarially fact-checked (two deep-research passes, 25+ claims verified 3-0).
Added
docs/architecture-documentation-standard.md— layers arc42 + C4 + ISO/IEC/IEEE 42010 with TOGAF (traceability matrices, ADD/ARS), Zachman (W5H coverage), Rozanski & Woods (Information/Operational viewpoints + quality perspectives), DDD / Context Mapper (CML), 4+1 (Kruchten), Google Design Docs & SRE, AWS/Azure Well-Architected, and Gartner Pace-Layering — each cited. Includes a unified mapping table (framework element → arc42 section → what to deepen for AI) and the enriched ADR format.- The knowledge-architecture templates realize the standard:
- Front-matter metadata:
standard,viewpoints,quality_attributes,zachman_coverage. - New Information view (data), Integration & APIs view, TOGAF traceability matrices, Operational view (SRE).
- Enriched §9 ADRs (Nygard + Google: goals/non-goals, alternatives considered, confidence; append-only, immutable).
- Annex D · traceability matrix (requirement ↔ ADR ↔ building block ↔ file:line ↔ assertion).
- The generator needs no change — the new curated sections are narrative-driven.
- Front-matter metadata:
Changed
CLAUDE.md, README and the<prefix>-architectureskill point at the standard;test-architecture.shcovers the new sections (147 asserts total).
Coverage note
ArchiMate and BCG/Accenture/McKinsey thought leadership were targeted but not verifiable (primary sources behind login/paywall); documented as gaps, not omissions.
Full changelog: https://github.com/mmaripanguec/dev-sdd-kit/blob/main/CHANGELOG.md
v1.2.0
v1.2.0 — Automatic code-graph indexing for the fleet/Postgres facade
Turns the codebase-memory handling from guidance into real, configurable
code. Previously, onboarding a repo against a read-only fleet/Postgres facade
surfaced -32601 (index_repository has no equivalent in the fleet graph) and
left indexing as a manual, documented step. Now the factory seeds the repo and
wires the workspace MCP config automatically when the fleet is configured —
while still never blocking onboarding.
Why
The fleet/Postgres facade is read-only and does not expose the MCP write tool
index_repository (returning -32601 is expected, not a bug). The direct
engine indexes via the /repo-add skill; the facade needs an out-of-band seed.
v1.2.0 automates that seed + MCP wiring so both modes "just work".
Added
scripts/codebase-memory.sh— the indexing driver (bash 3.2, no deps):index <repo>— seed the repo into the fleet via its CLI, then upsert a
cbm-<repo>HTTP entry into a gitignored workspace.mcp.json.mcp-config [repo…]— (re)write.mcp.jsonentries for the given repos
(or all registered repos).mode— print the resolved mode (fleet/direct/off).
repo-add.shintegration — after registering a repo, it calls
codebase-memory.sh index <name>(non-blocking). With the fleet configured,
onboarding indexes automatically; otherwise it prints direct-engine guidance.scripts/tests/test-codebase-memory.sh— 5th self-test suite. Total is
now 141 asserts across 5 suites, all green.
Configuration (.env, see .env.example)
| Variable | Purpose |
|---|---|
CBM_MODE |
auto (default) · fleet · direct · off |
CBM_FLEET_SEED |
Seed command template; {repo} → repos/<name>. Its presence turns auto into fleet. |
CBM_FLEET_URL |
Fleet gateway base URL (e.g. http://127.0.0.1:8787) |
CBM_FLEET_TOKEN |
Bearer token for the fleet gateway |
CBM_FLEET_PROJECT |
Project-id template; {name} / {abspath_dashes} (default: {abspath_dashes}) |
Nothing is hardcoded — every fleet specific lives in .env.
Usage
# One-time: configure the fleet in .env, then onboarding indexes automatically:
./scripts/repo-add.sh https://github.com/org/repo.git # seeds + wires .mcp.json
# Or drive it directly:
./scripts/codebase-memory.sh index <repo> # seed one repo + wire .mcp.json
./scripts/codebase-memory.sh mcp-config # (re)write .mcp.json for all repos
./scripts/codebase-memory.sh mode # show the resolved modeBehavior
- Non-blocking: if the seed command fails or the fleet is down, it warns and
continues; the as-is map, context packs and architecture document are still
built from static analysis ("indexing pending"). - Read-your-writes: re-seed after structural code changes; the graph does
not refresh itself.
Changed
docs/codebase-memory-setup.mddocuments the automatic path and the.env
configuration (direct engine vs fleet facade)..gitignorenow ignores.mcp.json(machine-specific paths + token)..env.examplegains theCBM_*block; the/repo-addskill notes the seed +
.mcp.jsonwiring happen automatically when configured; README badge 119→141.
Upgrade notes
- No breaking changes. If you were wiring
.mcp.jsonby hand, you can now set
CBM_*in.envand let/repo-adddo it. Ensure.mcp.jsonis gitignored
(it now is by default).
Full changelog: https://github.com/mmaripanguec/dev-sdd-kit/blob/main/CHANGELOG.md
v1.1.2
Cleanup release (docs only, no code changes).
Removed
- The last example-system reference from the public tree; the operating guide now describes
repos.yamlgenerically (created at instantiation viainit-system.sh, populated with/repo-add), which also fixes a stale note.
Full changelog: https://github.com/mmaripanguec/dev-sdd-kit/blob/main/CHANGELOG.md
v1.1.1
Documentation follow-up for the v1.1.0 architecture-as-context capability (no code changes).
Changed
- Operating guide (ES) — documents the generated arc42+C4 architecture document as agent context, the docs-first policy and the
<prefix>-architectureskill, the codebase-memory fleet/Postgres facade troubleshooting (-32601), and structure/shared-memory/governance updates. - README — front-page highlight of the AS-IS architecture as agent context, plus updated comparison-table rows (brownfield grounding, derived docs).
Full changelog: https://github.com/mmaripanguec/dev-sdd-kit/blob/main/CHANGELOG.md
v1.1.0
Knowledge-as-context architecture documents and clearer code-graph setup.
Added
- AS-IS architecture document as knowledge (arc42 + C4): generic templates and a generator (
scripts/generate-architecture.sh) that writesknowledge/architecture/<system>.mdand a self-contained.htmltwin (Mermaid), combining a curated per-system narrative with data derived from the code (topology, dependencies, counts, seals). - The generator runs after every
/repo-addindexing (hook ingenerate-as-is.sh). /system-mapauthors the narrative, generates the document, and creates a<prefix>-architecturecontext skill encoding a docs-first policy (answer from the document; read code only for undocumented gaps).docs/codebase-memory-setup.md; self-test suite (scripts/tests/test-architecture.sh).
Changed
/repo-adddocuments both codebase-memory modes and treats the fleet/Postgres-facade-32601 (index_repository unavailable)as expected, not a hard failure.CLAUDE.md,.env.example,init-system.sh, README and CHANGELOG updated.
Validation
- 4 self-test suites green (119 asserts, up from 99).
Full changelog: https://github.com/mmaripanguec/dev-sdd-kit/blob/main/CHANGELOG.md
v1.0.0 — first public release
First public release of the spec-driven factory template. Highlights: full F0–F9 lifecycle with six permission-backed human gates; structured clarification, cross-artifact consistency and code↔spec convergence; derived as-is map, DORA metrics and bilingual architecture docs (sealed, CI-checked); a real, recorded demo (ADK + Gemini customer assistant) with human-in-the-loop approval; 99 TDD-first asserts across three self-test suites. Commands are English; each workspace picks its working language (en/es) at init. See CHANGELOG.md for the full list.