Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
67 changes: 67 additions & 0 deletions plan-ceo-review/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -456,6 +456,73 @@ List every ASCII diagram in files this plan touches. Still accurate?
### Unresolved Decisions
If any AskUserQuestion goes unanswered, note it here. Never silently default.

## Save Review Artifacts

After the review is complete, save the full review for future sessions.

### Write archive files

```bash
mkdir -p .gstack/reviews
SEQ=$(ls .gstack/reviews/plan-ceo-$(date +%Y-%m-%d)-*.json 2>/dev/null | wc -l | tr -d ' ')
SEQ=$((SEQ + 1))
DATE=$(date +%Y-%m-%d)
```

Write the review outputs to `.gstack/reviews/plan-ceo-{DATE}-{SEQ}.md` containing:
* Completion summary table
* Error & rescue registry
* Failure modes registry
* "NOT in scope", "What already exists", "Dream state delta" sections
* All diagrams produced
* TODOS.md items proposed and user decisions
* Unresolved decisions

Write structured JSON to `.gstack/reviews/plan-ceo-{DATE}-{SEQ}.json`:
```json
{
"skill": "plan-ceo-review",
"date": "{DATE}",
"seq": {SEQ},
"mode": "EXPANSION|HOLD|REDUCTION",
"completion_summary": "...",
"error_rescue_registry": [...],
"failure_modes": [...],
"not_in_scope": [...],
"what_already_exists": [...],
"dream_state_delta": "...",
"todos": [...],
"unresolved_decisions": [...],
"diagrams": [...]
}
```

### Regenerate HANDOFF.md

Read the most recent archive of each type from `.gstack/reviews/` (most recent `plan-ceo-*.json`, `plan-eng-*.json`, `review-*.json`). Combine them into `.gstack/HANDOFF.md`:

```markdown
# Handoff — {DATE}

Generated by gstack. Read this before starting implementation.

## CEO Review ({date from most recent plan-ceo archive})
<completion summary, error/rescue registry, failure modes, scope exclusions, key diagrams>

## Eng Review ({date from most recent plan-eng archive})
<completion summary, architecture analysis, test matrix, implementation plan>

## Code Review ({date from most recent review archive})
<findings list, summary stats>

## Open Items
<aggregated TODOs and unresolved decisions from all reviews, deduplicated>
```

Only include sections for which archives exist. Omit sections with no prior reviews of that type.

Output: `Review saved to .gstack/reviews/ and handoff regenerated at .gstack/HANDOFF.md.`

## Formatting Rules
* NUMBER issues (1, 2, 3...) and LETTERS for options (A, B, C...).
* Label with NUMBER + LETTER (e.g., "3A", "3B").
Expand Down
67 changes: 67 additions & 0 deletions plan-ceo-review/SKILL.md.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -447,6 +447,73 @@ List every ASCII diagram in files this plan touches. Still accurate?
### Unresolved Decisions
If any AskUserQuestion goes unanswered, note it here. Never silently default.

## Save Review Artifacts

After the review is complete, save the full review for future sessions.

### Write archive files

```bash
mkdir -p .gstack/reviews
SEQ=$(ls .gstack/reviews/plan-ceo-$(date +%Y-%m-%d)-*.json 2>/dev/null | wc -l | tr -d ' ')
SEQ=$((SEQ + 1))
DATE=$(date +%Y-%m-%d)
```

Write the review outputs to `.gstack/reviews/plan-ceo-{DATE}-{SEQ}.md` containing:
* Completion summary table
* Error & rescue registry
* Failure modes registry
* "NOT in scope", "What already exists", "Dream state delta" sections
* All diagrams produced
* TODOS.md items proposed and user decisions
* Unresolved decisions

Write structured JSON to `.gstack/reviews/plan-ceo-{DATE}-{SEQ}.json`:
```json
{
"skill": "plan-ceo-review",
"date": "{DATE}",
"seq": {SEQ},
"mode": "EXPANSION|HOLD|REDUCTION",
"completion_summary": "...",
"error_rescue_registry": [...],
"failure_modes": [...],
"not_in_scope": [...],
"what_already_exists": [...],
"dream_state_delta": "...",
"todos": [...],
"unresolved_decisions": [...],
"diagrams": [...]
}
```

