Skip to content

test(skill): initialize attached Git branch in resource-inheritance fixture #3057

Description

@aider4ryder

Supersedes closed #2844

Summary

The exact Live partition deterministically fails skill_run_preserves_plan_parent_resource_snapshot_for_nested_child before executor launch because its temporary project has no attached Git branch.

Frozen evidence

Candidate 71bfd3bdc232da6ecaeec69a3eed43a4eaf01749 did not touch the owner test, branch guard, VCS probe, or executor injection seam. Canonical just pre-push failed:

skill_run_preserves_plan_parent_resource_snapshot_for_nested_child
csa run: refusing to run on protected branch (unknown)
detected default branch: (unknown)
reason: current branch is unknown or detached

Canonical summary: 4 tests run: 3 passed, 1 failed, 4006 skipped.

One exact focused command reproduced it on the same frozen tree:

just test-f skill_run_preserves_plan_parent_resource_snapshot_for_nested_child
1 test run: 0 passed, 1 failed, 7557 skipped

Source tracing shows the fixture creates HOME/project and fake tools but does not initialize a Git repository or attach a feature branch. The unchanged branch guard therefore refuses before skill resolution or fake-Codex launch. This differs from #2844's SIGPIPE/concurrency symptom.

Root-cause boundary

This is a test-fixture contract defect. A test invoking branch-protected csa run must create a hermetic local Git repository with an attached non-protected branch, using the repository's existing fixture pattern. Production branch protection must remain fail-closed for unknown/detached branches.

Acceptance criteria

  • The fixture initializes a hermetic local Git repository and attaches a non-protected branch before invoking csa skill run.
  • Reuse an existing local Git-fixture helper/pattern where available; do not weaken or bypass production branch protection.
  • skill_run_preserves_plan_parent_resource_snapshot_for_nested_child passes and actually selects one test.
  • Relevant sibling skill-resource tests pass.
  • The canonical exact-HEAD local gate can proceed without this branch-unknown failure.
  • No timeout inflation, retries, test serialization, or --allow-base-branch-working escape hatch is used.

Durable evidence

  • Canonical log: /home/obj/tmp/3054-host-prepush-71bfd3bd-r1.log (89a5c87615cb9ea90ae65dd00814cd86d52c390e1b1371a4699a4622c6b35608)
  • Classification report: /home/obj/tmp/3054-gate-failure-classification-71bfd3bd.md (dbd7539d0547a718140c6a27a401007ec81caafcf53c526f604becc63267934f)
  • Classification: PRE_EXISTING

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions