feat(core): govern Position lifecycle-change review - #111
Conversation
📝 WalkthroughWalkthroughPosition 생명주기 변경 검토 패킷을 추가했습니다. 패킷은 상태 전이, 행위자, 스냅샷 digest, 시간 및 검토 결과를 검증하고 canonical 증거로 직렬화합니다. 테스트와 wheel 기반 GitHub Actions 품질 게이트도 추가했습니다. ChangesPosition 생명주기 검토
Estimated code review effort: 4 (Complex) | ~45 minutes Merge Risk: 🟡 Moderate · up to The PR’s documentation currently presents develop as protected even though enforceable protection is still unresolved, which could lead maintainers to overestimate merge safeguards. Correct the affected documentation or clearly state the protection prerequisite before merging. Sequence Diagram(s)sequenceDiagram
participant Reviewer
participant ReviewPacket
participant AuthoritativeHost
participant AuditOutbox
Reviewer->>ReviewPacket: 검토 결과와 snapshot digest 제출
ReviewPacket->>ReviewPacket: 상태 전이와 입력 검증
ReviewPacket-->>Reviewer: canonical 증거와 다음 조치 반환
AuthoritativeHost->>ReviewPacket: 최신 Position·Assignment 정보 재검증
AuthoritativeHost->>AuditOutbox: 권위 있는 변경과 감사·아웃박스 기록
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
📝 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 Please review the current unchanged head against protected |
_release_binding now raises an explicit AssertionError with a governance message instead of a bare assert, keeping the drift branch measurable under the 100% branch gate; regression drives the drifted-digest path directly. Suite stays at 100% statement+branch coverage (36 tests). Addresses Devin review observation on PR #111.
Current authority — 2026-09-07
Current exact head:
25aaef404fc60cdeb1be5a5575cd80491c61ebb2.Protected base:
develop@eb9757f8649aaad026a9865508d9aad50c1a7a4f.GitHub reports open · Draft · mechanically mergeable. This lane adds governed, value-minimized human review evidence for an existing Position lifecycle change; it still does not mutate authoritative Position truth.
Protected-parent reconciliation
The predecessor
03f3f6de674ee07cf33b9d2a75f58a8d210d7ed8carried valid Position lifecycle review/domain/test evidence, but GitHub's conflict-free synthetic protected-parent merge1090a853bd07a94b64d0b2eca391156e0fd9726fresurrected.github/workflows/position-lifecycle-review-quality.yml. Protected #161 retired that leaf while consolidating repository-owned quality under canonical Foundation CI. The resurrected leaf also reintroducedubuntu-latest.Current
25aaef40...is an ordinary two-parent successor of the complete predecessor feature delta anddevelop@eb9757f...; the branch ref advanced non-force. The corrected tree keeps the retired leaf absent and preserves protected Foundation/Recovery workflow bytes. Its useful quality obligations are not discarded: canonical Foundation's dependency-hygiene step delegates totests/test_position_lifecycle_review_artifact.sh, which requires exact CPython 3.14.7, hash-pinned build tooling, an exact-checkout wheel installed by computed SHA-256 into an isolated venv, import provenance checks, and the package's existing exact 100% statement/branch coverage gate without package-localPYTHONPATHexecution.packages/position-lifecycle-review/tests/test_artifact_execution.pyprevents leaf-workflow resurrection and proves the canonical path independently of process cwd.The same repair removes stale governance text from ADR/README/traceability. Current effective ruleset
18156473remains the merge authority; Issue #89 remains the canonical Orgmetra evidence lane for central governance/control-plane convergence. Product capability and repository policy remain separate.No Position lifecycle transition rule, PII/data-minimization boundary, human authority, mutation prohibition, test threshold, protected runner contract, central required workflow, or foreign-owner boundary was weakened.
Exact-current-head acceptance
Fresh terminal evidence on unchanged
25aaef40...is now:34028263073— SUCCESS.34028263075— SUCCESS.34028263097— FAILURE only at the central Dependency Review support boundary. Exact-head checkout succeeds. OSV, Scorecard and Trivy complete successfully; dependency-review job101478922604fails atCheck dependency review supportand the authoritative Dependency Review action is skipped. This does not establish a Position Lifecycle Review source vulnerability.34028263063— FAILURE only at the central verdict handoff. Language detection succeeds; Python job101478634205and Actions job101478634218both successfully request current-head CodeQL scan dispatch, then fail only atRelease runner or enforce current-head CodeQL verdict. No Position source/SARIF defect is established by that wrapper failure.All predecessor GREEN on
03f3f6de...is historical only and does not transfer to25aaef40.... Fresh formal review enumeration remains COMMENTED-only with no qualifyingAPPROVEDreview. Every currently returned inline review thread is resolved. No leaf fallback, synthetic verdict, or no-op retrigger is introduced for central-owner failures.Stack discipline
Child #112 remains open · Draft at exact
1889851f9f8c7e0528e047ec53f33f947be6dd88and is based on stale parent snapshotb9e85a1b8eb92f168fd261aa150a6204490c8023. Do not copy this mutable #111 head into the child now. Required order is: #111 central exact-head gate recovery and qualifying independent review → normal protected integration → #112 non-force adoption/retarget preserving the full application delta → fresh PostgreSQL/package/security/review evidence on the resulting child head.Do not self-approve, use routine administrator bypass, force-push/destructively rebase, restore the retired leaf workflow, manufacture no-op evidence, transfer predecessor checks/reviews, weaken gates, or Close the valid delta.