Skip to content

[BUG] Linux x64 release qualification: cold Git audit failure and exhausted integration budget #3361

Open

Description

Reporting and investigating a bug need no permission. Before implementing a
substantive fix for inclusion in APM, obtain human scope approval and a review
contact on this issue. Trivial documentation corrections have standing
preapproval. See Contributing.

For vulnerabilities, use SECURITY.md
instead of a public issue. Remove credentials and other sensitive data from logs.

Describe the bug
Trusted release qualification run 39819494530, exact main 5a9be32972c8600745fc0d4933357fd4a2a9e61c, failed its Linux x64 integration job on two distinct observations: one cold Git audit lifecycle case failed, and the complete non-live suite exhausted its explicit 60-minute step budget at 78%. The timeout is not an explanation for the earlier failed assertion.

To Reproduce

  1. Build the exact main's installed CLI on Linux x64.
  2. Run uv run --extra dev pytest -vv --tb=long 'tests/integration/test_audit_workspace_identity_lifecycle.py::test_fresh_clone_audit_preserves_identity_across_cold_repeated_and_warm_runs[git]' with APM_BINARY_PATH selecting that binary. The scenario owns isolated HOME/config/cache and local Git repositories.
  3. Compare with the trusted full run using not live, -n 4 --dist loadgroup. The original job timed out before emitting the assertion traceback; focused Linux reproduction is required. A local macOS installed-Python-CLI run of all six audit cases passed and does not diagnose the Linux failure.

Expected behavior
The cold/repeated/warm Git audit passes its existing identity, drift, and read-only assertions. The full Linux x64 non-live corpus has a bounded measured budget sufficient to finish, with unchanged coverage and release failure gates.

Environment (please complete the following information):

  • OS: Ubuntu 24.04 x86_64 hosted runner
  • Python Version: 3.12.15
  • APM Version: 0.35.0 (5a9be32972c8600745fc0d4933357fd4a2a9e61c)
  • VSCode Version (if relevant): N/A

Logs
Linux x64 job 119973918198:

  • 17:46:18.921651Z [gw1] [15%] FAILED tests/integration/test_audit_workspace_identity_lifecycle.py::test_fresh_clone_audit_preserves_identity_across_cold_repeated_and_warm_runs[git]
  • Integration step ran approximately 17:20:23Z through 18:20:35Z, ending on the explicit 60-minute timeout at 78%; other workers were still making progress.
  • Linear extrapolation is approximately 77 minutes before setup/tail headroom. A 120-minute Linux x64 budget is proposed, not evidence of passing tests.

Additional context
Bounded scope: diagnose this exact installed-CLI failure without weakening or skipping assertions; retain useful failure diagnostics; make only an evidence-supported fix; raise Linux x64 integration to 120 minutes while preserving Linux ARM 60, Windows 20, macOS ARM 120, all marker/worker/HOME grouping, trust boundaries and release dependencies. A narrowly focused witness in the existing unprivileged PR binary job is permitted. No secret-bearing PR triggers, sharding redesign, ruleset changes, version/release-note changes, merge, tag, dispatch or publication in the recovery worker.

Done when: focused Linux installed-CLI evidence explains and proves resolution of the audit failure, timeout regression contracts pass, canonical lint passes, and the scoped recovery PR is handed to the release owner. Hosted full release qualification remains the release owner's responsibility; passing macOS evidence alone does not resolve this issue.

Review contact: Daniel Meppiel (@danielmeppiel) (release owner).

Authorization provenance: the coordinating release session relayed the user's instruction, "ok so merge it and proceed until release happens, fixing anything that needs fixing on the way and bypass merging the fixes (CI)", and explicitly delegated this bounded recovery. This issue is an agent-authored record of that conversation, not a human-authored GitHub scope-approval comment; no approval comment is fabricated or implied. The parent retains merge/dispatch/tag/publication authority. Existing fixes #3353 and #3360 must be preserved.

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

    No labels
    No labels

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions