Skip to content

repair(ci): format consolidated supply-chain policy test - #1176

Open
seonghobae wants to merge 7 commits into
developfrom
bolt-performance-chart-export-13223013812255847379
Open

repair(ci): format consolidated supply-chain policy test#1176
seonghobae wants to merge 7 commits into
developfrom
bolt-performance-chart-export-13223013812255847379

Conversation

@seonghobae

@seonghobae seonghobae commented Sep 6, 2026

Copy link
Copy Markdown
Collaborator

Repair finding

Protected develop@314ddeae7b775a4957594b599358c8255617eb2e contains a Ruff-formatting defect introduced with the #1165 repository-workflow consolidation. The protected-base blob services/analysis-engine/tests/test_supply_chain_policy.py@1d8224c5a5c8d45d4238b72fb4774275e41ab207 is inherited by multiple downstream lanes, so duplicating the fix into product or documentation branches would violate single-writer ownership.

Recovered valid delta

This PR had previously mixed chart-export work that is owned elsewhere. Ordinary descendants restored .jules/bolt.md and services/analysis-engine/src/bandscope_analysis/exports/chart.py byte-for-byte to protected develop. The only live diff is the repository-pinned Ruff formatting change in services/analysis-engine/tests/test_supply_chain_policy.py: one semantically equivalent assertion is collapsed to formatter output.

Current exact head is unchanged 8fe6b6d99c009527ef0bcba419e6f6debdb23c23. No workflow, product behavior, dependency, audio/MIR, filesystem, model, release, gate, or assertion semantics change. Do not add a no-op descendant.

Why this is now Ready

A fresh downstream #1116 quickcheck reproduced this protected-base defect after its own documentation RED was repaired: docs verification and Rust/Tauri checks passed, then ruff format --check stopped only on this exact file. Rather than copy the formatter delta, #1116 has now been explicitly stacked on this exact PR and retargeted to this branch; #968 ordinarily adopted #1116 afterward. That gives this one-file foundation repair an active downstream acceptance path.

The unchanged head already has historical terminal-success ci, build-baseline, SBOM, Security Scan, SAST and OpenCode evidence. Converting to Ready is not an approval or merge claim: it is intended to let the repository's current Ready-state review/security automation evaluate the unchanged exact head under the live protection contract without manufacturing a new commit.

Security / CodeQL authority

The old runner_id=0 diagnosis is obsolete. Historical CodeQL compatibility jobs received hosted runners and failed later in exact-verdict settlement. GHAS Trivy/Scorecard PR-comparison neutrals are separately owned by #1209.

Protected develop still requires GitHub-managed dynamic Analyze (javascript-typescript) / Analyze (python) contexts. The separate central compatibility producer/handler contract is owned by ContextualWisdomLab/.github#2040; that lane has advanced ordinarily beyond the old 3b2de64c... state and is still resolving staged protected-handler/run-wide settlement rollout. Do not synthesize statuses, restore a duplicate local CodeQL scanner, or create a no-op descendant merely to manufacture events.

Ownership and stack

This PR is the bounded successor repair for #1165 formatting debt only. Current #1116 baseline is an explicit child stack on this head, not an independent formatter writer. Current #968 is stacked on #1116 and its fresh compare excludes this formatter file. #970 remains Project Persistence owner; #866 remains Resource Admission owner; #1055 remains temporal privacy owner. #1211 stays preservation and must not become a second formatter owner.

Product owners #970/#866/#1055 still consume this repair only after normal protected integration/reconciliation; the #1116/#968 documentation-governance stack is explicitly based on this prerequisite so its own CI can verify the corrected foundation without copying the delta.

Merge gate

This PR is Ready, not merged. Normal integration still requires every applicable live protected/central required gate on unchanged exact 8fe6b6d..., zero valid unresolved findings, and a qualifying independent non-author last-push approval. If any fresh Ready-state check fails, repair the causal owner rather than weakening the gate. No self-approval, bypass, force-push, destructive rebase, unrelated chart restoration, synthetic status, or no-op event gaming.

…ks with O(1) dictionary key deduplication in chart export
@google-labs-jules

Copy link
Copy Markdown

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!

New to Jules? Learn more at jules.google/docs.


For security, I will only act on instructions from the user who triggered this task.

@coderabbitai

coderabbitai Bot commented Sep 6, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Team

Run ID: e5c73fbc-66b9-44ef-8eda-cad744fa5d28

📥 Commits

Reviewing files that changed from the base of the PR and between 314ddea and a7b0030.

📒 Files selected for processing (1)
  • services/analysis-engine/tests/test_supply_chain_policy.py

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.


📝 Walkthrough

Walkthrough

워크플로 권한 검증 assertion의 줄바꿈 형식을 단일 줄로 변경했습니다. 테스트 조건과 동작은 유지했습니다.

Changes

Supply chain policy 테스트

