Skip to content

[finding] tests/trust-trail-base-identity.test.sh — Every executed b.5 row resolves an empty label set, so the l #801

Open

Description

@TheFJK

@TheFJK — /uberdev:premerge flagged a blocker finding on PR #793.

Origin: b91a1efddcf3a7d76231e72c66146acb27f308a2
Agent: premerge.review.code_review
File: tests/trust-trail-base-identity.test.sh:523
Severity: blocker (Phase premerge)
Disposition: DEFERRED (premerge-repair-budget-exhausted)
Tier: BLOCKER
Blocks: #793

Findings (1)

1. tests/trust-trail-base-identity.test.sh:523 — blocker / BLOCKER / DEFERRED (premerge-repair-budget-exhausted) — Every executed b.5 row resolves an empty label set, so the label/trailer agreement check, the premerge gate token and th

Lenses: premerge.review.code_review

_fence_row builds PR_JSON as {"baseRefName":...,"baseRefOid":...} with no labels key, so every executed b.5 row resolves LABEL_INSTRUMENTS to the empty string and therefore TRAILER_CONTRACT_REFUSAL=trust_trail_trailer_missing - including the rows named premerge-no-refusal and premerge-instrument-parsed, which assert only the unrelated BASE_IDENTITY_REFUSAL. The runner never prints TRAILER_CONTRACT_REFUSAL, PREMERGE_GATE_ATTEMPT or REVIEW_PR_DEFERRED_CRITICAL, and a grep over tests/ finds no reference to any of the three. Proven by mutation: changing TRAILER_CONTRACT_REFUSAL=trust_trail_trailer_missing to an empty assignment, turning the block's stated default-deny into default-allow, leaves merge.test.sh, trust-trail-base-identity.test.sh and trust-trail-evaluator.test.sh all green. The fix these rows are cited as proving has therefore never been executed against a populated label set.

To resolve: address the findings above in code and close this issue. Closing resolves exactly the findings listed in this body and the findings added by a later comment on it — one index records both, and closing resolves that recorded set and nothing else. A finding in this file that this issue never recorded is filed as a NEW issue rather than suppressed, so closing never mutes the file. Before closing, apply finding:true-positive if it was a real defect or finding:false-positive if it was not — that label is the eval ground truth (RFC 0018).

Activity

  1. self-assigned this
    on Aug 24, 2026
  2. added
    premerge-findingAuto-filed by /uberdev:premerge from deferred findings (RFC 0002)
    on Aug 24, 2026
  3. TheFJK commented on Aug 24, 2026

    @TheFJK
    CollaboratorAuthor

    Read with #800 — this issue is what makes that one hard to verify.

    The vacuous-fixture problem here is not confined to the rows it names. Because every executed b.5 row resolves an empty label set, the surrounding trust-trail suite passes without exercising the label/trailer agreement check, the premerge gate token, or the YELLOW classifier — and the reporter proved it by mutation: turning the block's stated default-deny into default-allow leaves merge.test.sh, trust-trail-base-identity.test.sh and trust-trail-evaluator.test.sh all green.

    #800 is the concrete cost. That release-anchor.sh blank-line defect re-breaks the premerge trail on exactly the CHANGELOG shape Phase 5a produces, and it reached this stack with the trust-trail suite green throughout.

    Treat this as the prerequisite of the pair: until these rows run against a populated label set, a green run over #800's fix is not evidence that the fix works.

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

Metadata

Metadata

Assignees

Labels

premerge-findingAuto-filed by /uberdev:premerge from deferred findings (RFC 0002)

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions