fix(operations): restack runner API JSON byte integrity on current main - #312
fix(operations): restack runner API JSON byte integrity on current main#312seonghobae wants to merge 2 commits into
Conversation
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
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 |
|
Superseded by consolidated runner-assignment JSON-integrity successor #341. Closing this stale current-main predecessor so one authoritative writer remains; no prior CI, scanner, review, or coverage evidence is reused. |
Purpose
Restack only PR #287's runner-assignment API byte-integrity hardening onto the current protected-main lineage without transferring predecessor CI, review, scanner, coverage, model, release, deployment, or operational authority.
Exact construction
mainimmediately before construction and publication:1f4964fb3102cc1b0a9bcf19acae461904ecc672;44569526696e3bbf3e36eafa6d0bf7112832e9b8;24a322f2cc99414d3fcbb3e2bcb853d3b6a09dd3;scripts/actions-runner-assignment-audit.mjsandtest/actions-runner-assignment-cli.test.ts.Both target paths were absent from the 24-commit protected-main delta since #287's current merge base
933471b954512710bb9635f18f45fe8f323adcff; the successor therefore transplants the predecessor's exact current head blobs without overwriting intervening protected-main bytes.Fail-closed behavior retained
Successful
ghstdout remains bounded raw bytes until fatal UTF-8 decoding, then Noema's decoded-key integrity scanner runs beforeJSON.parse. Malformed UTF-8 and escape-equivalent duplicate object names fail closed before run/job identity and runner-assignment decisions. Existing shell-free subprocess execution, 2 MiB output bound, 20-second timeout, explicit GitHub API version, repository/path bounds, least-authority child environment, pagination, and report semantics remain unchanged.This hardens read-only runner-assignment evidence only. It does not prove that a runner is assigned, a required check passed, an independent review occurred, or a release/deployment happened.
Evidence boundary
Keep Draft until the unchanged exact head receives fresh terminal-success application
ci,reviewer-ci, and protected-base-eligible centralSecurity Scan, with exact 100% owned production statement/branch/function/line coverage using realistic tests and zero valid unresolved findings. Pending, queued, skipped, absent, neutral, failed, cancelled, stale, predecessor, status-only, model-only, or rate-limited evidence is non-passing.Immediately before Ready or merge, independently re-resolve protected main, exact head/base/ancestry, reviews/threads, checks/workflow checkout SHAs, live rulesets, exact central Security Scan revision/triggers/base filters/thresholds, releases, and active-writer state. No force update, gate weakening, repair/self-modifying workflow, secret/reviewer invention, release, deployment, outbound-license decision, or acquisition-ready claim is introduced.
Supersedes #287 only after fresh exact-head verification and protected integration. Related: #30.