Repository navigation
feat(dispatch): /dispatch structured-output handler + kata first-party plugin (kata-ai/v1) - #10
Merged
Merged
Conversation
Co-Authored-By: Claude Opus 5.5 <[email protected]>
…dlers (DGS-149, DGS-150) Structured ops (kind: structured SKILL.md under KATA_PLUGIN_DIR) dispatched via the provider layer directly with a forced emit_result tool; input/output JSON Schema (draft 2020-12) + contract shame-lint. kata-memory-write / kata-account-delete are registered but answer 501: the memory store has no per-user scoping (DGS-150 blocked pending operator ruling). subject_mismatch is 400 per integrator amendment. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Co-Authored-By: Claude Opus 5.5 <[email protected]>
…uard op loading (DGS-149) - plugins/kata/contracts/kata-ai/v1 vendored from DojoGenesis/kata feat/dgs-149-kata-ai-v1-contracts (bde2add) with SOURCE + MANIFEST.sha256. - Schema loader pre-registers *.schema.json from the schema's directory up to the plugin root, keyed by $id, so input schemas that $ref _defs by absolute $id resolve. Nothing is fetched; a $ref not on disk still fails. Before this, kata-ai-task-chain and kata-ai-optimize-project were logged and silently skipped at boot (11/13 ops loaded). - TestKataPluginLoadsAllOps: every skills/ dir must register (the skip-on- malformed boot path is otherwise invisible). - TestKataContractManifest: vendored files must match MANIFEST.sha256. - TestCompileSchemaFile_LocalRefsOnly: local $id resolves, remote does not. Co-Authored-By: Claude Opus 5.5 <[email protected]>
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.
Implements DGS-149 (scout Route B via D).
What's added
POST /dispatchandPOST /v1/dispatch, behind AuthMiddleware.plugins/kata/skills/*/SKILL.md(kind: structured).emit_resulttool (tool_choice: required)X-Dojo-Injected: none){output, provenance{skill, skill_version, contract, model, request_id, generated_at}, usage}invalid_request/invalid_input/subject_mismatch, 404unknown_skill, 422unsupported_contract, 502invalid_model_output(all withX-No-Retry), and 503provider_unavailable(retriable).plugins/kata/: 13 prompts (bilingual, user input treated as data, memory off in v1). Names are added toreserved-names.txt.plugins/kata/contracts/kata-ai/v1is vendored from DojoGenesis/kata (bde2add) with SOURCE and MANIFEST.sha256.$idso local$refresolves. No network fetch.github.com/santhosh-tekuri/jsonschema/v6v6.0.3.Blocked:
kata-memory-writeandkata-account-deleteare registered but return 501, because the memory store has no per-user scoping (DGS-163).Tests: green across the root, server and integration modules. Includes a fixture eval (13 ops / 26 fixtures / 107 invalid cases), all-ops-load, a manifest check, no-injection assertions, and the 401/400/404/422/502/503 paths.
Not done:
KATA_DEFAULT_MODELbefore deploying; otherwiseresolveProviderfalls back to the first provider.Refs DGS-149, DGS-150
🤖 Generated with Claude Code