Agents Builders

Release stage timestamp handoff

Archived
release-stage-timestamp-handoff

Created

Jul 04, 07:57

Started

Jul 04, 07:59

Completed

Jul 04, 19:54

DevOps handoff

Type

Feature

Shape

ui+db

Worktree Slug

release-stage-timestamp-handoff

Repositories

mcritchie-studio

Release Slug

Branch

feat/release-stage-timestamp-handoff

QA URL

Production URL

board-ui release-pipeline api

Acceptance Criteria

  • Release stores stage timestamps acting as booleans
  • Live on QA does not auto-start confirming
  • Confirming starts only when Avi notifies release
  • Progress bar renders stamped stages including handoff gap
  • Deployment SOPs instruct agents to post stage updates

Expected Test Plan

  • unit
  • integration

Checks Run

  • [unit] bin/rails test test/models/release_test.rb — stage timeline machine (53 runs)
  • [unit] bin/rails test test/helpers/application_helper_test.rb — stamp-driven tracker + handoff gap (46 runs)
  • [component] _release_summary/_current_release tracker renders (in helper suite)
  • [integration] bin/rails test test/controllers/api/v1/release_events_controller_test.rb — stage stamps over API, current slug (9 runs)
  • [integration] bin/rails test test/controllers/dev/board_controller_test.rb — fixture toy walks stamps (11 runs)
  • [integration] release conductor/CLI/releases/tasks suites green (390 runs)
  • [e2e] npx playwright test e2e/release_ship.spec.js e2e/deployments_live.spec.js — 10 passed
  • [full-suite@4348f577c773f568e00bbdf2e1945408b30c850a] bin/rails test green
  • [rubocop@4348f577c773f568e00bbdf2e1945408b30c850a] bin/rubocop clean

Agent Context

Add ordered stage timestamps to Release (testing_started_at, assembling_started_at, qa_deploy_started_at, qa_deployed_at, confirming_started_at, prod_deploy_started_at; assembled_at/confirmed_at/shipped_at exist). Each acts as time+boolean, first-write-wins, current stage = latest stamped. Stamp via Release#record_event! mapping (review_tests/assemble_release/deploy_qa/ship_gate/ship_authorized/deploy_prod started+completed) so both the conductor CLI and the existing /api/v1/releases/:slug/events/:step/:action API flow through. Key handoff fix: Steffon's deploy_qa completed = Live on QA (3 green) must NOT auto-activate Confirming; stage 4 goes yellow only when Avi posts events/confirming/start. Tracker helper (release_tracker_steps/done_count in application_helper) moves from heuristics to per-node complete/active/pending derived from stage stamps; migration backfills stamps from existing release_events. SOP updates target the NEW per-soul SOP layout on feat/agent-file-links (PR #364, open into release) — this branch must be merged into the feature branch first and PR #364 should merge before this PR.

Stage Timeline

Who handled each stage, the time it took (measured), and the model / tokens / cost reported (best-effort) — plus who's on it right now. means the agent didn't report that metric.

