Repository navigation
Conversation
The Rolecasting, Tricritical, Artifact Customs, and Proseweaving READMEs ship in every installed copy, but parts of each described the source tree: a layout tree, adapter manifest and openai.yaml paths, topology, content-lock and provider registration files, validator and test commands. No release target ships the topology, content-lock, or provider registration files, the validators, or the tests, and each ships at most one of the two adapter files. Make each README the front page for people using the plugin, and move that material, mostly verbatim, into a DEVELOPING.md beside it, as Mergecraft and Versionkeeping already do. Where a moved sentence also carried a user-facing point, the README keeps that point without the source-only path; Rolecasting's retained dispatch-evidence paragraphs get their own heading. Each README now ends with a Developing this plugin section that points at the developer page by URL. Each developer page opens with the source layout, names its validator, tests, evaluation evidence, content identity, and lock regeneration command, and states which files every release target leaves out. Proseweaving's README now says only that Codex does not load its Claude agent alias, as Tricritical's already did. Its earlier "Codex and other Agent Plugins clients" wording claimed more than is known: the Cursor target ships agents/ and registers it in its generated manifest. Each member validator adds the page to its root inventory, and a unit test rejects a missing page. Rolecasting, Proseweaving, and Artifact Customs lock it with their README, so the Kit definition rebinds those three regenerated locks. Tricritical's lock has never covered its README, so the page stays outside that lock and its binding is unchanged. The builder test now expects all six developer pages. AGENTS.md drops the clause for members without a developer page, says the page stays in the source, and adds Proseweaving's README roster to what the lock writers regenerate. Refs #261 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: true
Comment |
Owner
Author
|
@coderabbitai configuration |
|
Configuration used: Auto · no configuration file from this repository applied; Layers: Organization UI CodeRabbit configuration
|
This was referenced Oct 24, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
scripts/validate_artifact_customs.pyscripts/validate_proseweaving.pyscripts/validate_rolecasting.pyscripts/validate_tricritical.pytests/test_build_release_artifacts.pytests/test_validate_artifact_customs.pytests/test_validate_proseweaving.pytests/test_validate_rolecasting.pytests/test_validate_tricritical.pyAGENTS.mdplugins/artifact-customs/DEVELOPING.mdplugins/artifact-customs/README.mdplugins/proseweaving/DEVELOPING.mdplugins/proseweaving/README.mdplugins/rolecasting/DEVELOPING.mdplugins/rolecasting/README.mdplugins/tricritical/DEVELOPING.mdplugins/tricritical/README.mdplugins/proseweaving/content-lock.jsonplugins/rolecasting/content-lock.jsonrelease/plugin-content-locks/artifact-customs.jsonrelease/provingkit/definition-v1.jsonIMPL means non-test source and configuration. TEST means automated verification. DOC means reviewer and user documentation. GEN means generated artifacts. OTHER means files outside those categories. FILES shows added, modified, and removed files as +, ~, and −.
Summary
Rolecasting, Tricritical, Artifact Customs, and Proseweaving now follow the two-page split that #544 gave Mergecraft and Versionkeeping: each
README.mdis the front page for a person who installs the plugin, and the material about the source tree moves to aDEVELOPING.mdbeside it that no release target ships. Before this change, each of the four READMEs shipped in every installed copy while describing source files that installed copies leave out, such as Rolecasting's layout tree and validation commands, Tricritical'stopology.jsonparagraph and validator command, Artifact Customs'.claude-plugin/plugin.jsonprojection (absent from theagent-pluginsandcursortargets), and Proseweaving's adapter-boundary and validation sections; #261 has the full table. None of the four had a dead link; the mismatch was in unlinked prose.What a reader gets
agents/*.md. In Rolecasting's README the paragraphs that stay get aDispatch evidenceheading, andDaybreak account-home routingrises from###to##.Developing this pluginsection that names its audience, says what an installed copy leaves out, and links the developer page onmainby absolute URL. None of the four has a closingLicense and provenancesection, so the developer section comes last in each, as the placement decision requires.skills/andagents/openai.yamlpaths. Proseweaving's earlier wording, "Codex and other Agent Plugins clients", claimed more than is known: thecursortarget shipsagents/and its generated manifest registers it. That sentence was not part of the moved text; it is narrowed so that the two READMEs state the same fact.Layouttree, states which files each release target leaves out, and holds the material moved out of its README, which across the four pages covers manifest and adapter-file paths, topology, provider registration, validator and test commands, evaluation evidence, and the lock writer. Links outside the plugin root areblob/mainURLs, per the 2026-10-10 decision; the build-time rewrite is #523.Validator and contract changes
DEVELOPING.mdto its plugin root inventory:validate_rolecasting.py,validate_tricritical.py,validate_artifact_customs.py, andvalidate_proseweaving.py. A new test per member rejects a missing page. Tricritical's validator reads every expected file before it compares the inventory, so a missing page fails as a read error that names the file, and its test accepts either message.--write-content-lockmode regenerated those three locks, andrelease/provingkit/definition-v1.jsonbinds the three new digests. Tricritical's lock has never covered its README, so its developer page stays outside that lock, and Tricritical's binding is unchanged.tests/test_build_release_artifacts.pynow expects developer pages for all six members; the tests docs(plugins): move Mergecraft and Versionkeeping developer docs out of shipped READMEs #544 added already hold every shipped README and developer page to the link rules.AGENTS.mddrops the clause for members without a developer page, as Give the remaining four members a users' README and a source-only developer page #261 asks once all six have one, says the page stays in the source, and adds Proseweaving's README skill roster to what the lock writers regenerate.Boundary
AGENTS.mdmember paragraph, the Kit definition's digest bindings, and the shared release-projection test.Provenance and compatibility
387f19a, onmain's tipfc50152. Moved paragraphs keep their wording except where the new page needs a connecting change, such as "The table above" becoming "The README's public-skill table".evals/proseweaving/preview-panel/panel.jsonpins a README digest from925626ethat already differed from the base README;scripts/behavior_eval_inventory.pyreports that mismatch as an ownerless diagnostic on both revisions and selects no skill, so this change leaves the panel alone.Validation
At
387f19a, run locally from the repository root on Python 3.13.16 in a virtual environment with the workflows' pinnedidna==3.18,jsonschema==4.26.0, andPyYAML==6.0.3, with every non-installrun:command ofprovingkit-source.ymlandsource-skill-disposition.ymlexecuted in workflow order:python scripts/validate_provingkit.py .prints "Provingkit source validation passed",python scripts/run_provingkit_tests.py .with a fresh--output-dirreportssuccessful: true, andprovingkit-source.yml's six excluded-sourcetest ! -echecks pass.--source-stage),tests.test_build_release_artifacts(11), andtests.test_validate_source_skill_disposition(66) withpython scripts/validate_source_skill_disposition.py .. Beyond the workflows, 114 more tests pass acrosstests.test_agent_plugins_standard, the threetests.plugins.test_rolecasting_*suites,tests.test_artifact_customs_behavior_eval, andtests.test_behavior_eval_corpora.--write-content-lockcommands in.github/workflows/provingkit-source.yml,git diff --exit-codereturns 0.run:command in.github/workflows/provingkit-source.ymland.github/workflows/source-skill-disposition.ymlpasses at this head:git diff --checkagainst the base, the runner's own tests (16), the Amberbridge fixture test (1), the four cutover-lineage tests, the member receipt-adapter suites (105), Versionkeeping's tests (63) and validator, Mergecraft's tests (195), its issue–PR relation and ledger suites (76), its two review-feedbackdiscoversuites (62 and 95), and its source-stage validator, and the three full-slate target builds. The dependency-install steps were not run; the virtual environment stands in for them.python scripts/behavior_eval_inventory.py compare --base fc50152d2d53cf9b50db4202d1c4506765d65fa4 --candidate 387f19a1c3efff1cf89b09af5385f1719a469022reportscompletewith no affected skills, andcheckwith--receipt-root release/eval-receiptsreportsnot-required.agent-plugins,claude, orcursorpayload built from this head containsDEVELOPING.md; every shipped README equals its source file; and apart from the developer-page URL, the only left-out file a shipped README names istopology.json, inside its "An installed copy leaves out" sentence.DEVELOPING.mdmakes its validator exit 1 (Rolecasting and Proseweaving withcomponent inventory drift, Artifact Customs withplugin root file inventory drift, Tricritical with a read error naming the file); and withDEVELOPING.mdremoved from Tricritical's expected tree, the validator accepts a tree without the page and Tricritical's missing-page test fails.cog verifyaccepts the commit message, andcog check fc50152..387f19areports no errored commits.On Python 3.15, the default
uvinterpreter on the machine that ran these checks,tests.test_behavior_eval_corporareports three failures in two methods, and the prepared-release cutover test fails because it resolvessys.executableto a base interpreter without PyYAML. Both failures occur onmainand on this head alike, and both pass on Python 3.13 as above.Merge gate: the required
windows-latest credential providercheck is expected to fail on this PR until #627 is fixed, as it does on #626 (job) and #611 (job), the two open PRs whose checks were inspected. Of the other eleven required checks, eight are jobs of the two workflows reproduced above; the remaining three come from two workflows not run locally:Conventional commit complianceruns the Cocogitto check thatcog checkcovers above for this PR's one commit, and theubuntu-latestandmacos-latestcredential-provider jobs run Versionkeeping's credential-provider tests, which this change does not touch.Follow-up
DEVELOPING.md; both PRs also editscripts/validate_proseweaving.pyandtests/test_validate_proseweaving.pyin separate places. Whichever lands second carries the other's Validation text intoplugins/proseweaving/DEVELOPING.md, regenerates the Proseweaving lock and Kit digest, and reruns validation and review on the combined result.choosing-agent-modelsanddelegating-cross-agent-work, which share the Rolecasting content lock and Kit digest this PR regenerates; whichever lands second regenerates them again.test_developer_pages_stay_in_sourcenames all six members; Praxis joins the list when #209 lands.release/artifact-projection-policy-v1.json; the lists here were checked by hand against the policy and built payloads.release/provingkit/definition-v1.json, whose digest committed receipts underrelease/eval-receipts/record. The receipt gate selects no skill for this change, and no receipt is refreshed here.scripts/validate_plugin_runtime_roots.py, which this PR does not run or change.Review checklist
🤖 Generated with Claude Code