Repository navigation
fix: correct the partial-success guidance and the changelog's Foundation split - #225
Merged
kuny0707 merged 1 commit intoAug 23, 2026
Conversation
…ion split Two mistakes in tronprotocol#224, found reviewing it after it merged. **The partial-success guidance was wrong in the direction that matters.** It told agents "re-running the whole command is usually wrong: the nodes that succeeded are already in the requested state." Only one command emits PARTIAL_SUCCESS — `network destroy` — and there the reasoning is backwards. Its message is `state cleaned up regardless`: trond has already dropped every node from state, so a retry returns NETWORK_NOT_FOUND, and the entries in `failed` are containers or units still running on the target with nothing tracking them. An agent following the old text would retry, get NETWORK_NOT_FOUND, and conclude the teardown was fine while the containers kept running. It now says: do not retry, surface the `failed` list for manual cleanup. It also records what the other multi-node commands actually do instead — `network create` stops at the first failure with DEPLOY_ERROR, `network upgrade` with UPGRADE_FAILED — so "multi-node" is no longer implied to mean "partial-reporting". Same over-generalisation corrected in exitcode.go and contracts/cli-contract.md. **The changelog's 40-command enumeration sat under the wrong heading.** tronprotocol#223 split `### Added` into **Foundation** (what the never-published alpha described) and **Since** (everything after). tronprotocol#224 replaced Foundation's "32 CLI commands" bullet with a list of all 40 — including recipe, schema, mcp, doctor, verify-config, build and shadow-fork, every one of which is itemised again below under Since. Release notes that say "Foundation: everything" and then "Since: some of that again" are worse than the wrong count they replaced. The total is now a lead paragraph under `### Added`, describing the release; Foundation goes back to naming the command groups the project launched with. No behaviour change; docs and one comment. make test 25/25, gofmt and vet clean, knowledge/ and internal/knowledge/files/ still byte-identical.
warku123
added a commit
to warku123/tron-deployment
that referenced
this pull request
Aug 27, 2026
…semantics The runtime error claimed "state cleaned up regardless" while the implementation keeps failed entries in tracked state and a re-run retries exactly those nodes. That lie misled PR tronprotocol#225's docs correction into encoding it in AGENTS.md; fixing the message at the source closes the chain (root cause of tronprotocol#226 doc findings).
warku123
added a commit
to warku123/tron-deployment
that referenced
this pull request
Aug 27, 2026
…tions First wave of the full-repo documentation audit (council + oracle reviewed); zero behavior changes. - AGENTS.md: truthful partial-state semantics for network destroy and create per code archaeology (create aggregates failures after trying every node; upgrade is genuinely first-failure-stop), wait example fixed to the real --json-path/--json-gt flags, versioning policy aligned with internal/schema/embed.go (additive = patch) - schemas/output + embed copies: declare status.monitoring and inspect.intent_hash as already emitted (additive, SchemaVersion 1.16.1); version baseline regenerated; synthetic contract assertions added in cmd/output_schema_contract_test.go - internal/mcp/server.go: serverInstructions now list exactly the 23 registered tools and prompt chains match their bodies - knowledge/cloud-deployment.md (+ embedded mirror): drop the nonexistent --target flag, SSH setup via the intent target block - examples/dev-local.yaml / README.md: real build prune flags, verify usage with required --intent - CHANGELOG: user-visible fixes plus tronprotocol#225->tronprotocol#226 correction-chain provenance
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.
Two mistakes in #224, found reviewing it after it had already merged.
The partial-success guidance was wrong in the direction that matters
#224 added this to AGENTS.md:
Only one command emits
PARTIAL_SUCCESS—network destroy— and for that one the reasoning is backwards. Its message isstate cleaned up regardless(cmd/network/destroy.go:189): trond has already dropped every node from state before returning. So:NETWORK_NOT_FOUND, not a partial re-run;failedare containers or systemd units still running on the target with nothing tracking them.An agent following the old text would retry, get
NETWORK_NOT_FOUND, and reasonably conclude the teardown had completed — while the containers kept running. That is a worse failure than the missing-code gap #224 set out to fix.It now says: do not retry, surface the
failedlist for manual cleanup. It also records what the other multi-node commands do instead, so "multi-node" is no longer implied to mean "partial-reporting":network destroyerror_code: PARTIAL_SUCCESS,removed+failedarrays, state already cleannetwork createDEPLOY_ERROR, exit 1network upgradeUPGRADE_FAILED, exit 1The same over-generalisation is corrected in
internal/output/exitcode.goandcontracts/cli-contract.md, which #224 worded the same way.The changelog's 40-command list sat under the wrong heading
#223 split
### Addedinto Foundation (what the never-published alpha section described) and Since (everything after). #224 replaced Foundation's32 CLI commandsbullet with an enumeration of all 40 — includingrecipe,schema,mcp,doctor,verify-config,buildandshadow-fork, every one of which is itemised again below under Since.Release notes that say "Foundation: everything" and then "Since: some of that again" are worse than the wrong count they replaced. The total is now a lead paragraph under
### Added, where it describes the release; Foundation goes back to naming the command groups the project launched with.Checked while reviewing, no change needed
PersistentPreRunE, so nothing shadows fix: reconcile the docs with what trond actually does #224's new--outputvalidation orpaths.SetBaseDir.SchemaVersiongoverns the output-JSON schema manifest, not the CLI flag surface, so removing--configneeds no version bump —cmd/schema_coverage_test.goandversion_test.goagree.shadow-fork mutate --configbinds its own local flag and still works. Removing the root persistent--configin fact took away a latent shadowing hazard between the two.trond completion bashis fine — an earlier report of exit 1 was my own shell quoting, not a regression.No behaviour change here; docs plus one code comment.
make test25/25, gofmt and vet clean,knowledge/andinternal/knowledge/files/still byte-identical.