Local Research Skill Pack canonical write gate and project state validation service
Three tools with domain-specific names but significant quality gaps. All tools have descriptions (10-50 chars, below baseline 194), lack parameter descriptions, and expose complex nested objects without schema documentation. No error handling guidance, no output schemas documented, no pagination or result limits. Tool names are descriptive but descriptions are too terse for LLM selection. Parameters like 'change' are opaque objects with no inline schema visibility.
Revalidate and commit one canonical artifact/state change. Returns a receipt ID on success; immutable artifacts are never overwritten.
Read a redacted local project summary, required gates, receipt integrity, and next canonical routes.
Preflight a canonical artifact/state change without writing files. Returns a change fingerprint and deterministic findings.
Parameter descriptions missing. 'change' parameter is an opaque object with no inline schema or description of required fields (request_id, expected_mutation_revision, origin_skill_id, artifact, target_state, state_reason). LLMs cannot construct valid payloads.
Tool descriptions are 30-50 characters, well below baseline 194 chars. 'Preflight a canonical artifact/state change without writing files' lacks context on when to use this vs commit_canonical_change, what 'canonical' means, or what a 'fingerprint' is. LLMs cannot disambiguate.
No output schemas documented. Tools return 'receipt ID', 'change fingerprint', 'deterministic findings' but no structured schema is visible. LLMs cannot plan downstream tool calls or extract required fields.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 44 | 2026-07-28+ | v2 |
No error handling guidance. Tools may fail (invalid project, immutable artifacts, revision conflicts) but no recovery hints provided. LLMs cannot self-correct or know whether to retry.
project_root parameter lacks validation constraints. No description of valid paths, required directory structure, or error cases (missing .research/, invalid YAML). LLMs may pass arbitrary paths.