Layer / File(s) Summary
권한 검증 assertion 형식 정리
services/analysis-engine/tests/test_supply_chain_policy.py
권한 검증 assertion을 여러 줄 표현에서 단일 줄 표현으로 변경했습니다. 검증 조건은 동일합니다.

Estimated code review effort: 1 (매우 낮음) | ~2분

Merge Risk: ⚪ Minimal · up to a7b00

This change only reformats a supply-chain policy test assertion without changing its validation behavior, so it presents no current product or deployment risk.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 1 functions across 1 files.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed 제목은 test_supply_chain_policy.py의 Ruff 형식 수정이라는 주요 변경 사항을 정확히 설명합니다. 짧고 구체적이며 변경 내용과 관련이 있습니다.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch bolt-performance-chart-export-13223013812255847379

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.

Copy link
Copy Markdown
Collaborator Author

Succession receipt: canonical #1076 is now repaired onto current protected develop@314ddeae7b775a4957594b599358c8255617eb2e through ordinary non-force two-parent adoption and exact head 4d154e6c1dcf840c0cbac76f789c30d58903b9e0 (behind_by=0, five owner files only). It carries this PR's useful insertion-ordered dictionary de-duplication for active role ids, display names, cue values, and priorities, plus stronger executable contracts for duplicate ordering, unhashable/hashable/truthiness-overriding string subclasses and normalized priority text. #1176's test_supply_chain_policy.py change is formatting-only and not part of the performance contract. The simpler production patch would weaken #1076's safe-failure boundary, so it is not adopted. No #1176 checks/reviews/statuses transfer. Closing unmerged is complete semantic succession.

@seonghobae seonghobae closed this Sep 6, 2026
@google-labs-jules

Copy link
Copy Markdown

Succession receipt: canonical #1076 is now repaired onto current protected develop@314ddeae7b775a4957594b599358c8255617eb2e through ordinary non-force two-parent adoption and exact head 4d154e6c1dcf840c0cbac76f789c30d58903b9e0 (behind_by=0, five owner files only). It carries this PR's useful insertion-ordered dictionary de-duplication for active role ids, display names, cue values, and priorities, plus stronger executable contracts for duplicate ordering, unhashable/hashable/truthiness-overriding string subclasses and normalized priority text. #1176's test_supply_chain_policy.py change is formatting-only and not part of the performance contract. The simpler production patch would weaken #1076's safe-failure boundary, so it is not adopted. No #1176 checks/reviews/statuses transfer. Closing unmerged is complete semantic succession.

Understood. Acknowledging that this work has been succeeded by a different PR and this PR will be closed unmerged. Stopping work on this task.

@seonghobae seonghobae changed the title ⚡ Bolt: [performance improvement] Replace O(N^2) list membership checks with O(1) dictionary key deduplication in chart export repair(ci): format consolidated supply-chain policy test Sep 6, 2026
@seonghobae seonghobae reopened this Sep 6, 2026
@seonghobae
seonghobae marked this pull request as draft September 6, 2026 22:07

Copy link
Copy Markdown
Collaborator Author

@coderabbitai review

Please review exact head a7b0030a3a6cc6296a19ba3f8eaf595d470d05bd as a bounded inherited-base CI repair. The intended semantic delta is only Ruff formatting in services/analysis-engine/tests/test_supply_chain_policy.py; .jules/bolt.md and exports/chart.py must remain byte-identical to protected develop@314ddeae7b775a4957594b599358c8255617eb2e. Please flag any semantic assertion change, ownership leakage back into chart export, or repository-control regression. Do not treat predecessor review/check evidence as current-head evidence.

@coderabbitai

coderabbitai Bot commented Sep 6, 2026

Copy link
Copy Markdown
Contributor
🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

head_expected="a7b0030a3a6cc6296a19ba3f8eaf595d470d05bd"
base="314ddeae7b775a4957594b599358c8255617eb2e"

printf '%s\n' '== Exact HEAD =='
git rev-parse HEAD
git cat-file -t "$head_expected"
git cat-file -t "$base"
printf '%s\n' '== HEAD matches requested commit =='
test "$(git rev-parse HEAD)" = "$head_expected" && echo yes || echo no
printf '%s\n' '== Base is an ancestor of requested head =='
git merge-base --is-ancestor "$base" "$head_expected" && echo yes || echo no

printf '%s\n' '== Name-status diff: protected develop -> requested head =='
git diff --name-status "$base" "$head_expected"
printf '%s\n' '== Summary diff =='
git diff --stat "$base" "$head_expected"

printf '%s\n' '== Byte identity checks =='
for path in .jules/bolt.md exports/chart.py; do
  if git cat-file -e "${base}:${path}" 2>/dev/null && git cat-file -e "${head_expected}:${path}" 2>/dev/null; then
    if git diff --quiet "$base" "$head_expected" -- "$path"; then
      printf '%s: identical\n' "$path"
    else
      printf '%s: DIFFERENT\n' "$path"
    fi
  else
    printf '%s: missing in base or head\n' "$path"
  fi
