fix: register Jira harnesses via base composition, not deprecated overlay - #338
Conversation
…rlay The .fullsend/customized/ overlay mechanism is deprecated (ADR-0064) and its directories contain only .gitkeep placeholders, so harness files dropped there are copied nowhere and ignored — the poller kept loading the upstream triage/code harnesses, which have no trigger: field, yielding 0 dispatches. Switch to base composition + explicit registration: - .fullsend/harness/triage.yaml and code.yaml inherit from the pinned upstream harnesses (checksum-verified) and add the Jira CEL triggers. - Register both under an agents: key in config.yaml. The agent name must be code (role coder maps to agent code; name: coder would silently no-op). - Remove the ignored .fullsend/customized/harness/ files. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository YAML (base), Central YAML (inherited) Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (3)
Included review availability: Your plan provides up to 12 included reviews per hour; 11 remain after this review. WalkthroughThe Fullsend configuration now registers ChangesFullsend agent configuration
Estimated code review effort: 1 (Trivial) | ~2 minutes Merge Risk: ⚪ Minimal · up to This localized configuration change is merge-ready after normal checks and review; no actionable merge-blocking risk remains. 🚥 Pre-merge checks | ✅ 15✅ Passed checks (15 passed)
Full details: Docstring CoverageExplanation No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0 files. (3 skipped: 3 unsupported.) Full details: Stable And Deterministic Test NamesExplanation PASS: The pull request changes only Full details: Test Structure And QualityExplanation PASS: The pull request changes only Full details: Microshift Test CompatibilityExplanation PASS — The pull request changes only Full details: Single Node Openshift (Sno) Test CompatibilityExplanation The pull request changes only Full details: Topology-Aware Scheduling CompatibilityExplanation PASS: The pull request changes only Fullsend YAML configuration and harness trigger files. The commit diff adds agent registration, remote base URLs, and Jira CEL triggers, and removes deprecated overlay files. It does not add or modify deployment manifests, operator code, controllers, replicas, affinity, topology spread, node selectors, tolerations, or PDBs. The topology-aware scheduling check is therefore not applicable. Full details: Ote Binary Stdout ContractExplanation PASS: The pull request changes only Full details: Ipv6 And Disconnected Network Test CompatibilityExplanation PASS: The pull request changes only three YAML configuration/harness files. The exact diff adds agent registration, harness Full details: No-Weak-CryptoExplanation PASS: The pull request changes only Fullsend YAML registration, harness triggers, and pinned Full details: Container-PrivilegesExplanation PASS. The PR changes only Full details: No-Sensitive-Data-In-LogsExplanation PASS: The PR changes only Fullsend YAML configuration. It adds two agent registrations, two pinned upstream ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
🤖 Finished Review · ✅ Success · Started 6:10 AM UTC · Completed 6:21 AM UTC Commit: Runtime: claude · Model: opus → claude-opus-4-6 · Effort: high · Cost: $2.66 |
|
Looks good to me |
|
@samanthajayasinghe: all tests passed! Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
|
/lgtm |
|
/approve |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: krishvoor, samanthajayasinghe The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
🤖 Finished Retro · ✅ Success · Started 6:38 AM UTC · Completed 6:55 AM UTC Commit: Runtime: claude · Model: opus → claude-opus-4-6 · Effort: high · Cost: $6.30 |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #338 +/- ##
=======================================
Coverage 65.39% 65.39%
=======================================
Files 23 23
Lines 1598 1598
=======================================
Hits 1045 1045
Misses 473 473
Partials 80 80 🚀 New features to boost your workflow:
|
Retro: PR #338 — fix Jira harness placement (follow-up to #337)TimelinePR #337 (04:17–04:36 UTC, 18 min to merge) added Jira CEL triggers for fullsend poll dispatch. The code agent (Claude Code + human operator) placed the harness files under The review agent (Opus, high effort, $2.35) approved #337 with one low-severity finding — a speculative naming mismatch between the file The retro on #337 ($2.97) correctly identified the review finding as a false positive but incorrectly concluded that "the review agent's coverage was complete for this class of change" and noted "zero rework." It did not detect that the PR was non-functional. PR #338 (06:08–06:37 UTC, ~1.5 hours after #337 merged) fixed the issue by moving harness files from Root causeThe code generator (Claude Code) lacked knowledge of ADR-0064 — the deprecation of the CostTotal agent cost for the two-PR rework cycle: ~$8+ ($2.35 review + $2.97 retro on #337, $2.66 review + retro on #338). A single correct PR would have halved this. Evidence for existing issues
Autonomy readinessFor both PRs, the human reviewer posted Sub-agent model failuresDuring the #338 review, 2 of 5 sub-agents (intent-coherence, style-conventions) failed due to model unavailability and had to be retried without model override, adding ~2 minutes. This is a transient infrastructure issue but worth noting for patterns. Proposals filed
|
Summary
Follow-up to #337. The harnesses added there landed under
.fullsend/customized/harness/, but that overlay mechanism is deprecated (ADR-0064) — thecustomized/directories contain only.gitkeepplaceholders and the overlay loop copies zero files. As a result those harness files were silently ignored and the poller kept loading the upstreamtriage/codeharnesses (which have notrigger:field), so the Jira poll still produced 0 dispatches.Fix — base composition + explicit registration
.fullsend/harness/triage.yamland.fullsend/harness/code.yamlnow inherit from the pinned, checksum-verified upstream harnesses via abase:URL and add the Jira CEL triggers on top. (allowed_remote_resourcesalready permits thefullsend-ai/agentsprefix.)agents:key in.fullsend/config.yaml..fullsend/customized/harness/*.yamlfiles.Note on naming
The agent name is
code, notcoder— the rolecodermaps to agentcode, andname: coderwould silently no-op.The
#2264caveat from #337 still applies: built-in agents can't yet fully process Jira work-item payloads (they expect a GitHub issue number, not a Jira key), so dispatched runs may not complete end-to-end until that follow-up lands.🤖 Generated with Claude Code
Summary by CodeRabbit