Sizing Avi · PO Dev MEDIUM Actual XL
  1. Created Designed
    S Seaking
    Seaking
    Model
    Duration
    Tokens
    Cost
    Completed Jul 04, 07:57 · 4 days ago
    api
  2. Designed Building
    S Seaking
    Seaking
    Model
    claude-fable-5
    Duration
    2 minutes
    Tokens
    2,043,232
    Cost
    ~$3.57
    Started Jul 04, 07:57
    Completed Jul 04, 07:59 · 4 days ago
    cli
  3. Building Submitted
    S Seaking
    Seaking
    Model
    claude-fable-5
    Duration
    37 minutes
    Tokens
    48,914,016
    Cost
    ~$64.11
    Started Jul 04, 07:59
    Completed Jul 04, 08:36 · 4 days ago
    cli
  4. Submitted Blocked
    A Avi
    Avi
    Model
    gpt-5.5
    Duration
    about 5 hours
    Tokens
    664,131
    Cost
    ~$0.60
    Started Jul 04, 08:36
    Completed Jul 04, 13:10 · 4 days ago
    cli
  5. Blocked Submitted
    S Seaking
    Seaking
    Model
    claude-fable-5
    Duration
    about 5 hours
    Tokens
    11,906,184
    Cost
    ~$22.27
    Started Jul 04, 13:10
    Completed Jul 04, 18:07 · 4 days ago
    cli
  6. Submitted Reviewed Review Activity
    C Carl
    Carl primary
    S Shannon
    Shannon light
    Model
    claude-fable-5
    Duration
    about 1 hour
    Tokens
    284,612
    Cost
    ~$0.39
    Started Jul 04, 18:07
    Completed Jul 04, 19:11 · 4 days ago
    cli
  7. Reviewed Assembled
    S Steffon
    Steffon
    Model
    claude-fable-5
    Duration
    28 minutes
    Tokens
    Cost
    Started Jul 04, 19:11
    Completed Jul 04, 19:39 · 4 days ago
  8. Assembled Shipped
    A Avi
    Avi
    Model
    claude-fable-5
    Duration
    16 minutes
    Tokens
    3,457,550
    Cost
    ~$5.15
    Started Jul 04, 19:39
    Completed Jul 04, 19:54 · 4 days ago
  9. Shipped Archived
    Model
    Duration
    about 6 hours
    Tokens
    Cost
    Started Jul 04, 19:54
    Completed Jul 05, 02:21 · 3 days ago

Conversation

QA review feedback, agent handoffs, and follow-up notes for this task.

Comment carl 4 days ago

Scout report: request-changes - Code path and targeted checks look sound, but PR #371 is not merge-safe against current origin/release. Reporter: carl Outcome: request-changes Findings: - BLOCKER: git merge-tree --write-tree origin/release origin/feat/release-stage-timestamp-handoff fails with a content conflict in docs/agents/agents/avi/sops/production-deploy.md; qa-intake marks the PR needs-agent and 6 commits behind origin/release. - Non-blocker: Release stage stamps, API current slug behavior, tracker handoff gap, and SOP updates match the acceptance criteria in the reviewed diff. Questions: - none Checks: - Read /Users/alex/projects/AGENTS.md plus README, ECOSYSTEM, PR review SOP, deployment docs, devops-cycle design, task metadata, PR body/files/comments/CI, diff, and open PR overlap. - GitHub checks on PR head 7ce9702a are green: scan_ruby, scan_js, lint, test. - Local targeted verification passed in the PR worktree with mise exec ruby@3.3.11: bin/rails test test/models/release_test.rb test/helpers/application_helper_test.rb test/controllers/api/v1/release_events_controller_test.rb test/controllers/dev/board_controller_test.rb => 119 runs, 591 assertions, 0 failures.

Comment shannon 4 days ago

Scout report: request-changes - Light review found the stage-stamp implementation aligned with acceptance and focused local checks green, but PR #371 is currently unmergeable against origin/release; resolve the production-deploy SOP conflict before Avi/Carl can clear it. Reporter: shannon Outcome: request-changes Findings: - [blocker] GitHub reports mergeable=CONFLICTING / mergeStateStatus=DIRTY at head 7ce9702; local git merge-tree origin/release HEAD reports a content conflict in docs/agents/agents/avi/sops/production-deploy.md. Conflict is between this PR’s Avi confirming/start handoff instructions and origin/release’s post-ship install-agent-docs paragraph; both pieces need to survive the resolution. - [non-blocker] Light pass found no functional issue in the stamp-driven Release model/API/tracker path. Release stage stamps are first-write-wins, current_stage is monotonic, Live on QA does not imply confirming, and the CLI posts ship_gate/deploy_prod stage events in order. Questions: - none Checks: - [ci] GitHub Actions at 7ce9702: scan_ruby, scan_js, lint, test all passed. - [local] Homebrew Ruby 3.3.11: bin/rails test test/models/release_test.rb test/helpers/application_helper_test.rb test/controllers/api/v1/release_events_controller_test.rb test/controllers/dev/board_controller_test.rb — 119 runs, 591 assertions, 0 failures. - [local] Homebrew Ruby 3.3.11: bin/rails test test/models/release/conductor_test.rb test/lib/release_cli_test.rb — 216 runs, 928 assertions, 0 failures.

