mirror of
https://github.com/garrytan/gstack.git
synced 2026-05-05 13:15:24 +02:00
fix: enrich JSONL review logs for accurate plan file report
CEO reviews now log scope_proposed/accepted/deferred counts, eng reviews log total issues_found, design reviews log initial_score for before→after tracking, and codex reviews log findings_fixed. Report generator references these fields directly instead of requiring agents to reconstruct from partial data. Also fixes footer replacement to handle mid-file sections robustly. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
+20
-15
@@ -1147,17 +1147,19 @@ After displaying the Review Readiness Dashboard in conversation output, also upd
|
||||
Read the review log output you already have from the Review Readiness Dashboard step above.
|
||||
Parse each JSONL entry. Each skill logs different fields:
|
||||
|
||||
- **plan-ceo-review**: \\\`status\\\`, \\\`unresolved\\\`, \\\`critical_gaps\\\`, \\\`mode\\\`, \\\`commit\\\`
|
||||
→ Findings: "{N} proposals, {M} accepted, {K} deferred" (from your Completion Summary)
|
||||
- **plan-eng-review**: \\\`status\\\`, \\\`unresolved\\\`, \\\`critical_gaps\\\`, \\\`mode\\\`, \\\`commit\\\`
|
||||
→ Findings: "{N} issues, {M} critical gaps, mode: {MODE}"
|
||||
- **plan-design-review**: \\\`status\\\`, \\\`overall_score\\\`, \\\`unresolved\\\`, \\\`decisions_made\\\`, \\\`commit\\\`
|
||||
→ Findings: "score: {N}/10 → {M}/10, {K} decisions made"
|
||||
- **codex-review**: \\\`status\\\`, \\\`gate\\\`, \\\`findings\\\`
|
||||
→ Findings: "{N} findings, {M}/{N} fixed"
|
||||
- **plan-ceo-review**: \\\`status\\\`, \\\`unresolved\\\`, \\\`critical_gaps\\\`, \\\`mode\\\`, \\\`scope_proposed\\\`, \\\`scope_accepted\\\`, \\\`scope_deferred\\\`, \\\`commit\\\`
|
||||
→ Findings: "{scope_proposed} proposals, {scope_accepted} accepted, {scope_deferred} deferred"
|
||||
→ If scope fields are 0 or missing (HOLD/REDUCTION mode): "mode: {mode}, {critical_gaps} critical gaps"
|
||||
- **plan-eng-review**: \\\`status\\\`, \\\`unresolved\\\`, \\\`critical_gaps\\\`, \\\`issues_found\\\`, \\\`mode\\\`, \\\`commit\\\`
|
||||
→ Findings: "{issues_found} issues, {critical_gaps} critical gaps"
|
||||
- **plan-design-review**: \\\`status\\\`, \\\`initial_score\\\`, \\\`overall_score\\\`, \\\`unresolved\\\`, \\\`decisions_made\\\`, \\\`commit\\\`
|
||||
→ Findings: "score: {initial_score}/10 → {overall_score}/10, {decisions_made} decisions"
|
||||
- **codex-review**: \\\`status\\\`, \\\`gate\\\`, \\\`findings\\\`, \\\`findings_fixed\\\`
|
||||
→ Findings: "{findings} findings, {findings_fixed}/{findings} fixed"
|
||||
|
||||
For the review you just completed, use details from your own Completion Summary (richer
|
||||
than the JSONL). For prior reviews, use the JSONL fields to reconstruct a summary.
|
||||
All fields needed for the Findings column are now present in the JSONL entries.
|
||||
For the review you just completed, you may use richer details from your own Completion
|
||||
Summary. For prior reviews, use the JSONL fields directly — they contain all required data.
|
||||
|
||||
Produce this markdown table:
|
||||
|
||||
@@ -1186,12 +1188,15 @@ Below the table, add these lines (omit any that are empty/not applicable):
|
||||
file you are allowed to edit in plan mode. The plan file review report is part of the
|
||||
plan's living status.
|
||||
|
||||
- If a \\\`## GSTACK REVIEW REPORT\\\` section already exists at the end of the plan file,
|
||||
**replace it** entirely using the Edit tool (match from \\\`## GSTACK REVIEW REPORT\\\` to
|
||||
the end of the file). If the Edit fails (e.g., concurrent edit changed the content),
|
||||
re-read the plan file and retry once with the updated content.
|
||||
- Search the plan file for a \\\`## GSTACK REVIEW REPORT\\\` section **anywhere** in the file
|
||||
(not just at the end — content may have been added after it).
|
||||
- If found, **replace it** entirely using the Edit tool. Match from \\\`## GSTACK REVIEW REPORT\\\`
|
||||
through either the next \\\`## \\\` heading or end of file, whichever comes first. This ensures
|
||||
content added after the report section is preserved, not eaten. If the Edit fails
|
||||
(e.g., concurrent edit changed the content), re-read the plan file and retry once.
|
||||
- If no such section exists, **append it** to the end of the plan file.
|
||||
- Always place it as the very last section in the plan file.`;
|
||||
- Always place it as the very last section in the plan file. If it was found mid-file,
|
||||
move it: delete the old location and append at the end.`;
|
||||
}
|
||||
|
||||
function generateTestBootstrap(_ctx: TemplateContext): string {
|
||||
|
||||
Reference in New Issue
Block a user