0.51.0
Changed
-
The crates moved under area directories.
crates/<area>/<crate>, where the area is one ofgovern,plan,drive,observe,profileandedge, instead of twenty-two directories flat undercrates/. The directory now states what a crate is for and what it may depend on (AGENTS.md§ Areas). No crate and no binary was renamed: every[package] nameis what it was,aepandprotocolremain the two names of the one command, and nothing a consumer pins by name changes. Only paths moved — the workspace member list, the[workspace.dependencies]paths, and the references that named a file by its old path. -
Three crates are named after the protocol.
adp-domainis nowaep-profile-development,aop-domainisaep-profile-operations, andprotocol-cli— which built theaepcommand under the retired command's name — isaep-cli. The two profile crates are vocabulary overaep/1, not sibling products, and their old three-letter names said otherwise. The binaries are unchanged:aepandprotocolare still the two names of the one command, built by the renamed crate, and still byte-equivalent (AGENTS.mdinvariant 10). The protocol ids are unchanged:adp/1,aop/1and the workflow idadp/defaultare wire ids, not crate names.cargo install --path crates/edge/protocol-clibecomescargo install --path crates/edge/aep-cli, andcargo build -p protocol-clibecomescargo build -p aep-cli. -
This repository names the renamed agent plugins.
agentplugins@a2077d2renamed them by product and verb, and every reference here follows:was is plugin aep-planningplugin aep-planplugin adpplugin aep-driveplugin ess-schemaplugin ess-specify, whose skill isspecifyaep-planning:{planning,story-migration}aep-plan:{planning,story-migration}aep-planning:{decomposer,plan-reviewer,reverse-engineer,plan-critic-*}aep-plan:…adp:{drive,wave},adp:{implementor,adversary,story-scoper}aep-drive:…ess-schema:ess-schemaess-specify:specifyThe wire ids are not plugin names and do not change:
adp/1,aop/1and the workflow idadp/defaultare what they were. -
EVAL-RUN-018fires on either spelling of the ESS plugin. Theess-on-PATHpreflight was keyed oness-schema:alone, so a case whosesubject.skillsnamed the renamedess-specify:specifysailed past it and a labelled live run would spawn and pay on a runner with noess— its step drafted by hand and never validated. Both prefixes are accepted, for one release, so a case written or recorded under either name still refuses; the refusal names both. -
The recordings keep their recorded ids, and say so. A committed transcript is evidence and is not rewritten, so every expectation row and task statement judged against one keeps the id the run was actually offered, marked
# recorded-under-this-name:conformance/trace/expectations.{trace,driven-step}.trace.yaml,conformance/eval/{decomposer,plan-reviewer}-charter/{case.yaml,expectations.trace.yaml},crates/observe/trace-spec/tests/{adapter.rs,event_stream.rs}andsrc/check.rs. One more coordinate is kept deliberately old:beyond10x/agentplugins@aep-planning@0.4.0incrates/edge/aep-cli/tests/eval_run.rsis a released pin, and that release really is named that. -
The console blocks in Check a transcript are regenerated from the commands above them, and a test now holds them there: the page quoted a transcript digest, a spec digest and a row count from a run predating three changes to the tree, while telling the reader it was quoting what the command printed. Its declared expectation count follows the specification's own forty-three.
-
A
conformance/evalcase may declaresubject.skills. The corpus reader denied it as an unknown field, so the one blockaep eval run'sEVAL-RUN-018preflight keys on could not be written in a case at all; the block is accepted and closed, so a typo inside it is still refused. A live artifact'sscope:is now also checked for an area-qualified path naming a crate this tree does not have, not only for a pre-move spelling.