done

printf '%s\n' '== Repository-control paths changed =='
git diff --name-status "$base" "$head_expected" -- \
  '.github' '.github/**' '.jules' '.jules/**' \
  'pyproject.toml' 'ruff.toml' '.ruff.toml' \
  'package.json' 'package-lock.json' 'poetry.lock' 'uv.lock' \
  'requirements*.txt' 'Pipfile' 'Pipfile.lock' \
  'Dockerfile' 'docker-compose*.yml' 'Makefile' || true

printf '%s\n' '== Focused diff =='
git diff --no-ext-diff --unified=80 "$base" "$head_expected" -- \
  services/analysis-engine/tests/test_supply_chain_policy.py

printf '%s\n' '== Test file outline =='
ast-grep outline services/analysis-engine/tests/test_supply_chain_policy.py --items all

Length of output: 22007


🏁 Script executed:

#!/bin/bash
set -euo pipefail

head="a7b0030a3a6cc6296a19ba3f8eaf595d470d05bd"
base="314ddeae7b775a4957594b599358c8255617eb2e"

printf '%s\n' '== Patch whitespace validation =='
git diff --check "$base" "$head"

printf '%s\n' '== Word-level diff for the only modified test file =='
git diff --word-diff=porcelain --no-ext-diff "$base" "$head" -- \
  services/analysis-engine/tests/test_supply_chain_policy.py

printf '%s\n' '== Tracked chart.py paths in base =='
git ls-tree -r --name-only "$base" | awk '(^|/)chart\.py$'
printf '%s\n' '== Tracked chart.py paths in requested head =='
git ls-tree -r --name-only "$head" | awk '(^|/)chart\.py$'

printf '%s\n' '== Diff for all tracked chart.py paths found in either tree =='
{
  git ls-tree -r --name-only "$base"
  git ls-tree -r --name-only "$head"
} | awk '(^|/)chart\.py$' | sort -u | while IFS= read -r path; do
  printf '%s\n' "--- $path"
  git diff --name-status "$base" "$head" -- "$path"
done

printf '%s\n' '== Changed paths outside the permitted test file =='
git diff --name-only "$base" "$head" | \
  awk '$0 != "services/analysis-engine/tests/test_supply_chain_policy.py" { print }'

Length of output: 2542


🏁 Script executed:

#!/bin/bash
set -euo pipefail

head="a7b0030a3a6cc6296a19ba3f8eaf595d470d05bd"
base="314ddeae7b775a4957594b599358c8255617eb2e"

base_paths="$(git ls-tree -r --name-only "$base" | grep -E '(^|/)chart\.py$' || true)"
head_paths="$(git ls-tree -r --name-only "$head" | grep -E '(^|/)chart\.py$' || true)"

printf '%s\n' '== Tracked chart.py paths in base =='
printf '%s\n' "${base_paths:-<none>}"
printf '%s\n' '== Tracked chart.py paths in requested head =='
printf '%s\n' "${head_paths:-<none>}"

printf '%s\n' '== Diff for all tracked chart.py paths =='
printf '%s\n%s\n' "$base_paths" "$head_paths" | sed '/^$/d' | sort -u | while IFS= read -r path; do
  printf '%s' "$path: "
  if git diff --quiet "$base" "$head" -- "$path"; then
    echo identical
  else
    echo DIFFERENT
    git diff --name-status "$base" "$head" -- "$path"
  fi
done

printf '%s\n' '== Exact requested exports/chart.py object status =='
for revision in "$base" "$head"; do
  if git cat-file -e "${revision}:exports/chart.py" 2>/dev/null; then
    echo "${revision}: present"
  else
    echo "${revision}: absent"
  fi
done

Length of output: 1719


@seonghobae No findings.

I verified exact head a7b0030a3a6cc6296a19ba3f8eaf595d470d05bd against develop@314ddeae7b775a4957594b599358c8255617eb2e.

  • The base commit is an ancestor of the reviewed head.
  • Only services/analysis-engine/tests/test_supply_chain_policy.py changed.
  • The changed assertion has identical operands and message. The change only removes Ruff formatter line breaks.
  • git diff --check reported no whitespace errors.
  • .jules/bolt.md is byte-identical.
  • The tracked chart export, services/analysis-engine/src/bandscope_analysis/exports/chart.py, is byte-identical.
  • exports/chart.py is not a tracked path in either tree.
  • No repository-control files changed.

This review uses current-head evidence only.

⚠️ Action not completed

Already reviewed the last commit. Use @coderabbitai full review to rerun a review of the entire changeset.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

Copy link
Copy Markdown
Collaborator Author

@coderabbitai review

Please review exact head 340b0a343ecfc05f630c7da729b8af40c7da4a2c. The tree is byte-identical to a7b0030a3a6cc6296a19ba3f8eaf595d470d05bd; the head commit is an empty Trigger CI retry commit. Scope the review to the sole diff in services/analysis-engine/tests/test_supply_chain_policy.py: verify that the Ruff-only formatting change preserves assertion semantics and that no superseded chart or workflow delta remains. Do not transfer predecessor approvals or checks.

@coderabbitai

coderabbitai Bot commented Sep 6, 2026

Copy link
Copy Markdown
Contributor

Tip

For best results, initiate chat on the files or code changes.

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

head="340b0a343ecfc05f630c7da729b8af40c7da4a2c"
predecessor="a7b0030a3a6cc6296a19ba3f8eaf595d470d05bd"
base="314ddeae7b775a4957594b599358c8255617eb2e"
test_path="services/analysis-engine/tests/test_supply_chain_policy.py"

printf '%s\n' '== Requested commit identity =='
printf 'checked-out HEAD: '; git rev-parse HEAD
printf 'requested head object: '; git cat-file -t "$head"
printf 'predecessor object: '; git cat-file -t "$predecessor"
printf 'base object: '; git cat-file -t "$base"
printf 'HEAD matches requested: '
test "$(git rev-parse HEAD)" = "$head" && echo yes || echo no

printf '%s\n' '== Empty retry commit verification =='
printf 'head tree: '; git rev-parse "${head}^{tree}"
printf 'predecessor tree: '; git rev-parse "${predecessor}^{tree}"
printf 'trees identical: '
test "$(git rev-parse "${head}^{tree}")" = "$(git rev-parse "${predecessor}^{tree}")" && echo yes || echo no
printf '%s\n' 'commit-level patch predecessor -> head:'
git diff-tree --no-commit-id --name-status -r "$predecessor" "$head"

printf '%s\n' '== Ancestry =='
printf 'base ancestor of head: '
git merge-base --is-ancestor "$base" "$head" && echo yes || echo no
printf 'predecessor ancestor of head: '
git merge-base --is-ancestor "$predecessor" "$head" && echo yes || echo no

printf '%s\n' '== Changed paths base -> head =='
git diff --name-status "$base" "$head"
printf '%s\n' '== Paths outside permitted test file =='
git diff --name-only "$base" "$head" | awk -v permitted="$test_path" '$0 != permitted {print}' || true

printf '%s\n' '== Focused semantic diff =='
git diff --no-ext-diff --unified=30 "$base" "$head" -- "$test_path"
printf '%s\n' '== Word diff =='
git diff --no-ext-diff --word-diff=porcelain "$base" "$head" -- "$test_path"
printf '%s\n' '== Whitespace validation =='
git diff --check "$base" "$head"

printf '%s\n' '== Prohibited path identity =='
for path in \
  .jules/bolt.md \
  exports/chart.py \
  services/analysis-engine/src/bandscope_analysis/exports/chart.py; do
  printf '%s: ' "$path"
  if git cat-file -e "${base}:${path}" 2>/dev/null && git cat-file -e "${head}:${path}" 2>/dev/null; then
    git diff --quiet "$base" "$head" -- "$path" && echo identical || echo DIFFERENT
  else
    echo missing-in-base-or-head
  fi
done

printf '%s\n' '== Repository-control changes =='
git diff --name-status "$base" "$head" -- \
  '.github' '.github/**' '.jules' '.jules/**' \
  'pyproject.toml' 'ruff.toml' '.ruff.toml' \
  'package.json' 'package-lock.json' 'poetry.lock' 'uv.lock' \
  'requirements*.txt' 'Pipfile' 'Pipfile.lock' \
  'Dockerfile' 'docker-compose*.yml' 'Makefile' || true

printf '%s\n' '== Test file structure =='
ast-grep outline "$test_path" --items all

Length of output: 20282


@seonghobae No findings.

I reviewed exact head 340b0a343ecfc05f630c7da729b8af40c7da4a2c.

  • HEAD matches the requested commit.
  • Its tree is byte-identical to a7b0030a3a6cc6296a19ba3f8eaf595d470d05bd.
  • The retry commit has no file changes.
  • Relative to develop@314ddeae7b775a4957594b599358c8255617eb2e, only services/analysis-engine/tests/test_supply_chain_policy.py changed.
  • The assertion keeps the same condition and workflow_name message. Only Ruff line wrapping changed.
  • .jules/bolt.md and services/analysis-engine/src/bandscope_analysis/exports/chart.py are byte-identical to the protected base.
  • exports/chart.py is absent from both trees.
  • No workflow or repository-control files changed.
  • git diff --check reported no whitespace errors.

This review uses current-head evidence only.

You are interacting with an AI system.

@seonghobae seonghobae added bug Something isn't working priority: medium Normal-priority or P2 work status: draft Draft pull request type: bug Defect or incorrect behavior labels Sep 6, 2026 — with ChatGPT Codex Connector

Copy link
Copy Markdown
Collaborator Author

@coderabbitai review exact 8488a02a1b36a99c94b3e248e948d754ed446750. Please scope review to the sole effective diff against protected develop: Ruff formatter output in services/analysis-engine/tests/test_supply_chain_policy.py. Commits 340b0a343ecfc05f630c7da729b8af40c7da4a2c and 8488a02a1b36a99c94b3e248e948d754ed446750 are empty retry descendants with the same source tree as a7b0030a3a6cc6296a19ba3f8eaf595d470d05bd; do not treat them as semantic source changes. Please flag any assertion-semantic or policy-contract change; otherwise record no actionable finding for this exact head.

Copy link
Copy Markdown
Collaborator Author

@opencode-agent please perform an independent last-push review of exact 8fe6b6d99c009527ef0bcba419e6f6debdb23c23. Scope is exactly one Ruff-format-only change in services/analysis-engine/tests/test_supply_chain_policy.py; verify assertion semantics are unchanged and no hidden product/workflow delta remains. Please return a formal current-head verdict rather than predecessor status. Central CodeQL terminal-receipt publication remains a separate merge gate and must not be treated as a source finding.

Copy link
Copy Markdown
Collaborator Author

Descendant inventory handoff: Dependabot #1191 now adopts this exact canonical Ruff prerequisite through ordinary merge descendant e17e6aba144f51e57d135565b30ff76e005ea858 (first parent original uuid bump 1185f51c..., second parent this PR exact 8fe6b6d...) and is retargeted to this branch while #1176 remains unprotected. The stacked #1191 diff is therefore only apps/desktop/src-tauri/Cargo.lock; it does not re-author test_supply_chain_policy.py. When #1176 reaches protected develop, #1191 should be non-force retargeted/reconciled to fresh protected ancestry and reacquire current-head checks/review. No Dependabot rebase/recreate or duplicated formatter repair is needed.

@google-labs-jules

Copy link
Copy Markdown

Descendant inventory handoff: Dependabot #1191 now adopts this exact canonical Ruff prerequisite through ordinary merge descendant e17e6aba144f51e57d135565b30ff76e005ea858 (first parent original uuid bump 1185f51c..., second parent this PR exact 8fe6b6d...) and is retargeted to this branch while #1176 remains unprotected. The stacked #1191 diff is therefore only apps/desktop/src-tauri/Cargo.lock; it does not re-author test_supply_chain_policy.py. When #1176 reaches protected develop, #1191 should be non-force retargeted/reconciled to fresh protected ancestry and reacquire current-head checks/review. No Dependabot rebase/recreate or duplicated formatter repair is needed.

