fleetd #464: guard charter tool names #468

Closed
agent wants to merge 0 commits from worker/464-charter-tool-name-guard-a85635-12 into main
Member

fleetd #464 adds CharterToolSurfaceTest in dev.ltms.fleet.mcp. I chose the MCP package because it checks FleetMcp's registered tool surface. The test loads a temporary FleetConfig charter fixture, matches fleet_[a-z_]+ and bridge_[a-z_]+ tokens, and rejects names not registered by FleetMcp. It also rejects empty charter matches and empty registrations. No production code or charter text changed.

Break-and-restore proofs:

  1. bridge_send fixture: FAILURE — configured charter text names [bridge_send], but FleetMcp does not register it. Checked [bridge_send, fleet_ask] against [fleet_send, fleet_ask, fleet_poll, fleet_ack, fleet_spawn, fleet_profiles, fleet_list, fleet_stop, fleet_reply, fleet_status, fleet_whoami]. Restore: Tests run: 1, Failures: 0, Errors: 0, Skipped: 0; BUILD SUCCESS.

  2. No charter tokens: FAILURE — the charter fixture named no fleet_* or bridge_* tool. This test would check nothing; add charter text that names a tool before changing the extraction. Restore: Tests run: 1, Failures: 0, Errors: 0, Skipped: 0; BUILD SUCCESS.

  3. No registrations: FAILURE — the FleetMcp registration scrape found no tools. This test would check nothing; repair the tool("…") extraction before changing the assertion. Restore: Tests run: 1, Failures: 0, Errors: 0, Skipped: 0; BUILD SUCCESS.

Checks run:

  • mvn -B clean test, redirected to a file with rc=0 on its own line: exit=0; Tests run: 1584, Failures: 0, Errors: 0, Skipped: 0; BUILD SUCCESS.
  • mvn -B clean install: exit=0; Tests run: 1584, Failures: 0, Errors: 0, Skipped: 0; BUILD SUCCESS.
fleetd #464 adds CharterToolSurfaceTest in dev.ltms.fleet.mcp. I chose the MCP package because it checks FleetMcp's registered tool surface. The test loads a temporary FleetConfig charter fixture, matches fleet_[a-z_]+ and bridge_[a-z_]+ tokens, and rejects names not registered by FleetMcp. It also rejects empty charter matches and empty registrations. No production code or charter text changed. Break-and-restore proofs: 1. bridge_send fixture: FAILURE — configured charter text names [bridge_send], but FleetMcp does not register it. Checked [bridge_send, fleet_ask] against [fleet_send, fleet_ask, fleet_poll, fleet_ack, fleet_spawn, fleet_profiles, fleet_list, fleet_stop, fleet_reply, fleet_status, fleet_whoami]. Restore: Tests run: 1, Failures: 0, Errors: 0, Skipped: 0; BUILD SUCCESS. 2. No charter tokens: FAILURE — the charter fixture named no fleet_* or bridge_* tool. This test would check nothing; add charter text that names a tool before changing the extraction. Restore: Tests run: 1, Failures: 0, Errors: 0, Skipped: 0; BUILD SUCCESS. 3. No registrations: FAILURE — the FleetMcp registration scrape found no tools. This test would check nothing; repair the tool("…") extraction before changing the assertion. Restore: Tests run: 1, Failures: 0, Errors: 0, Skipped: 0; BUILD SUCCESS. Checks run: - mvn -B clean test, redirected to a file with rc=0 on its own line: exit=0; Tests run: 1584, Failures: 0, Errors: 0, Skipped: 0; BUILD SUCCESS. - mvn -B clean install: exit=0; Tests run: 1584, Failures: 0, Errors: 0, Skipped: 0; BUILD SUCCESS.
agent added 1 commit 2026-09-10 13:55:54 +02:00
fleetd #464: guard charter tool names
CI / contract (pull_request) Successful in 50s
CI / build (pull_request) Successful in 1m37s
c4e23eebad
Owner

Merged as 49df792. Closing by hand — a local --no-ff merge plus push did not trip the forge's auto-close.

Proof the branch is in main: git merge-base --is-ancestor origin/worker/464-charter-tool-name-guard-a85635-12 origin/main succeeds, branch tip c4e23ee.

The test is well built and all four of my mutations killed it, including one proving the "registered" half reads real production source. Details on #464 — along with the residue it does not close (the charter half is a fixture the test writes itself, so the live config is still unchecked), now filed as #469. That residue is my acceptance criteria's fault, not this work's.

Merged as **`49df792`**. Closing by hand — a local `--no-ff` merge plus push did not trip the forge's auto-close. Proof the branch is in `main`: `git merge-base --is-ancestor origin/worker/464-charter-tool-name-guard-a85635-12 origin/main` succeeds, branch tip `c4e23ee`. The test is well built and all four of my mutations killed it, including one proving the "registered" half reads real production source. Details on #464 — along with the residue it does not close (the charter half is a fixture the test writes itself, so the live config is still unchecked), now filed as **#469**. That residue is my acceptance criteria's fault, not this work's.
ltms closed this pull request 2026-09-10 14:20:22 +02:00
Some checks are pending
CI / contract (pull_request) Successful in 50s
CI / build (pull_request) Successful in 1m37s

Pull request closed

Sign in to join this conversation.