Skip to content

fix(noema): bind sidecar evidence to current producer - #2622

Merged
seonghobae merged 1 commit into
ci/sdp-all-self-hosted-20261003from
fix/noema-current-producer-evidence-20261010
Oct 10, 2026
Merged

seonghobae merged 1 commit into
ci/sdp-all-self-hosted-20261003from
fix/noema-current-producer-evidence-20261010

Conversation

@seonghobae

Copy link
Copy Markdown
Contributor

목적

Noema sidecar evidence 업로드를 현재 실행된 producer에 묶습니다. Draft 업로드 수리의 기존 owner #2563은 보존합니다. 이 PR은 최신 global owner #2565 head ef0c9d4c668fac7f01609b8fbd61a4126b103f5c 위에서 current-producer/freshness gap만 보강합니다.

변경 범위

  • .github/workflows/noema-review.yml
    • noema_evidence 초기화 step 추가
    • 두 owned evidence 파일만 안전하게 초기화
    • upload 조건을 live_draft != true와 noema_sidecar terminal outcome success|failure|cancelled로 제한
  • tests/test_noema_draft_admission_before_sidecar.py
    • unique actions/upload-artifact identity oracle
    • absent/skipped producer 업로드 차단 matrix
  • tests/test_noema_orchestrator_workflow_contract.py
    • stale evidence 삭제, current evidence 보존, alias/symlink/hardlink/FIFO/socket 거부 계약

검증

  • parent direct run: Python 3.14.5, GITHUB_ACTIONS=true, -W error, -o addopts=, focused pytest 76 passed
  • actionlint: exit 0
  • independent security/spec review: PASS, blocking finding 0
  • source hashes:
    • .github/workflows/noema-review.yml: 284544e0bcbf9d1667b91d04a7976e8f23a685b06b114b3ff2165c70f57383ca
    • tests/test_noema_draft_admission_before_sidecar.py: aae994b12148538f42c18f35227c9e3f7fd1fc8695dfc352bbe2c200be848aaf
    • tests/test_noema_orchestrator_workflow_contract.py: 3fd81ffa7413f19d31b7d10e82513eb28d51b2588aa100583293a9b3c3e10d5f
  • patch SHA256: 82e46256895937b8b83099c18457534963d392031599a974064812e6d22cbe28
  • receipt: /Users/seonghobae/.hermes/cache/scratch/gyeot-noema-independent-security-20261010/completed-v2/review-receipt.json

현재 한계

  • GitHub artifact storage quota 자체는 해결하지 않습니다.
  • same-UID host TOCTOU path swap race는 이 PR의 범위 밖입니다.
  • 실제 hosted/protected workflow 실행, inference, App approval, merge는 아직 별도 gate입니다.
  • #2563은 여전히 Draft-upload canonical owner입니다. 이 PR은 최신 #2565와의 broad ancestor conflict 때문에 만든 current-stack 통합 제안입니다.

관련 RCA

@coderabbitai

coderabbitai Bot commented Oct 10, 2026 •

Copy link
Copy Markdown
Contributor

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration
  • Configuration used: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: fde719aa-8e09-4d9b-90be-51c355a1a4a5

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@seonghobae

Copy link
Copy Markdown
Contributor Author

Locked local acceptance repaired — October 11 KST

The earlier full-suite attempt is superseded. It lost the pytest child wait status and used host tool versions, so it is not counted as PASS.

Fresh locked run:

  • head: 5c1196ae4ced137622ce1f603e58d65322045714
  • tree: 8b6940248df484fa81ef6fc192a433db9788288d
  • tracked files: 742 before/after unchanged
  • venv: Python 3.14.5, pytest 9.1.1, coverage 7.15.4, PyYAML 6.0.3, pip 26.2.1
  • full pytest under coverage: exit 0; 5632 passed, 6 skipped, 85 subtests passed
  • coverage report/json: exit 0; statements 18907/18907, branches 7714/7714
  • interrogate: exit 0; 1483/1483
  • actionlint on changed Noema workflow with canonical config: exit 0
  • receipt: /Users/seonghobae/.hermes/cache/scratch/n2622-locked-exit-repair-20261011/locked-run/final.json

This is local source acceptance only. It is not remote protected execution, model inference, App approval, or merge authority.

@seonghobae
seonghobae marked this pull request as ready for review October 10, 2026 15:50
@seonghobae
seonghobae merged commit 7435189 into ci/sdp-all-self-hosted-20261003 Oct 10, 2026
36 of 41 checks passed
@seonghobae
seonghobae deleted the fix/noema-current-producer-evidence-20261010 branch October 10, 2026 15:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant