Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
a08ca39
chore(porch): 746 init spir
waleedkadous May 14, 2026
b6fcec9
[Spec 746] Initial specification draft
waleedkadous May 14, 2026
b56b6be
chore(porch): 746 specify build-complete
waleedkadous May 14, 2026
a7a18bc
[Spec 746] Specification with multi-agent review
waleedkadous May 14, 2026
7d1b109
chore(porch): 746 spec-approval gate-requested
waleedkadous May 14, 2026
773a352
[Spec 746] Specification with architect feedback
waleedkadous May 17, 2026
0000bd7
chore(porch): 746 spec-approval gate-approved
waleedkadous May 17, 2026
099b1ac
chore(porch): 746 plan phase-transition
waleedkadous May 17, 2026
aba34f0
[Spec 746] Initial implementation plan
waleedkadous May 17, 2026
bc323a5
chore(porch): 746 plan build-complete
waleedkadous May 17, 2026
503d3ac
[Spec 746] Plan with multi-agent review
waleedkadous May 17, 2026
a3a102d
chore(porch): 746 plan-approval gate-requested
waleedkadous May 17, 2026
a3d519c
[Spec 746] Plan with architect feedback
waleedkadous May 17, 2026
dd8abbc
chore(porch): 746 plan-approval gate-approved
waleedkadous May 17, 2026
c4c136f
chore(porch): 746 implement phase-transition
waleedkadous May 17, 2026
52a405c
[Spec 746][Phase: 1] chore: capture pre-change baselines for 12 promp…
waleedkadous May 17, 2026
a928287
[Spec 746][Phase: 1] feat: builder-prompt baked-decisions instruction
waleedkadous May 17, 2026
10b60b0
chore(porch): 746 implement build-complete
waleedkadous May 17, 2026
8232d6c
[Spec 746][Phase: 1] test: assert Baked Decisions paragraph parity ac…
waleedkadous May 17, 2026
a05562d
chore(porch): 746 implement review-recorded
waleedkadous May 17, 2026
2fd4a51
chore(porch): 746 advance plan phase → phase_2
waleedkadous May 17, 2026
8f268ca
[Spec 746][Phase: 2] feat: drafting-prompt baked-decisions clause
waleedkadous May 17, 2026
8e5b59f
chore(porch): 746 implement build-complete
waleedkadous May 17, 2026
77fcd15
chore(porch): 746 advance plan phase → phase_3
waleedkadous May 17, 2026
51c9f43
[Spec 746][Phase: 3] feat: reviewer-prompt baked-decisions clause
waleedkadous May 17, 2026
5e613a3
chore(porch): 746 implement build-complete
waleedkadous May 17, 2026
f127a65
[Spec 746][Phase: 3] test: scope COMMENT/REQUEST_CHANGES check to ext…
waleedkadous May 17, 2026
2aa3731
chore(porch): 746 implement review-recorded
waleedkadous May 17, 2026
fc29aeb
chore(porch): 746 advance plan phase → phase_4
waleedkadous May 17, 2026
deebebc
[Spec 746][Phase: 4] feat: discoverability paragraph in protocol.md +…
waleedkadous May 17, 2026
7f2ee12
chore(porch): 746 implement build-complete
waleedkadous May 17, 2026
13c0ad7
[Spec 746][Phase: 4] test: convert manual smoke to programmatic end-t…
waleedkadous May 17, 2026
fd78613
chore(porch): 746 implement review-recorded
waleedkadous May 17, 2026
ab6c652
chore(porch): 746 all plan phases complete → review
waleedkadous May 17, 2026
b0d4cac
[Spec 746] Review document + lessons-learned updates
waleedkadous May 17, 2026
4a04013
chore(porch): 746 review build-complete
waleedkadous May 17, 2026
d594ab8
[Spec 746] Spec amendment (unconditional rendering) + frontmatter on …
waleedkadous May 17, 2026
d6a35db
chore(porch): 746 pr gate-requested
waleedkadous May 17, 2026
9d6c649
chore(porch): 746 pr gate-approved
waleedkadous May 18, 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
6 changes: 6 additions & 0 deletions codev-skeleton/protocols/air/builder-prompt.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,12 @@ You are running in STRICT mode. This means:
## Protocol
Follow the AIR protocol: `codev/protocols/air/protocol.md`

## Baked Decisions

If the issue body contains a section named "Baked Decisions" (any heading level, case-insensitive), treat its contents as fixed architectural decisions baked in by the architect. Do not autonomously override them in your spec, plan, or implementation. If you discover a serious reason to question a baked decision, surface that concern to the architect via `afx send` rather than relitigating it inside the spec/plan/review.

