feat(queue): make #966 open-PR merge trains executable - #968
seonghobae wants to merge 138 commits into
Conversation
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: true📝 WalkthroughWalkthroughBandScope 1.0 제품 준비도와 병합 트레인을 문서화했습니다. GitHub open PR 큐 manifest를 갱신하고 검증하는 스크립트를 추가했습니다. Changes제품 준비도 및 PR 큐
Estimated code review effort: 4 (Complex) | ~45 minutes Sequence Diagram(s)sequenceDiagram
participant RefreshScript
participant GitHubAPI
participant ManifestFile
participant Quickcheck
RefreshScript->>GitHubAPI: develop SHA와 open PR 목록 요청
GitHubAPI-->>RefreshScript: PR JSON 페이지 반환
RefreshScript->>ManifestFile: 검증된 manifest 원자적 저장
Quickcheck->>ManifestFile: manifest 로드
Quickcheck->>Quickcheck: verify_open_pr_queue.py 실행
Merge Risk: 🟡 Moderate · up to The PR adds a live-refreshable PR queue, but invalid disposition values and records missing head revisions can currently pass validation and misroute follow-up actions. A required formatting check also remains failed, so merge should wait for these fixes and a clean exact-head check run. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
@opencode-agent Continue only the existing canonical branch |
|
Queued @opencode-agent for PR #968 at head |
Restack the queue/readiness owner on the canonical #1116 baseline update without copying baseline ownership. Preserve queue implementation unchanged while consuming the current Workspace/GrooveMap consolidation record. Signed-off-by: Seongho Bae <me@seonghobae.me>
Outcome
Executable queue-control owner for Issue #966, stacked on canonical baseline #1116 without becoming a second baseline, Project Persistence or formatter writer.
Exact current stack
develop@314ddeae7b775a4957594b599358c8255617eb2e.bolt-performance-chart-export-13223013812255847379@8fe6b6d99c009527ef0bcba419e6f6debdb23c23, Open / Draft / mergeable.docs/gap-baseline-2026-08-31@9c7cac0c645546bfaa910a3162d6166971ccc08b.docs/bandscope-product-readiness-baseline@dde02dbaf6ea2b82d85a81c3092073d816d898f7.3dfd77e11187211e9b7ed2317b8f559e5e1fb018, Open / Draft / mergeable, stacked through fix(shared): enforce valid transcription timing intervals #1254 and transitively repair(ci): format consolidated supply-chain policy test #1176.b29b7b522478780db44db1c754ab7f660ed2b17b, Open / Draft / mergeable.This PR remains Open / Draft / mergeable. Fresh #1116→#968 compare reports ahead 137 / behind 0, merge base exact
9c7cac0..., and exactly 23 queue-owned changed files.docs/product-technical-gap-baseline.mdis absent from the final delta, so canonical baseline single-writer ownership remains #1116.Current base-adoption repair
#1116 moved from
f69afac...to9c7cac0...to replace stale.github#2040CodeQL authority with the live central topology:.github#2352integration,.github#2275fail-closed GHAS analyses-read credential selector, and.github#2276target permission/canary.This queue branch first adopted that exact baseline blob in ordinary history at
767cf4162570d0bc863813e37ea218efe5fcce87, then created ordinary two-parent descendantdde02dbaf6ea2b82d85a81c3092073d816d898f7with parents767cf416...and current baseline9c7cac0.... The final tree preserves every queue-owned file and makes current #1116 the exact merge base. Ref movement was fast-forward/non-force; no destructive rebase or Force Push was used.Current RCA — invalid GitHub GraphQL CheckRun app projection
Historical
open-pr-queue-liverun33867414924is causally classified. Queue refresh and manifest verification succeeded, thenCollect exact-head check, review, and thread readinessfailed with the live GitHub GraphQL diagnostic:Field 'app' doesn't exist on type 'CheckRun'The current GitHub GraphQL schema exposes the producing GitHub App through
CheckRun.checkSuite.app, notCheckRun.app. RED0429202705e3f70f89ddeb3b83ff42733b6ffd47models that live shape; repair48f64f9337d808d445529f1115df2c37a6dc9950changes selection tocheckSuite { app { databaseId } }; alignment8ead94a953084b646fc2cc150207aae4dedc2bb8moves the fixture to the same schema; doctoring5ff44679ac447dd9538b703863f62a6a7814f377records the current API references and claim boundary.This is a source-backed repair, not a runner retry. Historical failure is RCA only and not current-head GREEN.
Exact-head workflow authority
The workflow binds PR-triggered checkout and artifact identity to
${{ github.event.pull_request.head.sha || github.sha }}and admits branch-scopedpushpluspull_requestopened/reopened/synchronize.Fresh current-head inventory for
dde02dba...has no hosted workflow generation. The same is true for current #11169c7cac0.... Zero runs are missing evidence, not GREEN; do not manufacture freshness with a no-op commit, blind rerun, force-push or synthetic status.Executable #966 contract retained here
refresh_open_pr_queue.pyowns bounded live inventory and exact identities;verify_open_pr_queue.pyvalidates graph/disposition consistency;collect_open_pr_readiness.pyadmits only unchanged canonical-active entries with terminal app-bound required checks, qualifying exact-head approval, zero actionable threads and complete decision metadata;.github/workflows/open-pr-queue-live.ymlpreserves read-only live refresh/verification/parity evidence.Live dependency context
#970 exact
3dfd77e...has adopted canonical #1254 timing policy through ancestry and repaired its persisted-cache consumer, but the stacked exact head has no hosted generation. Its latest direct-developCI found one canonical #1176 formatter file plus four still-unresolved #970-owned Ruff-format files.#1241 exact
b29b7b52...retains receipt-bound Score Storage and ScoreView freshness controls. Native macOS/Windows owner jobs are GREEN, while the focused Ubuntu UI lane failed at rawnpm cibefore the ScoreView regression; npm runtime ownership remains #896.#1176 exact
8fe6b6d...remains the common one-file formatter prerequisite. Repository CI/build/SBOM/Security/Semgrep are GREEN on that unchanged head, but delegated CodeQL remains blocked by the central GHAS identity-permission boundary..github#2352producer validation and settlement are terminal SUCCESS; Python/Actions scans complete exact-source analysis and clean Medium+ SARIF, then fail only becausecode-scanning/analysesreturns HTTP 403..github#2275/#2276own that repair. No qualifying independent current-head approval exists for #1176.Verification / merge gate
Keep Draft. Normal integration order remains canonical-prerequisite first: central GHAS analyses-read permission/canary must be repaired, #1176 must satisfy authentic required CodeQL/review governance and reach protected ancestry, #1116 then ordinary/non-force reconciles and obtains exact-head evidence, and this queue lane ordinary/non-force follows while preserving its queue-owned delta and reacquiring hosted exact-head evidence plus qualifying independent non-author review.
Any future #1116 source move must be adopted ordinary/non-force. No force-push, destructive rebase, baseline/formatter/product source copy, self-approval, gate weakening, blind rerun, source-neutral wake commit, synthetic status, or stale-evidence transfer.