Skip to content

Keep Polymarket uploader stdout machine-readable #392

Description

@proerror77

Change contract

Prevent child ossutil progress/success text from contaminating the Rust polymarket-raw-ops upload JSON stdout contract, while preserving all existing fail-closed upload and readback verification.

Failure evidence

Formal Gate t-jpn6s489bspalfk completed the 3600s observation plus 601s mature tail, then failed at jq with Invalid numeric literal. The same run's upload-status.json records uploaded_segments=1, canonical_uploaded_segments=1, failed_segments=[], and the exact OSS triplet exists. A direct ECS probe confirms aliyun ossutil cp writes a human success summary to stdout even with --quiet or --no-progress.

Acceptance evidence

  • A focused red-capable test proves child stdout is suppressed by the shared OSS command runner.
  • The focused test fails before and passes after the fix.
  • Existing Polymarket upload tests, collector test target, fmt, and clippy pass.
  • Review confirms stderr/error propagation and bounded fail-closed readback remain unchanged.

Out of scope

Rollout / rollback

Merge independently, build a new exact-main candidate, then run a new 3600+601 second Shadow Gate. Rollback is reverting this single Rust change; production remains on Python until Gate success.

Activity

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

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions