2.5 KiB
Public VCC Plus MCP workflow
The project was connected using C Development → Assistant → Use Project
Makefile + Allow Disposable Playtests → Save Private Connection. Grants stayed
outside the checkout. tools/vcc_mcp.py is a normal STDIO JSON-RPC client for
/Applications/VCC Plus.app/Contents/Helpers/vcc-mcp --grant FILE; it does not
use a private bridge or debugger memory/register writes.
Live tools were discovered with tools/list, followed by get_capabilities.
Builds used advertised disk actions and Test/Release configurations.
start_playtest booted exact artifact disks on isolated 512 KB MC6809 workers.
Every simulated press used playtest_input physical-key plans with separate
release fields. capture_playtest supplied the actual 640×480 framebuffer.
PNG pixels were decoded at the game's 320×192 coordinates. Text was matched
against the font bytes in the corresponding linked build, so checks observed
what the guest drew, rather than trusting host quiz variables. Selected-state
pixels were also checked against each state's drawing mask.
VCC Plus protects the approved recipe and source revision. After changing recipe/support inputs, export a fresh connection. Put captures and test logs outside the watched project until a run finishes: adding files can advance the project revision and end its test run. Every intended input needs a fresh request ID; only identical retries reuse one.
Limitations and reusable improvements
The public playtest key enum omits period and other punctuation. St Paul
and mixed-case answers were played in the guest; St. Paul was verified by
the shared C logic tests. A reusable improvement is to expose the remaining
physical CoCo punctuation keys (or a documented ASCII-to-key-chord input tool)
with the same field bounds and idempotency receipts.
The approved custom-Make build receipt did not advertise verified C/function
stop lists. A general pause followed by get_debug_snapshot returned
verified_pause_required. No memory was guessed or modified to work around
that refusal. Gameplay checks used framebuffer captures and ordinary inputs.
A reusable improvement is to expose the native workbench's verified C mapping
and shared globals in custom-Make artifact receipts, or document a public
manifest schema for ordinary, non-banked binaries.
These limits do not prevent building or playing the complete quiz. They limit the automated punctuation and source-debug inspection coverage described in TESTING.md. The user's original machine, disks and tape were preserved.