### Regenerate HANDOFF.md

Read the most recent archive of each type from `.gstack/reviews/` (most recent `plan-ceo-*.json`, `plan-eng-*.json`, `review-*.json`). Combine them into `.gstack/HANDOFF.md`:

```markdown
# Handoff — {DATE}

Generated by gstack. Read this before starting implementation.

## CEO Review ({date from most recent plan-ceo archive})
<completion summary, error/rescue registry, failure modes, scope exclusions, key diagrams>

## Eng Review ({date from most recent plan-eng archive})
<completion summary, architecture analysis, test matrix, implementation plan>

## Code Review ({date from most recent review archive})
<findings list, summary stats>

## Open Items
<aggregated TODOs and unresolved decisions from all reviews, deduplicated>
```

Only include sections for which archives exist. Omit sections with no prior reviews of that type.

Output: `Review saved to .gstack/reviews/ and handoff regenerated at .gstack/HANDOFF.md.`

## Formatting Rules
* NUMBER issues (1, 2, 3...) and LETTERS for options (A, B, C...).
* Label with NUMBER + LETTER (e.g., "3A", "3B").
Expand Down
65 changes: 65 additions & 0 deletions plan-eng-review/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -172,3 +172,68 @@ Check the git log for this branch. If there are prior commits suggesting a previ

## Unresolved decisions
If the user does not respond to an AskUserQuestion or interrupts to move on, note which decisions were left unresolved. At the end of the review, list these as "Unresolved decisions that may bite you later" — never silently default to an option.

## Save Review Artifacts

After the review is complete, save the full review for future sessions.

### Write archive files

```bash
mkdir -p .gstack/reviews
SEQ=$(ls .gstack/reviews/plan-eng-$(date +%Y-%m-%d)-*.json 2>/dev/null | wc -l | tr -d ' ')
SEQ=$((SEQ + 1))
DATE=$(date +%Y-%m-%d)
```

Write the review outputs to `.gstack/reviews/plan-eng-{DATE}-{SEQ}.md` containing:
* Completion summary
* Step 0 scope challenge and user's mode selection
* "NOT in scope" and "What already exists" sections
* All diagrams produced
* Failure modes and critical gaps
* TODOS.md items proposed and user decisions
* Unresolved decisions

Write structured JSON to `.gstack/reviews/plan-eng-{DATE}-{SEQ}.json`:
```json
{
"skill": "plan-eng-review",
"date": "{DATE}",
"seq": {SEQ},
"mode": "REDUCTION|BIG_CHANGE|SMALL_CHANGE",
"completion_summary": "...",
"not_in_scope": [...],
"what_already_exists": [...],
"failure_modes": [...],
"todos": [...],
"unresolved_decisions": [...],
"diagrams": [...]
}
```

### Regenerate HANDOFF.md

Read the most recent archive of each type from `.gstack/reviews/` (most recent `plan-ceo-*.json`, `plan-eng-*.json`, `review-*.json`). Combine them into `.gstack/HANDOFF.md`:

```markdown
# Handoff — {DATE}

Generated by gstack. Read this before starting implementation.

## CEO Review ({date from most recent plan-ceo archive})
<completion summary, error/rescue registry, failure modes, scope exclusions, key diagrams>

## Eng Review ({date from most recent plan-eng archive})
<completion summary, architecture analysis, test matrix, implementation plan>

## Code Review ({date from most recent review archive})
<findings list, summary stats>

## Open Items
<aggregated TODOs and unresolved decisions from all reviews, deduplicated>
```

Only include sections for which archives exist. Omit sections with no prior reviews of that type.

Output: `Review saved to .gstack/reviews/ and handoff regenerated at .gstack/HANDOFF.md.`
65 changes: 65 additions & 0 deletions plan-eng-review/SKILL.md.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -163,3 +163,68 @@ Check the git log for this branch. If there are prior commits suggesting a previ

## Unresolved decisions
If the user does not respond to an AskUserQuestion or interrupts to move on, note which decisions were left unresolved. At the end of the review, list these as "Unresolved decisions that may bite you later" — never silently default to an option.

## Save Review Artifacts

After the review is complete, save the full review for future sessions.

### Write archive files

```bash
mkdir -p .gstack/reviews
SEQ=$(ls .gstack/reviews/plan-eng-$(date +%Y-%m-%d)-*.json 2>/dev/null | wc -l | tr -d ' ')
SEQ=$((SEQ + 1))
DATE=$(date +%Y-%m-%d)
```

Write the review outputs to `.gstack/reviews/plan-eng-{DATE}-{SEQ}.md` containing:
* Completion summary
* Step 0 scope challenge and user's mode selection
* "NOT in scope" and "What already exists" sections
* All diagrams produced
* Failure modes and critical gaps
* TODOS.md items proposed and user decisions
* Unresolved decisions

Write structured JSON to `.gstack/reviews/plan-eng-{DATE}-{SEQ}.json`:
```json
{
"skill": "plan-eng-review",
"date": "{DATE}",
"seq": {SEQ},
"mode": "REDUCTION|BIG_CHANGE|SMALL_CHANGE",
"completion_summary": "...",
"not_in_scope": [...],
"what_already_exists": [...],
"failure_modes": [...],
"todos": [...],
"unresolved_decisions": [...],
"diagrams": [...]
}
```

### Regenerate HANDOFF.md

Read the most recent archive of each type from `.gstack/reviews/` (most recent `plan-ceo-*.json`, `plan-eng-*.json`, `review-*.json`). Combine them into `.gstack/HANDOFF.md`:

```markdown
# Handoff — {DATE}

Generated by gstack. Read this before starting implementation.

## CEO Review ({date from most recent plan-ceo archive})
<completion summary, error/rescue registry, failure modes, scope exclusions, key diagrams>

## Eng Review ({date from most recent plan-eng archive})
<completion summary, architecture analysis, test matrix, implementation plan>

## Code Review ({date from most recent review archive})
<findings list, summary stats>

## Open Items
<aggregated TODOs and unresolved decisions from all reviews, deduplicated>
```

Only include sections for which archives exist. Omit sections with no prior reviews of that type.

Output: `Review saved to .gstack/reviews/ and handoff regenerated at .gstack/HANDOFF.md.`
58 changes: 58 additions & 0 deletions review/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,64 @@ After outputting your own findings, if Greptile comments were classified in Step

---

## Step 6: Save Review Artifacts

After findings are output and any critical issues resolved, save the review for future sessions.

```bash
mkdir -p .gstack/reviews
SEQ=$(ls .gstack/reviews/review-$(date +%Y-%m-%d)-*.json 2>/dev/null | wc -l | tr -d ' ')
SEQ=$((SEQ + 1))
DATE=$(date +%Y-%m-%d)
```

Write the full review to `.gstack/reviews/review-{DATE}-{SEQ}.md` containing:
- Branch name and commit range reviewed
- All findings (critical and informational) with file:line references
- Greptile summary and comment resolutions (if applicable)
- Resolution status for each critical issue (fixed / acknowledged / false positive)

Write structured JSON to `.gstack/reviews/review-{DATE}-{SEQ}.json`:
```json
{
"skill": "review",
"date": "{DATE}",
"seq": {SEQ},
"branch": "...",
"critical_count": 0,
"informational_count": 0,
"findings": [...],
"greptile_summary": "...",
"resolutions": [...]
}
```

Regenerate `.gstack/HANDOFF.md` by reading the most recent archive of each type from `.gstack/reviews/` (most recent `plan-ceo-*.json`, `plan-eng-*.json`, `review-*.json`) and combining them:

```markdown
# Handoff — {DATE}

Generated by gstack. Read this before starting implementation.

## CEO Review ({date from most recent plan-ceo archive})
<completion summary, error/rescue registry, failure modes, scope exclusions, key diagrams>

## Eng Review ({date from most recent plan-eng archive})
<completion summary, architecture analysis, test matrix, implementation plan>

## Code Review ({date from most recent review archive})
<findings list, summary stats>

## Open Items
<aggregated TODOs and unresolved decisions from all reviews, deduplicated>
```

Only include sections for which archives exist. Omit sections with no prior reviews of that type.

Output: `Review saved to .gstack/reviews/ and handoff regenerated at .gstack/HANDOFF.md.`

---

## Important Rules

- **Read the FULL diff before commenting.** Do not flag issues already addressed in the diff.
Expand Down
Loading