Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
abf4738
fix(reliability): harden IDEA lifecycle entry and authority state
eybersjp Sep 1, 2026
12d9153
fix(reliability): resolve independent review blockers for IDEA author…
eybersjp Sep 1, 2026
a698403
fix(reliability): resolve all 11 independent review blockers for v0.9…
eybersjp Sep 1, 2026
547ca97
fix(reliability): enforce consumer execution path and strict authorit…
eybersjp Sep 1, 2026
843df76
fix(reliability): harden global install, provenance immutability, and…
eybersjp Sep 1, 2026
0ec21b7
fix(reliability): bind runner to installation, enforce candidate immu…
eybersjp Sep 1, 2026
b6060e7
fix(reliability): enforce 4-tuple approval binding, canonical item gr…
eybersjp Sep 1, 2026
f98f612
fix(reliability): remove approval authority defaults, enforce UNCLASS…
eybersjp Sep 1, 2026
b7f6dbf
fix(field-hardening): enforce material scope classification, persiste…
eybersjp Sep 1, 2026
b884c11
fix(field-hardening): verify referenced POD existence, harden decisio…
eybersjp Sep 1, 2026
3134177
fix(field-hardening): require exact POD decision types, remove author…
eybersjp Sep 1, 2026
54d1521
fix(orchestration): candidate 12 - harden AGENT -> AUTHORITY boundary…
eybersjp Sep 2, 2026
f242c78
fix(orchestration): candidate 13 - enforce PO authority on all questi…
eybersjp Sep 2, 2026
ac33230
fix(project-root): ensure canonical project-root affinity and prevent…
eybersjp Sep 2, 2026
39775bf
fix(project-root): enforce installation authority and true ancestor d…
eybersjp Sep 2, 2026
dde537d
fix(installer): generate deterministic cwd-independent launcher for i…
eybersjp Sep 2, 2026
370ea6c
fix(orchestration): deterministic IDEA workflow checkpointing and fre…
eybersjp Sep 2, 2026
acc0407
fix(orchestration): candidate 18 workflow authority and consistency h…
eybersjp Sep 2, 2026
9487b0d
fix(candidate-19): guard DESIGN_SYSTEM_SETUP resume against already-r…
eybersjp Sep 2, 2026
b7647e5
fix(field-hardening): candidate 20 exclusive authority routing, atomi…
eybersjp Sep 2, 2026
87473b5
docs(release): complete candidate 21 documentation and release asset …
eybersjp Sep 2, 2026
bbb55e9
fix(orchestration): complete Candidate 21 engineering closure
eybersjp Sep 3, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
64 changes: 45 additions & 19 deletions .agents/plugins/development-kit/agents/product-discovery-agent.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,15 +18,36 @@ You are the product-discovery-agent. You turn rough ideas into concrete, well-de

## Process

### 1. Understand the Idea
Read the user's initial request or idea carefully. Identify what is clearly stated and what needs clarification.
### 1. Understand the Idea & Rehydration Protocol
> [!IMPORTANT]
> **Host / Agent Resumption Contract ("Persist before asking. Rehydrate before proposing.")**:
> - Never assume a project is new or infer an empty state merely because the current chat conversation is blank.
> - Always run lifecycle entry and resolve IDEA workflow state (`node scripts/orchestration.mjs --operation=idea-workflow-state`) before proposing any action.
> - If an interaction is already pending or discovery has started, resume and re-present that exact interaction.
> - Before asking ANY user-facing question and returning control to the user, persist that pending interaction (`node scripts/orchestration.mjs --operation=idea-checkpoint-persist`).

Read the user's initial request or idea carefully. For an initial rough or unclarified request:
1. Extract and persist faithfully stated candidate requirements with `origin: "USER_STATED"` (or `"AI_PROPOSED"`) as `UNRESOLVED`.
2. Persist the pending question in the workflow checkpoint.
3. Ask **exactly one** focused discovery question with numbered options.
4. **STOP and return control to the user.**
Do not generate a completed Idea Brief, final scope table, or confirmation decisions in the initial turn.

### 2. Conduct Requirements Interview

Ask focused questions about key product areas.
> [!IMPORTANT]
> **Sequential Questioning Rule**: You MUST only ask **exactly one question at a time**. Never ask multiple questions in a single response, as the answer to one question may change the direction or relevance of subsequent questions.
> **Numbered Options Rule**: For each question, you MUST provide a list of numbered suggestions/options (e.g., `1) Option A`, `2) Option B`, `3) Option C`) from which the user can choose by replying with just the option number. Always include a choice for custom input (e.g. a write-in option).
> **Sequential One-Question-Per-Turn Rule**:
> - You MUST only ask **exactly one question per response**.
> - For each question, provide a list of numbered suggestions/options (e.g., `1. Option A`, `2. Option B`, `3. Custom write-in`) from which the user can choose by replying with the option number.
> - Immediately after stating the single question and options, **STOP and return control to the user**. Never ask multiple questions in a single response.
> - Never combine requirements discovery questions, design system setup, idea-challenge questions, scope confirmation, or multi-question "Next Steps" into the same turn.

> [!IMPORTANT]
> **Provenance Integrity Rule**:
> - `USER_STATED` is strictly for facts/requirements directly supplied by the user. Do NOT label AI-added specifics (e.g. equipment hierarchies, specific testing measurements, compliance standards, digital signatures, export formats) as `USER_STATED`.
> - All agent proposals, architectural inferences, and potential mitigations MUST be tagged `AI_PROPOSED` and born `UNRESOLVED`.
> - Never synthesize Product Owner authority or confirm candidates without an explicit user confirmation response.

Ask about:
- **Problem**: What specific problem are we solving?
Expand All @@ -37,28 +58,30 @@ Ask about:
- **Preferences**: What would be nice to have vs what is essential?

### 3. Challenge Assumptions
Identify and test assumptions:
Identify and test assumptions in a dedicated single question/turn:
- Is this the real problem or a symptom?
- Does this feature need to exist at all? (Ponytail ladder step 1)
- Are there simpler ways to achieve the same outcome?
- What assumptions are we making about users, technology, or context?

### 4. Define Requirements
Separate into categories:
- **Requirements**: Must be fulfilled
- **Preferences**: Should be fulfilled if possible
### 4. Product Owner Requirement Confirmation Turn
After discovery questions are answered:
1. Present the candidate requirements table with exact persisted IDs, statements, and origins.
2. Ask ONE confirmation question: "Do you confirm these exact requirement statements as the requirements for this project?" with numbered options.
3. **STOP and return control to the user.**
4. Never call confirmation operations (`idea-confirm-candidate`, `idea-adopt-candidate`) in the same turn. Only execute authority mutations after the user replies with explicit confirmation in a new response.
5. If the Product Owner modifies candidate statements or questions, execute deterministic supersession via `idea-supersede-candidate` or `idea-supersede-question`. Never attempt to overwrite statements via record operations. Replacement items are born UNRESOLVED and must be confirmed in the subsequent confirmation turn.

### 5. Define Scope
Categorise into:
- **Requirements (Must)**: Must be fulfilled (1-to-1 bound to active `[IDEA-REQ-xxx]` candidates)
- **Preferences (Should)**: Should be fulfilled if possible
- **Assumptions**: Things we believe to be true (that should be validated)
- **Constraints**: Hard limitations we must work within
- **Future ideas**: Things explicitly deferred
- **Future Ideas**: Things explicitly deferred

### 5. Document
Provide a structured output including:
- Problem statement
- User definition
- Success criteria
- Requirement categorisation
- Key assumptions and risks
- Open questions
### 6. Document
Provide a structured output matching the 10 canonical sections of `templates/idea-brief.md`.

## Output Format

Expand All @@ -75,7 +98,7 @@ Provide a structured output including:
[How will we know it works?]

### Requirements (Must)
- ...
- [IDEA-REQ-001] ...

### Preferences (Should)
- ...
Expand All @@ -91,4 +114,7 @@ Provide a structured output including:

### Open Questions
- ...

### Future Ideas (Explicitly Deferred)
- ...
```
8 changes: 8 additions & 0 deletions .agents/plugins/development-kit/commands/dk-autopilot.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,14 @@ description: >-

# /dk-autopilot

## Lifecycle Entry Gate

At session start or command invocation, execute the centralized lifecycle entry adapter:
```bash
node scripts/lifecycle.mjs --command=dk-autopilot --phase=entry
```
This establishes and validates project bootstrap, binds project identity, and verifies execution context.

## Purpose

Executes all nine canonical stages (`UNDERSTAND` -> `DEFINE` -> `DESIGN` -> `PLAN` -> `IMPLEMENT` -> `VERIFY` -> `REVIEW` -> `SIMPLIFY` -> `COMPLETE`) while preserving the existing user-facing workflow. v0.9 adds a contract/evidence control plane beneath IMPLEMENT through COMPLETE; older projects without active contracts remain backward-compatible.
Expand Down
8 changes: 8 additions & 0 deletions .agents/plugins/development-kit/commands/dk-build-auto.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,14 @@ description: >-

# /dk-build-auto

## Lifecycle Entry Gate

At session start or command invocation, execute the centralized lifecycle entry adapter:
```bash
node scripts/lifecycle.mjs --command=dk-build-auto --phase=entry
```
This establishes and validates project bootstrap, binds project identity, and verifies execution context.

## Purpose

Processes the approved PLAN sequentially while preserving the same v0.9 control plane as `/dk-build`. Automation may remove repetitive handoffs, but it may not weaken evidence, safety, review, or human approval gates.
Expand Down
8 changes: 8 additions & 0 deletions .agents/plugins/development-kit/commands/dk-build.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,14 @@ description: >-

# /dk-build

## Lifecycle Entry Gate

At session start or command invocation, execute the centralized lifecycle entry adapter:
```bash
node scripts/lifecycle.mjs --command=dk-build --phase=entry
```
This establishes and validates project bootstrap, binds project identity, and verifies execution context.

## Purpose

Implements one approved task without allowing the implementation agent to certify its own work. v0.9 keeps the familiar task loop but makes the Development Contract, authoritative sources, evidence, safety policy, and acceptance engine the control plane.
Expand Down
8 changes: 8 additions & 0 deletions .agents/plugins/development-kit/commands/dk-control.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,14 @@ description: >-

# /dk-control

## Lifecycle Entry Gate

At session start or command invocation, execute the centralized lifecycle entry adapter:
```bash
node scripts/lifecycle.mjs --command=dk-control --phase=entry
```
This establishes and validates project bootstrap, binds project identity, and verifies execution context.

## Purpose

Launches the project-scoped Development Kit Control Center web interface. Provides a local, offline visual interface to inspect active lifecycle state, review memory records and architectural decisions, verify runtime health, and manage settings.
Expand Down
8 changes: 8 additions & 0 deletions .agents/plugins/development-kit/commands/dk-debug.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,14 @@ description: >-

Applies systematic root-cause analysis to bugs and failures. Uses the structured cycle: Reproduce → Localise → Identify Root Cause → Fix → Add Regression Protection. Does not guess at fixes — follows evidence.

## Lifecycle Entry Gate

At session start or command invocation, execute the centralized lifecycle entry adapter:
```bash
node scripts/lifecycle.mjs --command=dk-debug --phase=entry
```
This establishes and validates project bootstrap, binds project identity, and verifies execution context.

## Workflow

### 1. Reproduce
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,14 @@ design.md

---

## Lifecycle Entry Gate

At session start or command invocation, execute the centralized lifecycle entry adapter:
```bash
node scripts/lifecycle.mjs --command=dk-design-system --phase=entry
```
This establishes and validates project bootstrap, binds project identity, and verifies execution context.

## Sub-Modes

```text
Expand Down
8 changes: 8 additions & 0 deletions .agents/plugins/development-kit/commands/dk-design.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,14 @@ description: >-

# /dk-design

## Lifecycle Entry Gate

At session start or command invocation, execute the centralized lifecycle entry adapter:
```bash
node scripts/lifecycle.mjs --command=dk-design --phase=entry
```
This establishes and validates project bootstrap, binds project identity, and verifies execution context.

## Purpose

Produces the technical and visual design for the approved specification. The solution-architect-agent determines the smallest compatible solution. Depending on the scope, data models, API contracts, user flows, and design direction may also be produced.
Expand Down
Loading
Loading