What happened
On issue #4, the triage agent's pre-script failed (run 33520084315) because reusable-dispatch.yml v0.36.0 did not inject ISSUE_URL and FULLSEND_TRACKER environment variables that agents@v0 pre-scripts required. The telemetry recorded only "status": {"code": 2, "message": "running pre-script: exit status 1"} — no indication that the root cause was a version mismatch between the dispatch workflow and the agents definition. The repo maintainer had to manually diagnose the issue by reading pre-script source and comparing env var expectations across versions, then create PR #5 to bump the pin.
What could go better
The failure was opaque. A pre-script exit code 1 could mean anything — a missing tool, a bad config, a network issue, or (as here) a version contract violation. The human had to reverse-engineer the root cause. This is a version-skew class of problem that will recur whenever fullsend ships a new agents version that depends on env vars or features introduced in a newer dispatch workflow. I'm fairly confident this is addressable because the dispatch workflow version and agents version are both known at runtime — the harness resolves both before invoking the pre-script. Partially related to #6013 (dispatch propagation gap), but #6013 focuses on the sync mechanism for per-org mode, not on runtime diagnostics when versions are mismatched.
Proposed change
Add a version-contract check early in the harness startup (before pre-script execution) that compares the running reusable-dispatch.yml version against a minimum-version field in the resolved agents definition (e.g., min_dispatch_version: 0.39.0 in harness/<agent>.yaml). When the dispatch version is below the minimum, fail with a clear message: agents@v0 requires dispatch v0.39.0+, but this repo uses v0.36.0. Update .github/workflows/fullsend.yaml — see https://github.com/fullsend-ai/fullsend/releases/tag/v0.39.0. This check should run in the harness layer before any pre-scripts execute.
Validation criteria
Recreate the version-skew scenario (pin a test repo to an old dispatch version with newer agents) and confirm the error message names both versions and links to the required update. The pre-script should not run at all — the contract check should fail first with an actionable diagnostic.
Generated by retro agent from rhdh-parasol/rhdh-operator#5
What happened
On issue #4, the triage agent's pre-script failed (run 33520084315) because
reusable-dispatch.ymlv0.36.0 did not injectISSUE_URLandFULLSEND_TRACKERenvironment variables thatagents@v0pre-scripts required. The telemetry recorded only"status": {"code": 2, "message": "running pre-script: exit status 1"}— no indication that the root cause was a version mismatch between the dispatch workflow and the agents definition. The repo maintainer had to manually diagnose the issue by reading pre-script source and comparing env var expectations across versions, then create PR #5 to bump the pin.What could go better
The failure was opaque. A pre-script exit code 1 could mean anything — a missing tool, a bad config, a network issue, or (as here) a version contract violation. The human had to reverse-engineer the root cause. This is a version-skew class of problem that will recur whenever fullsend ships a new agents version that depends on env vars or features introduced in a newer dispatch workflow. I'm fairly confident this is addressable because the dispatch workflow version and agents version are both known at runtime — the harness resolves both before invoking the pre-script. Partially related to #6013 (dispatch propagation gap), but #6013 focuses on the sync mechanism for per-org mode, not on runtime diagnostics when versions are mismatched.
Proposed change
Add a version-contract check early in the harness startup (before pre-script execution) that compares the running
reusable-dispatch.ymlversion against a minimum-version field in the resolved agents definition (e.g.,min_dispatch_version: 0.39.0inharness/<agent>.yaml). When the dispatch version is below the minimum, fail with a clear message:agents@v0 requires dispatch v0.39.0+, but this repo uses v0.36.0. Update .github/workflows/fullsend.yaml — see https://github.com/fullsend-ai/fullsend/releases/tag/v0.39.0. This check should run in the harness layer before any pre-scripts execute.Validation criteria
Recreate the version-skew scenario (pin a test repo to an old dispatch version with newer agents) and confirm the error message names both versions and links to the required update. The pre-script should not run at all — the contract check should fail first with an actionable diagnostic.
Generated by retro agent from rhdh-parasol/rhdh-operator#5