Skip to content

spec(claw): sarif.t27 -- t27c findings as SARIF 2.1.0 for code scanning (row code-scanning-sarif) #10284

Closed as not planned

Description

@gHashTag

Boundary

Touches only specs/claw/sarif.t27 and specs/claw/sarif_pins.t27 (new files, .t27 only). Does not touch any workflow, gate file, seal or generated file. Row code-scanning-sarif of specs/claw/github_surface.t27 (PR #10280, epic #9271).

Scenarios

  • A PR changes a spec that no longer parses; t27c prints one finding. Today it is a line in a job log; as a SARIF result it shows in the Security tab and inline on the PR diff, and closes by itself when the next commit fixes it.
  • t27c reports nothing; the document is a valid SARIF 2.1.0 run with results: [], so GitHub closes every alert that was open.
  • A finding carries a severity word t27c never prints, or a path with ..; the line is dropped and counted, never guessed into a note on line 1.

Requirements

  • A spec that shapes findings (one TAB-separated line each: severity, rule slug, path, line, col, message) into a SARIF 2.1.0 document: four stable rule ids, severity mapping error/warning/info(note) to SARIF levels, plain repo-relative paths only, regions clamped to 1, JSON escaping, a result cap.
  • Fail closed: unknown severity, unknown rule, bad path or bad number drops the line and sets invocations[0].executionSuccessful to false; a clipped buffer is detectable.
  • Tests: severity mapping, unknown severity fails closed, empty input gives a valid empty run, escaping, cap, clipping.
  • Length-table pins in a companion test-only spec (the gates_pins.t27 split).

Criteria

  • t27c spec-status specs/claw/sarif.t27 prints IMPLEMENTED.
  • t27c test-report on both specs: 0 FAIL, 0 vacuous.
  • t27c gen-c lowers sarif.t27 (it must be consumable by a harness, like gates.t27).
  • The upload wiring (github/codeql-action/upload-sarif with the job's own GITHUB_TOKEN, security-events: write) is a separate step: workflow YAML is foreign code and needs a shrink offset.

Success Criteria

  • t27c spec-status specs/claw/sarif.t27 prints IMPLEMENTED and exits 0.
  • t27c test-report specs/claw/sarif.t27 specs/claw/sarif_pins.t27 reports 0 FAIL, 0 vacuous and exits 0.
  • t27c gen-c specs/claw/sarif.t27 lowers the spec successfully and exits 0.

Activity

  1. added
    shape-refusedClosed by the issue-shape gate (specs/policy/issue_shape.t27); a passing edit reopens it
    on Oct 18, 2026
  2. github-actions commented on Oct 18, 2026

    @github-actions
    Contributor

    Closed by the issue-shape gate (specs/policy/issue_shape.t27, #7498): an issue must have the template's sections. Edit the body; an edit that passes reopens it.

    • missing: ## Success Criteria -- an outcome a machine can settle: a number with a unit, a backticked file, exit 0, or a backticked command
  3. added a commit that references this issue on Oct 18, 2026
    3443418
  4. added 3 commits that reference this issue on Oct 18, 2026
    e177352
    c6984a8
    db5dddf
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    queen-shapedshape-refusedClosed by the issue-shape gate (specs/policy/issue_shape.t27); a passing edit reopens it

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions