[chore] Remove the pi_agenta harness experiment - #6367
Conversation
pi_agenta (Pi plus a forced Agenta overlay: an AGENTS.md preamble, a persona append-system, force-unioned platform skills) was an experiment we never shipped to users. Remove it from the harness enum, the SDK adapter and its overlay constants, the capability and catalog tables, the runner's advertised harness list and subscription probes, the UI harness metadata, the platform skill bodies that taught it, and the reference docs. Compatibility, deliberately kept: revisions saved while the value existed may still carry it, so every read boundary maps 'pi_agenta' to 'pi_core' instead of refusing the config — HarnessKind.coerce in the SDK, buildRunPlan / isPiHarness / harnessKind in the runner, and the web picker filter. The runner replay fixtures that carry the old spelling still pass unchanged, which pins the alias. Not touched here: the generated Fern client's HarnessKind union (web/packages/agenta-api-client) regenerates from the API schema on its own codegen step; the stale extra member is types-only and harmless until then. Claude-Session: https://claude.ai/code/session_014s6jqKCsVKsNMmnrJVJkZt
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
📘 Docs preview
Pages changed in this pull request This comment updates in place on every push. |
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. 🗂️ Base branches to auto review (1)
Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository YAML (base), Organization UI (inherited) Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Context
pi_agentawas an experiment: Pi plus a forced Agenta overlay (a fixed AGENTS.md preamble, a persona append-system, force-unioned platform skills). We never shipped it to users; the picker already hid it. It kept costing attention anyway: every harness table, capability map, test matrix, and doc had to carry a fourth value, and the lifecycle-router bug fixed underneath this PR (#6364) shows the kind of drift a half-dead enum value invites.Changes
The value is removed everywhere it was declared or taught: the SDK harness enum and adapter, the overlay constants (
AGENTA_PREAMBLE, the persona, the forced-skills union), the capability and model-catalog tables, the runner's advertised harness list and subscription probes, the UI harness metadata and stories, the platform skill bodies that listed it as a validharness.kind, and the reference docs.One thing is deliberately kept: reading the old value stays legal. Revisions saved while the experiment existed may carry
"pi_agenta", so every read boundary maps it topi_coreinstead of refusing the config:Before:
HarnessKind.coerce("pi_agenta")-> the Agenta harness with the forced overlay.After:
HarnessKind.coerce("pi_agenta")-> plainpi_core. Same in the runner (buildRunPlan,isPiHarness,harnessKind) and the web picker filter.The runner replay fixtures that carry the old spelling pass unchanged, which pins the alias.
Not in this PR: the generated Fern client (
web/packages/agenta-api-client) still lists the value in itsHarnessKindunion. It regenerates from the API schema on the normal codegen step; the stale member is types-only until then.Tests
oss/tests/pytest/unitfully green (2486 passed). Agenta-harness-only tests removed; the coerce alias andmake_harness("pi_agenta") -> PiHarnessare pinned.pi_agenta-parametrized select-backend case, which now exercises the alias end to end.What to QA
Stacked on #6364 (the diff here shows only this change).
https://claude.ai/code/session_014s6jqKCsVKsNMmnrJVJkZt