fix(workflow-registry): fail closed on active-PR path ambiguity - #420
Merged
seonghobae merged 24 commits intoAug 18, 2026
Conversation
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (7)
📝 WalkthroughWalkthroughPR 소유 워크플로를 immutable merge-base-to-head Git tree 차이로 판정합니다. 경로 대소문자 및 Unicode 정규화 충돌을 미해결 상태로 분류합니다. 비활성화 전에 라이브 레지스트리와 감사 결과를 다시 수집합니다. Changes워크플로 레지스트리 안전성
Estimated code review effort: 4 (Complex) | ~60 minutes Possibly related issues
Possibly related PRs
Sequence Diagram(s)sequenceDiagram
participant runWorkflowRegistryDisablement
participant collectLiveWorkflows
participant collectWorkflowRegistryAudit
participant disableWorkflow
runWorkflowRegistryDisablement->>collectLiveWorkflows: 라이브 레지스트리 수집
runWorkflowRegistryDisablement->>collectWorkflowRegistryAudit: 전체 exact-main 감사 수집
collectWorkflowRegistryAudit-->>runWorkflowRegistryDisablement: 감사 및 권한 부여 결과
runWorkflowRegistryDisablement->>disableWorkflow: 검증된 레코드 비활성화
disableWorkflow-->>runWorkflowRegistryDisablement: mutation 결과
✨ 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 |
seonghobae
marked this pull request as ready for review
August 18, 2026 00:08
Contributor
|
Bugbot is not enabled for your account, so this pull request was not reviewed. Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs. |
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
Hardens the workflow-registry orphan detector and one-at-a-time disablement operator tracked by #226 so a live repair workflow cannot be disabled from ambiguous, incomplete, stale, transiently mismatched, stale-base-inherited, or current-base-only ownership evidence.
Six Noema-owned safety defects are addressed:
pull_number:head_sha:base_shasnapshot and the dynamic file inventory must exactly match the same PR detail endpoint's advertisedchanged_filescount.Test-first lineage
735c37eb96fa61e521fbd839e68b7a5ef9d21e0b→ GREEN649332fa3b5c0af58b7925aefea4ec46ef093629: case/Unicode path collisions fail closed while exact ownership remains distinct.74e9ea6c441d681b78391f852ce178186b1352e6: unrelated open-PR workflow paths do not suppress a genuine orphan.e472e7f8dde41948c8723c8fdd7117d3cb6b72cc→ GREEN4e985437fb913dc3987aa3396b43eacdf3f14620: a PR adopting the candidate during pre-mutation collection causes zero disable calls.1ee9c955711cf3e98713880fa9e5ca82a98a3792→ GREEN8a0a7b867a313f0cecef4373287915d4edebbb28: open-PR head/base/snapshot movement fails closed.f377fe12627dfabfe36c1b664ea0863ae90d6550→ GREEN2d1f8f8f9bf9cee11dd0554e4d73770c7e917829: incomplete paginated PR-file inventory fails closed againstchanged_files.9e9950e21af0496b943c789bf00fb979d5d7332f→ initial GREENc30c3eb9cc70fab370c4d759cdcfc2ee774b4a0b: immutable tree evidence defeats an ABA-shaped file-list mismatch.ea92040823c8969a0ef4b335d5e5d43b6807f577→ GREENc9ceaeddb787cfd530ed6ce8f0c2c99b12d49f59: unchanged stale-base inheritance does not become PR ownership.fcb007c6ed8f8d10f960a65ecade96fc871774da→ GREENc30142ee7bd620503340be1ca57ba85214dac636: a workflow removed only on the current base is not falsely attributed to an old PR; ownership is bound to the immutable merge-base→head delta.796cc53bb68e2153131c876da2416cd60b9dd7b2and6946decded34aa9747b9d0e6e59311477cf779fa: all live-collector tests model the immutable compare/merge-base evidence contract.Current exact identity and evidence
027995de4bf14472a1dcdfbbab01785f2aba3eee;6946decded34aa9747b9d0e6e59311477cf779fa;32083191533: success;32083191573: success;32083191588: success;No predecessor-head or model-only evidence is used for merge classification.
Boundaries
.github, naruon, contextual-orchestrator, or other dedicated-writer repository is modified.Related: #226
Summary by CodeRabbit
개선 사항
버그 수정