Acknowledged. I confirm this PR (#1176) is maintained as the single-writer canonical prerequisite, and that the dependent Dependabot PR (#1191) successfully inherited the formatting repair via standard merge ancestry without duplicating the work.

Copy link
Copy Markdown
Collaborator Author

@coderabbitai review

Please review only the unchanged exact head 8fe6b6d99c009527ef0bcba419e6f6debdb23c23 against develop@314ddeae7b775a4957594b599358c8255617eb2e. The live diff is one formatter-only file, services/analysis-engine/tests/test_supply_chain_policy.py; chart/Product deltas belong to other owners. Treat predecessor reviews as stale. Please surface any actionable semantic/supply-chain regression on this exact head; do not infer that the central CodeQL control-plane failure is a BandScope source defect.

@coderabbitai

coderabbitai Bot commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

Tip

For best results, initiate chat on the files or code changes.

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

head="8fe6b6d99c009527ef0bcba419e6f6debdb23c23"
base="314ddeae7b775a4957594b599358c8255617eb2e"
test_path="services/analysis-engine/tests/test_supply_chain_policy.py"

printf '%s\n' '== Commit identity and ancestry =='
printf 'checked-out HEAD: '; git rev-parse HEAD
printf 'requested object type: '; git cat-file -t "$head"
printf 'HEAD matches requested: '
test "$(git rev-parse HEAD)" = "$head" && echo yes || echo no
printf 'base is an ancestor of requested head: '
git merge-base --is-ancestor "$base" "$head" && echo yes || echo no

printf '%s\n' '== Effective changed paths: base -> head =='
git diff --name-status "$base" "$head"
printf '%s\n' '== Paths outside permitted test file =='
git diff --name-only "$base" "$head" | awk -v permitted="$test_path" '$0 != permitted { print }'

printf '%s\n' '== Focused diff =='
git diff --no-ext-diff --unified=80 "$base" "$head" -- "$test_path"
printf '%s\n' '== Focused word diff =='
git diff --no-ext-diff --word-diff=porcelain "$base" "$head" -- "$test_path"
printf '%s\n' '== Whitespace validation =='
git diff --check "$base" "$head"

printf '%s\n' '== Protected path identity =='
for path in \
  .jules/bolt.md \
  exports/chart.py \
  services/analysis-engine/src/bandscope_analysis/exports/chart.py; do
  printf '%s: ' "$path"
  if git cat-file -e "${base}:${path}" 2>/dev/null && git cat-file -e "${head}:${path}" 2>/dev/null; then
    git diff --quiet "$base" "$head" -- "$path" && echo identical || echo DIFFERENT
  else
    echo missing-in-base-or-head
  fi
done

printf '%s\n' '== Workflow, policy, and dependency changes =='
git diff --name-status "$base" "$head" -- \
  '.github' '.github/**' '.jules' '.jules/**' \
  'pyproject.toml' 'ruff.toml' '.ruff.toml' \
  'package.json' 'package-lock.json' 'poetry.lock' 'uv.lock' \
  'requirements*.txt' 'Pipfile' 'Pipfile.lock' \
  'Dockerfile' 'docker-compose*.yml' 'Makefile' || true

printf '%s\n' '== Test file structure =='
ast-grep outline "$test_path" --items all

Length of output: 23095


@seonghobae No actionable findings for exact head 8fe6b6d99c009527ef0bcba419e6f6debdb23c23.

  • HEAD matches the requested commit.
  • develop@314ddeae7b775a4957594b599358c8255617eb2e is an ancestor of this head.
  • Only services/analysis-engine/tests/test_supply_chain_policy.py differs from the protected base.
  • The edit only removes Ruff formatter line breaks from one assert.
  • The assertion condition, alternatives, and workflow_name failure message are unchanged.
  • No chart-export path changed.
  • .jules/bolt.md and services/analysis-engine/src/bandscope_analysis/exports/chart.py are byte-identical to the protected base.
  • No workflow, policy, dependency, or other repository-control path changed.
  • git diff --check reported no whitespace errors.

I found no source-level supply-chain or product regression. I did not treat the CodeQL control-plane failure as a BandScope source finding.

You are interacting with an AI system.

Copy link
Copy Markdown
Collaborator Author

@coderabbitai approve

Please approve only if the unchanged exact head 8fe6b6d99c009527ef0bcba419e6f6debdb23c23 is covered and no actionable finding remains. The one-file delta is formatter-only; do not transfer approval from predecessor a7b0030a... if your current-head policy cannot authenticate this descendant.

@coderabbitai

coderabbitai Bot commented Sep 10, 2026

Copy link
Copy Markdown
Contributor
🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

head="8fe6b6d99c009527ef0bcba419e6f6debdb23c23"
base="314ddeae7b775a4957594b599358c8255617eb2e"
test_path="services/analysis-engine/tests/test_supply_chain_policy.py"

printf '%s\n' '== Exact head =='
printf 'checked-out HEAD: '; git rev-parse HEAD
printf 'requested object: '; git cat-file -t "$head"
printf 'HEAD matches requested: '
test "$(git rev-parse HEAD)" = "$head" && echo yes || echo no
printf 'base ancestor of head: '
git merge-base --is-ancestor "$base" "$head" && echo yes || echo no

printf '%s\n' '== Effective changed paths =='
git diff --name-status "$base" "$head"
printf '%s\n' '== Paths outside allowed file =='
git diff --name-only "$base" "$head" | awk -v path="$test_path" '$0 != path { print }'

printf '%s\n' '== Exact test diff =='
git diff --no-ext-diff --unified=40 "$base" "$head" -- "$test_path"
printf '%s\n' '== Word diff =='
git diff --no-ext-diff --word-diff=porcelain "$base" "$head" -- "$test_path"
printf '%s\n' '== Whitespace validation =='
git diff --check "$base" "$head"

printf '%s\n' '== Protected path identity =='
for path in \
  .jules/bolt.md \
  exports/chart.py \
  services/analysis-engine/src/bandscope_analysis/exports/chart.py; do
  printf '%s: ' "$path"
  if git cat-file -e "${base}:${path}" 2>/dev/null && git cat-file -e "${head}:${path}" 2>/dev/null; then
    git diff --quiet "$base" "$head" -- "$path" && echo identical || echo DIFFERENT
  else
    echo absent-in-base-or-head
  fi
done

printf '%s\n' '== Control, workflow, policy, and dependency changes =='
git diff --name-status "$base" "$head" -- \
  '.github' '.github/**' '.jules' '.jules/**' \
  'pyproject.toml' 'ruff.toml' '.ruff.toml' \
  'package.json' 'package-lock.json' 'poetry.lock' 'uv.lock' \
  'requirements*.txt' 'Pipfile' 'Pipfile.lock' \
  'Dockerfile' 'docker-compose*.yml' 'Makefile' || true

printf '%s\n' '== Test file structure =='
ast-grep outline "$test_path" --items all

Length of output: 20007


@seonghobae Approved for exact head 8fe6b6d99c009527ef0bcba419e6f6debdb23c23.

I independently verified this exact head against develop@314ddeae7b775a4957594b599358c8255617eb2e.

  • Only services/analysis-engine/tests/test_supply_chain_policy.py changed.
  • The change only applies Ruff line formatting to one assert.
  • The assertion condition and workflow_name message are unchanged.
  • No chart-export, workflow, policy, dependency, or repository-control path changed.
  • Protected paths are identical to the base.
  • git diff --check reports no whitespace errors.

No actionable finding remains. This approval is based on the exact current head, not on predecessor approval.

✅ Action performed

Comments resolved. Approval is disabled; enable reviews.request_changes_workflow to allow explicit top-level @coderabbitai resolve or @coderabbitai approve commands.

Copy link
Copy Markdown
Collaborator Author

Fresh central-prerequisite correction for this BandScope lane: .github#2040@6706c231ab06a3c91c43fdb5b989cfcd79fff593 is no longer merely waiting on a scan. Its required CodeQL run 34251822255 is terminal failure, while protected dispatch run 34253707082 already produced clean Actions/Python SARIF evidence and published successful codeql-dispatch/* statuses. The remaining central defect is evidence settlement/wake compatibility: the pre-cutover protected dispatcher does not emit the newer producer-source-qualified identity expected by the repaired consumer, and the Python worker's exact-job wake was also rejected because the containing required run was already running. Exact RCA has been handed to canonical .github#2040 owner.

Therefore #1176 stays Draft. Its one-file Ruff delta is not the cause, and BandScope must not add local CodeQL/status bypasses or weaken required checks. Resume merge evaluation only after the central owner publishes terminal exact-head CodeQL evidence consumable by the protected required workflow.

@google-labs-jules

Copy link
Copy Markdown

Fresh central-prerequisite correction for this BandScope lane: .github#2040@6706c231ab06a3c91c43fdb5b989cfcd79fff593 is no longer merely waiting on a scan. Its required CodeQL run 34251822255 is terminal failure, while protected dispatch run 34253707082 already produced clean Actions/Python SARIF evidence and published successful codeql-dispatch/* statuses. The remaining central defect is evidence settlement/wake compatibility: the pre-cutover protected dispatcher does not emit the newer producer-source-qualified identity expected by the repaired consumer, and the Python worker's exact-job wake was also rejected because the containing required run was already running. Exact RCA has been handed to canonical .github#2040 owner.

Therefore #1176 stays Draft. Its one-file Ruff delta is not the cause, and BandScope must not add local CodeQL/status bypasses or weaken required checks. Resume merge evaluation only after the central owner publishes terminal exact-head CodeQL evidence consumable by the protected required workflow.

Acknowledged. I understand this PR will remain in Draft state, and the CodeQL issue is being handled centrally in .github#2040. I will wait until the central owner publishes terminal exact-head CodeQL evidence.

Copy link
Copy Markdown
Collaborator Author

@opencode-agent Fresh independent review request for exact head 8fe6b6d99c009527ef0bcba419e6f6debdb23c23 against protected develop@314ddeae7b775a4957594b599358c8255617eb2e.

Read-only review only: do not commit, push, restack, create a successor PR, weaken gates, or manufacture a new event/head. Verify that the sole live delta in services/analysis-engine/tests/test_supply_chain_policy.py is repository-pinned Ruff formatting only, preserves assertion semantics, introduces no supply-chain/security behavior change, and correctly serves as the canonical formatter prerequisite for the now-stacked #1116/#968 lanes. Re-read the exact current diff and current protected contract; do not transfer predecessor reviews.

If clean, submit a formal GitHub review with APPROVED on this exact head. If not clean, submit concrete CHANGES_REQUESTED with file/line/root-cause evidence. A prose comment or check success is not a qualifying approval.

Copy link
Copy Markdown
Collaborator Author

New downstream RED acceptance evidence (2026-09-12): zero-diff #1212 at exact 64be1d0daad6a12c5ae97fac5182fa1b01171182 reproduced the same protected-develop formatter defect in ci / build-and-test job 103568183613: ruff format --check src tests reports only Would reformat: tests/test_supply_chain_policy.py, then exits 1.

This is independent confirmation that #1176 remains the canonical one-file causal owner. #1212 has no live diff and will not copy the formatter change. Existing #1176 exact-head checks/reviews are not promoted or refreshed by this evidence; normal current-head merge gates remain in force.

@google-labs-jules

Copy link
Copy Markdown

New downstream RED acceptance evidence (2026-09-12): zero-diff #1212 at exact 64be1d0daad6a12c5ae97fac5182fa1b01171182 reproduced the same protected-develop formatter defect in ci / build-and-test job 103568183613: ruff format --check src tests reports only Would reformat: tests/test_supply_chain_policy.py, then exits 1.

This is independent confirmation that #1176 remains the canonical one-file causal owner. #1212 has no live diff and will not copy the formatter change. Existing #1176 exact-head checks/reviews are not promoted or refreshed by this evidence; normal current-head merge gates remain in force.

Acknowledged. I confirm this PR (#1176) continues to be the canonical owner of the test_supply_chain_policy.py formatting repair, and it's understood that #1212 independently reproduced the issue and will not copy the fix.

@seonghobae seonghobae removed the status: draft Draft pull request label Sep 12, 2026

Copy link
Copy Markdown
Collaborator Author

@opencode-agent review

현재 Ready exact head 8fe6b6d99c009527ef0bcba419e6f6debdb23c23만 대상으로 독립 read-only review를 수행해 주세요. 이 PR의 live delta는 services/analysis-engine/tests/test_supply_chain_policy.py 한 파일의 Ruff formatter-only 변경입니다. predecessor head의 review/check는 승계하지 말고, 현재 head에 대해 actionable source finding이 없으면 formal APPROVED, 있으면 구체적 CHANGES_REQUESTED를 남겨 주세요. Source 수정, no-op commit, gate 완화, self-approval은 요청하지 않습니다.

Copy link
Copy Markdown
Collaborator Author

@opencode-agent review

Review only exact head 8fe6b6d99c009527ef0bcba419e6f6debdb23c23. This is a one-file Ruff-formatting repair with no assertion-semantic change. Submit a formal APPROVED if no source-backed finding remains, or CHANGES_REQUESTED with exact evidence. Do not inherit predecessor-head review evidence or convert the separate central CodeQL compatibility failure into a BandScope source finding.

Copy link
Copy Markdown
Collaborator Author

@coderabbitai approve

Please evaluate the unchanged exact head 8fe6b6d99c009527ef0bcba419e6f6debdb23c23 only. The live diff is the single Ruff-formatting repair in services/analysis-engine/tests/test_supply_chain_policy.py; do not transfer findings or approval from predecessor heads. If approval is not warranted, leave a concrete current-head finding instead.

@coderabbitai

coderabbitai Bot commented Sep 13, 2026

Copy link
Copy Markdown
Contributor
🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

head="8fe6b6d99c009527ef0bcba419e6f6debdb23c23"
base="314ddeae7b775a4957594b599358c8255617eb2e"
test_path="services/analysis-engine/tests/test_supply_chain_policy.py"

printf '%s\n' '== Commit identity and ancestry =='
printf 'checked-out HEAD: '; git rev-parse HEAD
printf 'requested object: '; git cat-file -t "$head"
printf 'HEAD matches requested: '
test "$(git rev-parse HEAD)" = "$head" && echo yes || echo no
printf 'base is ancestor of requested head: '
git merge-base --is-ancestor "$base" "$head" && echo yes || echo no

printf '%s\n' '== Effective changed paths =='
git diff --name-status "$base" "$head"
printf '%s\n' '== Paths outside permitted test path =='
git diff --name-only "$base" "$head" | awk -v permitted="$test_path" '$0 != permitted { print }'

printf '%s\n' '== Focused diff =='
git diff --no-ext-diff --unified=60 "$base" "$head" -- "$test_path"
printf '%s\n' '== Word diff =='
git diff --no-ext-diff --word-diff=porcelain "$base" "$head" -- "$test_path"
printf '%s\n' '== Whitespace validation =='
git diff --check "$base" "$head"

printf '%s\n' '== Protected path identity =='
for path in \
  .jules/bolt.md \
  exports/chart.py \
  services/analysis-engine/src/bandscope_analysis/exports/chart.py; do
  printf '%s: ' "$path"
  if git cat-file -e "${base}:${path}" 2>/dev/null && git cat-file -e "${head}:${path}" 2>/dev/null; then
    git diff --quiet "$base" "$head" -- "$path" && echo identical || echo DIFFERENT
  else
    echo absent-in-base-or-head
  fi
done

printf '%s\n' '== Workflow, policy, and dependency changes =='
git diff --name-status "$base" "$head" -- \
  '.github' '.github/**' '.jules' '.jules/**' \
  'pyproject.toml' 'ruff.toml' '.ruff.toml' \
  'package.json' 'package-lock.json' 'poetry.lock' 'uv.lock' \
  'requirements*.txt' 'Pipfile' 'Pipfile.lock' \
  'Dockerfile' 'docker-compose*.yml' 'Makefile' || true

printf '%s\n' '== Relevant test structure =='
ast-grep outline "$test_path" --items all

Length of output: 21438


@seonghobae Approved for exact head 8fe6b6d99c009527ef0bcba419e6f6debdb23c23.

I verified the exact current head against develop@314ddeae7b775a4957594b599358c8255617eb2e.

  • Only services/analysis-engine/tests/test_supply_chain_policy.py changed.
  • The changed assert preserves its condition and workflow_name failure message.
  • The change only applies Ruff line formatting.
  • No chart-export, workflow, policy, dependency, or repository-control path changed.
  • .jules/bolt.md and services/analysis-engine/src/bandscope_analysis/exports/chart.py are byte-identical to the protected base.
  • git diff --check reported no whitespace errors.

No actionable current-head finding remains. This approval does not use predecessor-head evidence.

✅ Action performed

Comments resolved. Approval is disabled; enable reviews.request_changes_workflow to allow explicit top-level @coderabbitai resolve or @coderabbitai approve commands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working priority: medium Normal-priority or P2 work type: bug Defect or incorrect behavior

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant