44 lines
2.5 KiB
Markdown
44 lines
2.5 KiB
Markdown
# 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.
|