Files
heretek-control-core/tests
John SmithandClaude 9610fc76ad fix(comic): expose per-operation argument schema on the comic dispatchers
LobeHub (and other) agents kept failing to call emcp-tools/comic-write
because its "scheme" was invisible: the static schema exposed only an
unconstrained operation string plus an opaque free-form arguments object,
and comic-write uniquely marked operation as REQUIRED, so the documented
"call with no operation to list the catalog" discovery call was blocked at
the schema level. The hand-maintained runtime catalog had also drifted from
the executors, omitting status (which defaults to publish), date, author,
taxonomies, content_warning, and comic_html_above/below — exactly the facts
agents were guessing at.

- comic-write no longer requires operation, so the empty-op discovery call
  is legal; both tools' operation property now carries an enum of the real
  operation names.
- Add op_schema() to the read and write operations classes as the single
  source of truth (typed JSON Schema + a realistic example per op). The
  discovery catalog is generated from it — each entry keeps the flat
  arguments hints and gains typed schema + example — so the docs can never
  drift from the executors again.
- Tool descriptions now state the discovery flow and the create-comic
  contract (status defaults to "publish", date backdating, image flow,
  author).
- Clarify in both emcp-comic-easel SKILL.md files that imported strips must
  always pass "status": "draft" explicitly, since the tool's own default is
  publish.
- Tests: new schema-exposure suite (no required operation, enum == spec
  keys, catalog schema+example, status default/fields exposed, and a parity
  guard pinning every executor field to the spec). All 8 suites pass.

Co-Authored-By: Claude <[email protected]>
2026-09-02 15:45:19 -04:00
..
2026-09-02 11:35:42 +05:00