refactor(config): remove legacy agent discovery fallbacks (ADR-0045 Phase 4 PR 3) - #2448
Conversation
…hase 4 PR 3) Remove the config.yaml agents: block fallback from agent slug discovery. Harness wrapper files are now the sole source of agent identity. The legacy loadKnownSlugsLegacy function, the config.yaml tier in discoverAgentSlugs, and all associated deprecation warnings are deleted. Callers (runUninstall, runGitHubUninstall) no longer parse config.yaml to pass to discoverAgentSlugs — they fall back to DefaultAgentRoles() convention when harness discovery returns empty. Signed-off-by: Greg Allen <gallen@redhat.com> Signed-off-by: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Greg Allen <gallen@redhat.com>
PR Summary by QodoRemove legacy config.yaml agent-discovery fallbacks; rely on harness wrappers only Description
Diagram
High-Level Assessment
Files changed (6)
|
Site previewPreview: https://7ddae3e1-site.fullsend-ai.workers.dev Commit: |
|
🤖 Finished Review · ✅ Success · Started 9:47 PM UTC · Completed 10:00 PM UTC |
Code Review by Qodo
Context used✅ Tickets:
🎫 Shared Feature Toggle Strategy for HCC✅ Compliance rules (platform):
51 rules✅ Skills:
writing-user-docs, writing-adrs 1. Uninstall proceeds on discovery error
|
Codecov Report❌ Patch coverage is
📢 Thoughts on this report? Let us know! |
ReviewFindingsLow
Labels: PR removes legacy config.yaml agent discovery fallbacks from CLI install/uninstall commands as part of harness migration |
Pre-existing behavior, unchanged by this PR. The old code also warned on discovery errors and fell through to defaults. The config.yaml fallback used the same forge client (
Also pre-existing and already addressed by the migration plan. The |
waynesun09
left a comment
There was a problem hiding this comment.
ADR-0045 Review Squad — 7 findings (medium+ severity). Reviewed for correctness, security, and ADR alignment.
|
🤖 Finished Retro · ✅ Success · Started 3:43 PM UTC · Completed 3:52 PM UTC |
Retro: PR #2448 — Remove legacy agent discovery fallbacksTimeline
Review quality gapThe fullsend review agent approved with 1 low finding while human and bot reviewers later identified 7+ medium-severity issues. From the JSONL trace, the correctness sub-agent traced the The challenger pass then further filtered sub-agent findings, correctly catching false positives from stale base-branch reads but also discarding directionally-correct concerns about error handling. Existing issues cover the gapsThe specific improvements needed are already tracked:
AssessmentThe workflow outcome was acceptable — human reviewers caught the gaps and findings were tracked. The author's pushback was well-reasoned (the behavior is pre-existing, not introduced by this PR). However, the review agent's APPROVE verdict with only 1 low finding understated the risk surface of removing a fallback tier. No new proposals are needed since the existing issues, if implemented, would address the root causes. |
…ase4-pr3 refactor(config): remove legacy agent discovery fallbacks (ADR-0045 Phase 4 PR 3)
Summary
loadKnownSlugsLegacyand the config.yamlagents:block fallback tier fromloadKnownSlugs— harness wrapper files are now the sole discovery pathcfg *config.OrgConfigparameter and tier-2 fallback fromdiscoverAgentSlugsrunUninstallandrunGitHubUninstallcallers to stop parsing config.yaml fordiscoverAgentSlugsADR:
docs/ADRs/0045-forge-portable-harness-schema.mdPlan:
docs/plans/adr-0045-forge-portable-harness-phase4.md— PR 3Test plan
make go-test— all tests passmake lint— cleango vet ./...— cleanloadKnownSlugsreturns slugs from harness filesloadKnownSlugsreturns nil when no harness files exist (no legacy fallback)discoverAgentSlugsreturns nil when no harness files existrunUninstallfalls back toDefaultAgentRoles()when harness discovery is emptyrunGitHubUninstallfalls back toDefaultAgentRoles()when harness discovery is emptygrep -rn 'loadKnownSlugsLegacy' --include='*.go'returns no results🤖 Generated with Claude Code