If the architect's baked-decisions section contains internal contradictions (e.g., two different language choices), do not pick one — pause, flag the contradiction to the architect via `afx send`, and wait for resolution before proceeding.

{{#if issue}}
## Issue #{{issue.number}}
**Title**: {{issue.title}}
Expand Down
6 changes: 6 additions & 0 deletions codev-skeleton/protocols/air/consult-types/impl-review.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,12 @@ Before requesting changes for missing configuration, incorrect patterns, or fram
2. **Read the actual config files** (or confirm their deliberate absence) before flagging missing configs
3. **Do not assume** your training data reflects the version in use — verify against project files

## Baked Decisions

If the issue body includes content under a "Baked Decisions" heading, the architect has marked those choices as fixed. Do not autonomously challenge them: do not propose alternative languages, frameworks, deployment shapes, or dependencies that contradict a baked decision. You may `COMMENT` with concerns about a baked decision (the architect decides whether to rescind it); reserve `REQUEST_CHANGES` for the case where the implementation **fails to honor** a stated baked decision — that is a real defect.

If the baked decisions themselves contain contradictions, do not pick one — `REQUEST_CHANGES` and ask the architect to clarify before proceeding.

## Focus Areas

1. **Issue Adherence**
Expand Down
6 changes: 6 additions & 0 deletions codev-skeleton/protocols/air/consult-types/pr-review.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,12 @@
## Context
You are performing a review of a pull request created under the AIR protocol. The builder implemented a small feature directly from a GitHub issue — there are no spec, plan, or review files. The review is embedded in the PR body.

## Baked Decisions

If the issue body includes content under a "Baked Decisions" heading, the architect has marked those choices as fixed. Do not autonomously challenge them: do not propose alternative languages, frameworks, deployment shapes, or dependencies that contradict a baked decision. You may `COMMENT` with concerns about a baked decision (the architect decides whether to rescind it); reserve `REQUEST_CHANGES` for the case where the code **fails to honor** a stated baked decision — that is a real defect.

If the baked decisions themselves contain contradictions, do not pick one — `REQUEST_CHANGES` and ask the architect to clarify before proceeding.

## Focus Areas

1. **Completeness**
Expand Down
6 changes: 6 additions & 0 deletions codev-skeleton/protocols/air/prompts/implement.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,12 @@ You are executing the **IMPLEMENT** phase of the AIR protocol.

Read the GitHub issue, implement the feature, and add tests. Keep it focused and under 300 LOC.

## Baked Decisions

Check the issue body for a section named "Baked Decisions" (any heading level, case-insensitive). If present, treat each listed decision as fixed during implementation. Do not autonomously substitute alternate languages, frameworks, or dependencies. If you discover a serious problem with a baked decision, raise it via `afx send architect` rather than working around it.

If two baked decisions contradict each other, do not pick one — pause, flag the contradiction via `afx send`, and wait for resolution before implementing.

## Context

- **Issue**: #{{issue.number}} — {{issue.title}}
Expand Down
4 changes: 4 additions & 0 deletions codev-skeleton/protocols/air/protocol.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,10 @@ AIR is a minimal protocol for implementing small features (< 300 LOC) where the
- Architectural changes → use **SPIR**
- Complex features with multiple phases → use **SPIR** or **ASPIR**

## Baked Decisions (Optional)

When filing an issue for AIR, you can pin architectural decisions you don't want the builder or CMAP reviewers to re-litigate. Include a `## Baked Decisions` section (any heading level is fine) anywhere in the issue body. Useful categories: language, framework, deployment shape, key dependencies, decisions deferred to a later spec. The builder will treat each listed item as fixed during implementation; CMAP reviewers will not propose alternatives unless the implementation itself fails to honor a stated decision. Leave the section out for issues where you want the builder to explore freely — absence is the no-op default. You can amend or rescind a baked decision at any time by updating the issue and respawning, or by sending the builder a direct instruction via `afx send`.

## Protocol Phases

### I - Implement
Expand Down
6 changes: 6 additions & 0 deletions codev-skeleton/protocols/aspir/builder-prompt.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,12 @@ You are running in STRICT mode. This means:
Follow the ASPIR protocol: `codev/protocols/aspir/protocol.md`
Read and internalize the protocol before starting any work.

## Baked Decisions

If the issue body contains a section named "Baked Decisions" (any heading level, case-insensitive), treat its contents as fixed architectural decisions baked in by the architect. Do not autonomously override them in your spec, plan, or implementation. If you discover a serious reason to question a baked decision, surface that concern to the architect via `afx send` rather than relitigating it inside the spec/plan/review.

If the architect's baked-decisions section contains internal contradictions (e.g., two different language choices), do not pick one — pause, flag the contradiction to the architect via `afx send`, and wait for resolution before proceeding.

{{#if spec}}
## Spec
Read the specification at: `{{spec.path}}`
Expand Down
6 changes: 6 additions & 0 deletions codev-skeleton/protocols/aspir/consult-types/plan-review.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,12 @@
## Context
You are reviewing an implementation plan during the Plan phase. The spec has been approved - now you must evaluate whether the plan adequately describes HOW to implement it.

## Baked Decisions

If the issue body or the approved spec's Constraints section includes content under a "Baked Decisions" heading, the architect has marked those choices as fixed (this extends the existing "don't re-litigate spec decisions" rule with explicit baked-decision language). Do not autonomously challenge them: do not propose alternative languages, frameworks, deployment shapes, or dependencies that contradict a baked decision. You may `COMMENT` with concerns; reserve `REQUEST_CHANGES` for the case where the plan **fails to honor** a stated baked decision — that is a real defect.

If the baked decisions themselves contain contradictions, do not pick one — `REQUEST_CHANGES` and ask the architect to clarify before proceeding.

## Focus Areas

1. **Spec Coverage**
Expand Down
6 changes: 6 additions & 0 deletions codev-skeleton/protocols/aspir/consult-types/spec-review.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,12 @@
## Context
You are reviewing a feature specification during the Specify phase. Your role is to ensure the spec is complete, correct, and feasible before it moves to human approval.

## Baked Decisions

If the issue body or the spec's Constraints section includes content under a "Baked Decisions" heading, the architect has marked those choices as fixed. Do not autonomously challenge them: do not propose alternative languages, frameworks, deployment shapes, or dependencies that contradict a baked decision. You may `COMMENT` with concerns about a baked decision (the architect decides whether to rescind it); reserve `REQUEST_CHANGES` for the case where the spec **fails to honor** a stated baked decision — that is a real defect.

If the baked decisions themselves contain contradictions (e.g., two different language choices), do not pick one — `REQUEST_CHANGES` and ask the architect to clarify before proceeding.

## Focus Areas

1. **Completeness**
Expand Down
6 changes: 6 additions & 0 deletions codev-skeleton/protocols/aspir/prompts/specify.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,12 @@ ls codev/specs/{{project_id}}-*.md

**If no spec exists:** Proceed to Step 1 below.

### 0.5 Baked Decisions

Before exploring solution approaches, check the issue body for a section named "Baked Decisions" (any heading level, case-insensitive). If present, copy its content verbatim into the spec's Constraints section and treat each item as fixed. Do not autonomously relitigate the architect's choices in your Solution Exploration. If you discover a serious problem with a baked decision, raise it via `afx send architect` rather than overriding it in the spec.

If two baked decisions contradict each other (e.g., two different language choices), do not pick one — pause, flag the contradiction via `afx send`, and wait for resolution before drafting.

### 1. Clarifying Questions (ONLY IF NO SPEC EXISTS)

Before writing anything, ask clarifying questions to understand:
Expand Down
4 changes: 4 additions & 0 deletions codev-skeleton/protocols/aspir/protocol.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,10 @@ Use SPIR instead when:
- The work is **high-risk** — security-sensitive, user-facing, or broadly impactful
- You want to **review and adjust** the plan before implementation starts

## Baked Decisions (Optional)

When filing an issue for ASPIR, you can pin architectural decisions you don't want the builder or CMAP reviewers to re-litigate. Include a `## Baked Decisions` section (any heading level is fine) anywhere in the issue body. Useful categories: language, framework, deployment shape, key dependencies, decisions deferred to a later spec. The builder will copy the section verbatim into the spec's Constraints and treat each item as fixed; CMAP reviewers will not propose alternatives unless the spec itself fails to honor a stated decision. Leave the section out for issues where you want the builder to explore freely — absence is the no-op default. You can amend or rescind a baked decision at any time by updating the issue and respawning, or by sending the builder a direct instruction via `afx send`.

## Protocol Phases

ASPIR follows the same four phases as SPIR. For full phase documentation, see the [SPIR protocol](../spir/protocol.md).
Expand Down
6 changes: 6 additions & 0 deletions codev-skeleton/protocols/spir/builder-prompt.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,12 @@ You are running in STRICT mode. This means:
Follow the SPIR protocol: `codev/protocols/spir/protocol.md`
Read and internalize the protocol before starting any work.

## Baked Decisions

If the issue body contains a section named "Baked Decisions" (any heading level, case-insensitive), treat its contents as fixed architectural decisions baked in by the architect. Do not autonomously override them in your spec, plan, or implementation. If you discover a serious reason to question a baked decision, surface that concern to the architect via `afx send` rather than relitigating it inside the spec/plan/review.

If the architect's baked-decisions section contains internal contradictions (e.g., two different language choices), do not pick one — pause, flag the contradiction to the architect via `afx send`, and wait for resolution before proceeding.

{{#if spec}}
## Spec
Read the specification at: `{{spec.path}}`
Expand Down
6 changes: 6 additions & 0 deletions codev-skeleton/protocols/spir/consult-types/plan-review.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,12 @@
## Context
You are reviewing an implementation plan during the Plan phase. The spec has been approved - now you must evaluate whether the plan adequately describes HOW to implement it.

## Baked Decisions

If the issue body or the approved spec's Constraints section includes content under a "Baked Decisions" heading, the architect has marked those choices as fixed (this extends the existing "don't re-litigate spec decisions" rule with explicit baked-decision language). Do not autonomously challenge them: do not propose alternative languages, frameworks, deployment shapes, or dependencies that contradict a baked decision. You may `COMMENT` with concerns; reserve `REQUEST_CHANGES` for the case where the plan **fails to honor** a stated baked decision — that is a real defect.

If the baked decisions themselves contain contradictions, do not pick one — `REQUEST_CHANGES` and ask the architect to clarify before proceeding.

## Focus Areas

1. **Spec Coverage**
Expand Down
6 changes: 6 additions & 0 deletions codev-skeleton/protocols/spir/consult-types/spec-review.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,12 @@
## Context
You are reviewing a feature specification during the Specify phase. Your role is to ensure the spec is complete, correct, and feasible before it moves to human approval.

## Baked Decisions

If the issue body or the spec's Constraints section includes content under a "Baked Decisions" heading, the architect has marked those choices as fixed. Do not autonomously challenge them: do not propose alternative languages, frameworks, deployment shapes, or dependencies that contradict a baked decision. You may `COMMENT` with concerns about a baked decision (the architect decides whether to rescind it); reserve `REQUEST_CHANGES` for the case where the spec **fails to honor** a stated baked decision — that is a real defect.

If the baked decisions themselves contain contradictions (e.g., two different language choices), do not pick one — `REQUEST_CHANGES` and ask the architect to clarify before proceeding.

## Focus Areas

1. **Completeness**
Expand Down
6 changes: 6 additions & 0 deletions codev-skeleton/protocols/spir/prompts/specify.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,12 @@ ls codev/specs/{{project_id}}-*.md

**If no spec exists:** Proceed to Step 1 below.

### 0.5 Baked Decisions

Before exploring solution approaches, check the issue body for a section named "Baked Decisions" (any heading level, case-insensitive). If present, copy its content verbatim into the spec's Constraints section and treat each item as fixed. Do not autonomously relitigate the architect's choices in your Solution Exploration. If you discover a serious problem with a baked decision, raise it via `afx send architect` rather than overriding it in the spec.

If two baked decisions contradict each other (e.g., two different language choices), do not pick one — pause, flag the contradiction via `afx send`, and wait for resolution before drafting.

### 1. Clarifying Questions (ONLY IF NO SPEC EXISTS)

Before writing anything, ask clarifying questions to understand:
Expand Down
4 changes: 4 additions & 0 deletions codev-skeleton/protocols/spir/protocol.md
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,10 @@ Each phase follows a build-verify loop: build the artifact, then verify with 3-w
- Dependency updates
- Emergency hotfixes (but do a lightweight retrospective after)

## Baked Decisions (Optional)

When filing an issue for SPIR, you can pin architectural decisions you don't want the builder or CMAP reviewers to re-litigate. Include a `## Baked Decisions` section (any heading level is fine) anywhere in the issue body. Useful categories: language, framework, deployment shape, key dependencies, decisions deferred to a later spec. The builder will copy the section verbatim into the spec's Constraints and treat each item as fixed; CMAP reviewers will not propose alternatives unless the spec itself fails to honor a stated decision. Leave the section out for issues where you want the builder to explore freely — absence is the no-op default. You can amend or rescind a baked decision at any time by updating the issue and respawning, or by sending the builder a direct instruction via `afx send`.

## Protocol Phases

### S - Specify (Collaborative Design Exploration)
Expand Down
Loading
Loading