feat: ship run log persistence for /retro velocity tracking#324
Open
jithinraj wants to merge 1 commit intogarrytan:mainfrom
Open
feat: ship run log persistence for /retro velocity tracking#324jithinraj wants to merge 1 commit intogarrytan:mainfrom
jithinraj wants to merge 1 commit intogarrytan:mainfrom
Conversation
61db776 to
e6a47ff
Compare
e6a47ff to
bb879d2
Compare
Adds structured JSONL logging to /ship and consumption in /retro, enabling shipping velocity metrics across retrospectives. - bin/gstack-ship-log: read/write helper with --window date filtering - ship Step 8.25: appends entry after PR creation (version, branch, PR URL, review findings, Greptile stats, coverage delta) - retro Step 1 command 14: reads ship log for velocity aggregation - retro Step 2: Ship Velocity metric row - retro Steps 13-14: ship_velocity in saved JSON and narrative Follows existing JSONL patterns (gstack-review-log, gstack-telemetry-log). Graceful fallback: log failures never block /ship workflow.
5 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Structured ship run logging for
/retrovelocity tracking. Addresses P2 TODO: "Ship log — persistent record of /ship runs" (TODOS.md line 268).What ships:
bin/gstack-ship-log— JSONL read/write helper with--windowdate filtering (macOS + Linux)ship/SKILL.md.tmplStep 8.25 — appends 13-field entry after PR creation (version, branch, PR URL, review findings, Greptile stats, coverage delta)retro/SKILL.md.tmpl— full consumption: command 14 reads log, Step 2 aggregates Ship Velocity metric, Steps 13-14 include velocity in saved JSON and narrativetest/ship-log.test.ts— 9 unit tests (syntax, append, read, window filter, help, edge cases)ship-log: periodic)Design choices:
gstack-telemetry-log,gstack-review-logpatterns) — not JSON arrayread --window— retro gets date-filtered data without parsing raw filesset -uo pipefail(no-e), all writes guarded with2>/dev/null || true— ship workflow never fails for a log writeTest Coverage
9 new unit tests in
test/ship-log.test.ts. All existing tests pass.Pre-Landing Review
No issues found.
Test plan
bash -n bin/gstack-ship-logpasses syntax checkbun test test/ship-log.test.ts— 9 pass, 0 failbun test— all suites pass (1/2 pre-existing on main)bun run skill:check— 36/36 skills healthybun run gen:skill-docs --host all --dry-run— all 8 hosts FRESH$GSTACK_ROOT/bin/gstack-ship-login Codex/Factory, host-specific paths in Kiro/OpenCode/Slate/Cursor/OpenClaw