QA Feedback avi 4 days ago

Avi Heartbeat blocked review: carl: request-changes - Code path and targeted checks look sound, but PR #371 is not merge-safe against current origin/release.; shannon: request-changes - Light review found the stage-stamp implementation aligned with acceptance and focused local checks green, but PR #371 is currently unmergeable against origin/release; resolve the production-deploy SOP conflict before Avi/Carl can clear it.

Handoff alex 4 days ago

Resolved the review blocker: merged origin/release (6 commits) into the branch; kept BOTH sides of the production-deploy SOP conflict (stage-timeline narration paragraph + the post-ship install-agent-docs step) and reconciled db/schema.rb to version 030600 (releases stage-stamp columns verified against a fresh migrate). Re-certified: full-suite + rubocop green at 4348f577c773, dor-check ✓ all four tiers. PR #371 now reports MERGEABLE at head 1d9ec99d.

Comment carl 4 days ago

Scout report: merge-ready - Primary review found no blockers: stage timestamp model/API/UI/docs meet the handoff acceptance, CI and DoR are green at the PR tree, and focused release/helper/API/dev-board tests pass locally. Reporter: carl Outcome: merge-ready Findings: - No blockers found. Live-on-QA stamps qa_deployed without implying confirming; confirming starts only from Avi's confirming/ship gate event. - Merge safety: PR #371 is CLEAN/MERGEABLE against release; synthetic merges with submitted peers #370 and #375 are conflict-free. Blocked draft #363 conflicts if revived, but it is not in the submitted sweep. Questions: - none Checks: - bin/dor-check release-stage-timestamp-handoff from .worktrees/release-stage-timestamp-handoff passed; full-suite/rubocop evidence fresh at tree 4348f577c773. - bin/rails test test/models/release_test.rb test/helpers/application_helper_test.rb test/controllers/api/v1/release_events_controller_test.rb test/controllers/dev/board_controller_test.rb passed: 119 runs, 599 assertions. - GitHub CI for PR #371 passed: scan_ruby, scan_js, lint, test; mergeStateStatus CLEAN.

Comment shannon 4 days ago

Scout report: merge-ready - Light review found no blockers; release stage timestamps, API stamping, tracker handoff gap, and SOP guidance match acceptance. Reporter: shannon Outcome: merge-ready Findings: - No blocker: Release::STAGES stamps are first-write-wins, Live on QA leaves Confirming dark, and confirming starts from Avi's confirming/start or ship_gate start. - Non-blocking merge safety: PR #371 is mergeable into release and clean with PRs #370/#375/#376; stale PR #363 conflicts with the same docs if merged in parallel. Questions: - none Checks: - GitHub PR #371 targets release, is MERGEABLE, and CI scan_ruby/scan_js/lint/test are green. - Local focused Rails check: bin/rails test test/models/release_test.rb test/helpers/application_helper_test.rb test/controllers/api/v1/release_events_controller_test.rb test/controllers/dev/board_controller_test.rb — 119 runs, 599 assertions, 0 failures. - Preview check: http://localhost:3004/deployments returned 200 and rendered the release tracker labels/states.

Handoff avi 4 days ago

Avi Heartbeat moved release-stage-timestamp-handoff to reviewed after carl + shannon reported merge-ready. Left for Steffon QA. Reports: - carl: merge-ready - Primary review found no blockers: stage timestamp model/API/UI/docs meet the handoff acceptance, CI and DoR are green at the PR tree, and focused release/helper/API/dev-board tests pass locally. - shannon: merge-ready - Light review found no blockers; release stage timestamps, API stamping, tracker handoff gap, and SOP guidance match acceptance.

Sealed-bid sizing

Edit →

Alex (PM)

Avi (PO)

Dev

MEDIUM

Actual

XL