v1.3.0 — Venerable Zeus
2026-04-22: Compact table-based Pre-Dispatch format for sdlc-lite-plan and sdlc-plan [output-format]
-
skills/sdlc-lite-plan/SKILL.md— Step 1 now emits two compact tables on the happy path:- Agent coverage table with columns
Domain | Specialist | Why— the Specialist column doubles as the final agent list (no separate flat list); writer is marked with← writer;Whyholds the rationale that previously lived in the initial bullet list.Domaincovers both role (e.g.implementation review) and infrastructure domain (e.g.plugin install / env bootstrap). - Prior context table with columns
Source | Ref | Takeaway, or a one-line**Prior context:** nonewhen empty. This unifies Chronicle entries (Source = concept, Ref =D<NN>) with any downstream business decisions (Source = DR name, Ref =DR-<NN>) into a single table rather than emitting Chronicle and Business as separate blocks. - The initial "Relevant worker domain agents for this task" bullet list is removed — its content folds into the Why column of the coverage table.
- Fall-back triggers to the verbose AGENT-RECONFIRM + CHRONICLE-CONTEXT forms are preserved verbatim: coverage gap, chronicle conflict, scope ambiguity.
- Agent coverage table with columns
-
skills/sdlc-plan/SKILL.md— §1 (CHRONICLE-CONTEXT), §3c (AGENT-RECONFIRM), and §5 (review AGENT-RECONFIRM) mirrored: Prior context table replaces the Chronicle bullet block; AGENT-RECONFIRM becomes aDomain | Specialist | Whytable with a delta-from-step-1 one-liner. Tautological✓columns and flatFinal list:one-liners are removed. -
process/sdlc_changelog.md— this entry.
2026-04-22: Compact table-based PRE-GATE / POST-GATE format for sdlc-execute and sdlc-lite-execute [output-format]
-
skills/sdlc-lite-execute/SKILL.md— §1 now emits a Phase plan table once at the start (columns:# | Agent | Files | Depends | Parallel with), then replaces the per-phase PRE-GATE labeled-field block with a compact### Phase N — name (agent: X)header + bulleted Design decisions +Expected:line. POST-GATE compacts to a one-line✓ Phase N — X/Y tests · 0 regressions · 0 stubs · build: passwith indented⚠caveats for anomalies that don't warrant the full verbose form.Fall-back triggers to the verbose PRE-GATE / POST-GATE templates are listed inline and are mechanical: pattern-found / external-data / dependency re-check / triage ≠ BUILD / re-dispatch (PRE-GATE); build-fails / file-deviation / stubs-on-final-phase / phase-bleeding / re-dispatch / data-audit-mismatch (POST-GATE). The verbose templates are preserved verbatim; they're the fall-back, not removed. Added an explicit
Stubs:field to the verbose POST-GATE so stub-audit results live in the gate block, not buried in prose. -
skills/sdlc-execute/SKILL.md— mirrored. Same Phase plan table, same compact PRE-GATE / POST-GATE, same fall-back triggers (plusTriage ≠ BUILDas a trigger since full execute includes the SKIP / REVISE_PLAN triage step that lite-execute omits). -
process/sdlc_changelog.md— this entry.
2026-04-22: DRY lens in sdlc-reviewer + Dimension 10 (Cross-Skill DRY) in ccsdlc-audit [drift-prevention]
agents/sdlc-reviewer.md(also affects.claude/agents/sdlc-reviewer.mdvia hardlink) — Added aCross-Skill DRY (overlap with sibling skills)checklist subsection under Skill-Specific Checks → Content Quality. Reviewer now greps.claude/skills/*/SKILL.mdfor verbatim paragraph duplication, near-verbatim conceptual clusters, trigger overlap, and reinforcement-paragraph drift; reports each with the recommended extraction target. Includes scoping rules (ignore code fences, ignore canonical phrasing-contract lines, ignore one-line pointers, ignore tier/variant pairs) so the lens doesn't fire on legitimate shared form. Severity scale: major for verbatim ≥3 sentences, minor for near-verbatim, info for trigger overlap with anti-trigger acknowledgement..claude/skills/ccsdlc-audit/SKILL.md— Added Dimension 10 (Cross-Skill DRY) to the Audit Dimensions summary list and updated the description so the new dimension surfaces at trigger time..claude/skills/ccsdlc-audit/references/compliance-methodology.md— Full Dimension 10 methodology (scope, what to detect, scoping rules, recommendation format with extraction target, severity scale, lightweight detection method using shingle-style grep) and added Dimension 10 to the Report Format template.
2026-04-22: Adopt skills, templates, knowledge, and discipline insights from neuroloom
-
skills/sdlc-debug-incident/SKILL.md(new) — Two-phase incident workflow (TRIAGE → CLOSEOUT). Replaces neuroloom's hardcoded agent matrix with a reference to[sdlc-root]/process/agent-selection.yamlso the skill stays consistent with planning/review when projects add domain agents. Auto-detects mode from incident doc state; hands off remediation tosdlc-plan/sdlc-lite-plan. -
skills/sdlc-create-reference-doc/SKILL.md(new) — Author + review-quorum workflow for internal developer-facing reference docs (event schemas, API surfaces, pipeline stage inventories). Strict template compliance, mandatorypath:lineanchors, registers indocs/reference/_index.md. Agent matrix referencesagent-selection.yamlrather than hardcoding roles. -
templates/decision_record_template.md(new) — Lightweight ADR withexpiration / revisit conditionsanddepends_on / informstraceability. Distinguishes from generic ADRs by capturing when to re-evaluate and which deliverables/decisions it depends on or informs. -
templates/reference_doc_template.md(new) — Companion tosdlc-create-reference-doc. Frontmatter schema (title, slug, category, owner_agent, audience, last_verified_commit, last_verified_date, related_deliverables) plus fixed section order (Summary, Key Concepts, Reference, Examples, Gotchas, Related Code, Related Docs, Change Log). -
knowledge/search/(new directory, 8 files) — Generic IR/RAG knowledge: retrieval-strategy-patterns, ingestion-pipeline-patterns, vector-index-tuning-patterns, retrieval-evaluation-patterns, multi-strategy-retrieval-patterns, evidence-combination-frameworks, score-transform-catalog, plus README. Excluded neuroloom-specific files (hindsight-algorithm-reference.md,temporal-supersession-demotion-patterns.md). Wired toml-engineerinagent-context-map.yaml. -
agents/AGENT_SUGGESTIONS.md— Addeddx-engineerentry for projects shipping public SDKs, CLIs, MCP servers, plugins, or anything with external developers as the primary user. Covers SDK API design, CLI ergonomics, error message clarity, quickstart flows, package publishing pipelines, and friction audits. -
CLAUDE-SDLC.md— AddedCommit Message Formatsection. Codifies conventional-commits prefix style, prohibits hard-wrapping body text at 72 chars (GitHub-first reading model), allows intentional line breaks for meaning. -
process/commands.md— Registered both new skills under a newIncidents & Reference Docssection. -
disciplines/architecture.md— Added 4 generic parking-lot insights (async session/connection factory pattern, advisory lock + connection pool race, lazy initialization defensiveness, "metadata-only" flag enforcement). -
disciplines/data-modeling.md— Added 4 generic parking-lot insights (multi-tenant isolation at every CTE hop, LEFT JOIN ON-vs-WHERE filter placement, ORM-enabled DML still firingonupdate, idle-in-transaction COMMIT discipline). -
disciplines/testing.md— Added 2 generic parking-lot insights (test name vs scenario consistency, stub fixtures must match live API shape). -
disciplines/observability.md— Added 1 generic parking-lot insight (absence-of-logs monitors need a guaranteed signal floor). -
disciplines/coding.md— Added 1 generic parking-lot insight (logger backend choice changesextra=semantics). -
skeleton/manifest.json— Registered the two new skills, two new templates, theknowledge/search/directory, and all 8 search knowledge files. -
knowledge/agent-context-map.yaml— Wiredml-engineerto the new search knowledge files (search-engineer doesn't exist as a default cc-sdlc role).
2026-04-22: BOOTSTRAP-LITE.md — minimal starter kit for teams new to cc-sdlc [on-ramp]
BOOTSTRAP-LITE.md(new) — 12-step bootstrap flow. The entire bootstrap is installation, not an SDLC work session, so all mechanical text manipulation (skill-file reference stripping, YAML path rewrites, CLAUDE.md append) is performed directly by Claude Code rather than dispatched tofullstack-developer. Step 4 copies the two lite skills, then surgically removes references to framework pieces not installed in lite (chronicle, playbooks,agent-selection.yaml,knowledge-routing.md,collaboration_model.md,deliverable_lifecycle.md, structured-gap-detection paragraph fromdiscipline_capture.md) while keeping verbatim the workflow spine: writer-writes-saves, PRE-GATE/POST-GATE, review-fix loop, finding classification, Worker Agent Reviews, plan+result file paths, deliverable ID claim, Completion Report, Context7 verification. Step 9 is the optional custom-skill orchestration, a stripped-down/sdlc-develop-skill(no DRY audit across sibling skills, no phrasing-contract compliance, nosdlc-reviewergate, no PROJECT-SECTION markers — those assume a migration is coming, which lite does not have).skeleton/manifest.json— Extended the_not_installed_commentto call outBOOTSTRAP-LITE.mdalongsideBOOTSTRAP.mdas a source-only file.
Design choices worth noting:
- Install path is
ops/sdlc-lite/notops/sdlc/so the full bootstrap can later merge intoops/sdlc/without collisions.GRADUATION.mddocuments the upgrade path. - Finding classification and review-fix loop are kept intact, not inlined. Initial draft simplified both to 3-class / 4-step inline summaries in the skill bodies. Rejected — those docs are the spine of the review half of the SDLC. Copying them into
ops/sdlc-lite/process/alongsidemanager-rule.mdpreserves the full triage vocabulary (FIX / DECIDE / PRE-EXISTING / DEFER / WORDING) and the iterative dispatch-collect-fix-reenter loop the skills depend on. - Structured gap detection is dropped, freeform capture kept. The 3 automated comparisons in
discipline_capture.md(knowledge-loaded-vs-needed, cross-domain friction, iteration cost — producingMISSING_KNOWLEDGE/UNMAPPED_KNOWLEDGE/STALE_KNOWLEDGE/CROSS_DOMAIN_FRICTION/RESURFACING_PATTERNgaps) need the full knowledge store + handoff protocol to produce meaningful signal. Lite keeps the freeform cross-discipline scan (append insights to the parking lot with[NEEDS VALIDATION]) because that part delivers value immediately; the structured comparisons become meaningful later, at graduation. - Bootstrap is manager-direct throughout. Initial draft had Step 4 dispatch
fullstack-developerto strip the skill files. Revised — the Manager Rule is a work-session discipline, not an installation discipline. Framework installation is mechanical text manipulation; adding an agent round-trip for path rewrites creates ceremony without benefit and blurs when the Manager Rule actually activates (answer: during the user's first real work session after install). - Agent-context-map is a first-class install. The lite roster's knowledge-auto-consult is what makes knowledge files feel load-bearing instead of ornamental — teams that skip it end up with knowledge stores nobody reads, which kills the "learning system" feel.
- CLAUDE.md merge is the most important file. Without the invocation table + Manager Rule anchor + commit format + changelog rule appended to
CLAUDE.md, the assistant does not know when to invoke the lite skills or that the Manager Rule applies. Everything else is scaffolding around this merge. - Changelog + deliverable catalog are in the core install, not optional. These are the "memory" half of the SDLC experience — the planning half is the two skills, the memory half is the catalog + changelog. Without both halves, lite is just a planning habit, not a miniature SDLC.
2026-04-22: Writing agents save plan files directly (Manager Rule tightening)
-
skills/sdlc-lite-plan/SKILL.md— Step 2 now requires the writing worker agent to use theWritetool to save the plan directly todocs/current_work/sdlc-lite/dNN_{slug}_plan.md; the agent returns a short confirmation rather than the plan body. Step 3 revision flow: the re-dispatched writer overwrites the file at the same path. Step 4 retitled from "Save Plan to File" to "Verify Plan File and Append Worker Agent Reviews" — manager verifies existence and appends the reviews section (mechanical metadata, allowed per Manager Rule) but does not write the body. DOT graph updated. Step 5a reference updated. New Red Flags entry: "I'll just save the agent's output myself with Write". -
skills/sdlc-plan/SKILL.md— Step 4 updated: writing agent saves the plan file withWrite; managerReads the saved file to verify completeness. DOT graph node renamed to reflect the writer-saves semantic. Step 5 revision flow: re-dispatched writer overwrites the file. Step 5 reviews append explicitly scoped to manager's allowedEditof mechanical metadata. Step 6a reference updated. New Red Flags entry added parallel to the lite-plan one.
2026-04-22: DRY audit step in sdlc-develop-skill (CREATE 1.5 / MODIFY M1.5) [drift-prevention]
skills/sdlc-develop-skill/SKILL.md— Added a1.5. DRY Auditstep in CREATE mode and a parallelM1.5. DRY Auditstep in MODIFY mode. Both grep sibling skills for content overlap before any write, classify the shared content (universal protocol →process/, domain rule →knowledge/, single-skill detail →references/), and default to extraction with one-line pointers rather than inline duplication. MODIFY mode additionally handles multi-skill invocations: when the user is changing 2+ skills in one pass, the skill proposes extraction first and only inlines if the user explicitly declines. Added a cross-skill drift detector that surfaces the same concept worded differently across siblings even when outside the requested change.skills/sdlc-develop-skill/SKILL.md— Added 4 red flags covering the most common DRY failure modes (duplicating "related" paragraphs, applying the same change to N skills without extraction, inlining "slightly different" wording without justification, skipping the audit on small skills) and updated the Integration section'sDRY disciplinenote to make the extraction-target priority order explicit.skills/sdlc-develop-skill/SKILL.md— Updated frontmatter description so the DRY audit appears in the trigger-time summary (the description is the primary signal agents use to decide whether to invoke).
2026-04-22: Lite Graduation phase in sdlc-initialize [on-ramp]
skills/sdlc-initialize/SKILL.md— AddedHas ops/sdlc-lite/andHas .claude/skills/sdlc-lite-*to the INITIALIZATION ASSESSMENT block; added a "Lite Graduation" row to the mode-detection table; added a new## Lite Graduation Modesection with Phase 0-L containing eight sub-steps (inventory + confirm, create full skeleton, move lite content into full layout, rewrite path references in lite skills/agents, remove SDLC-Lite block from CLAUDE.md, remove emptyops/sdlc-lite/, prepend graduation entry to migrated changelog, fall through to Phase 1). Also documented how downstream phases (1, 2, 3, 4, 5, 7) behave in graduated installs — what's preserved and what's added.BOOTSTRAP-LITE.md— Rewrote the GRADUATION.md content's "How to graduate" section from aspirational ("Bootstrap SDLCwill detect and merge") to operational (steps Phase 0-L actually performs, with explicit preserved-vs-added lists).
Design choices worth noting:
- Move-then-install, not merge-after-install. Phase 0-L moves lite content into the full layout before Phase 1 runs. This lets Phase 1's existing skip-existing-files logic do the preservation automatically — no second pass, no conflict resolution. The alternative (install full, then reconcile) would require Phase 1 to know about lite semantics, which would leak graduation concerns throughout the skill.
- CLAUDE.md block deletion, not rewrite. Lite appends a
# SDLC-Liteblock; full appends a full SDLC block. Initial design was to rewrite the lite block in place, but the full block's invocation table, agent roster, and commit conventions are supersets of the lite block — rewriting creates accidental divergence if the full CLAUDE-SDLC.md template evolves. Deleting the lite block and letting Phase 2 append the full block keeps CLAUDE.md sourced from a single template. - Graduation entry prepended to migrated changelog, not appended. Changelogs read newest-first; the graduation is the newest event. Preserves the lite history below it chronologically.
- Dry-run safety is implicit in "move, not copy". If any move fails mid-0-L,
ops/sdlc-lite/is left in an intermediate state, 0-L.f's final non-empty check catches it, and the directory is NOT deleted. User sees exactly which files didn't move and can retry or intervene.
Release notes generated from SDLC Changelog