Inspectable reasoning graphs with reproducible, conditional Lean verification
Logosphere defines 11 tools with partial schema coverage. All tools have descriptions (10-200 chars, within baseline), but critical gaps exist: ASSERT, DECLARE, ATTACH, PROPOSE, CHALLENGE use generic 'object' schemas with no field documentation, blocking LLM understanding of required structure. OBSERVE has good constraints (minLength, maxLength, title limits). VERIFY, TRACE, RENDER, COMPARE, SUBSCRIBE lack output schema documentation. No error handling guidance visible. Tool names are action-verb based (OBSERVE, ASSERT, VERIFY) but descriptions don't explain WHEN to use each vs. alternatives (e.g., ASSERT vs. DECLARE vs. PROPOSE). Optimistic concurrency control (expectedHead) is well-designed but underdocumented for LLMs.
Add an assertion node to the reasoning graph
Attach evidence to a node in the reasoning graph
Record a challenge to a component of the reasoning graph
Compare the current graph with another artifact
Declare an assumption in the reasoning graph
Process caller-supplied text locally to create observations in the reasoning graph
Propose an inference edge with premises and conclusion
Generic 'object' schemas with no field documentation (ASSERT, DECLARE, ATTACH, PROPOSE, CHALLENGE). LLMs cannot infer required fields, types, or constraints.
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields (e.g., what does OBSERVE return? What fields does TRACE include?). Baseline: 100% of A+ tools have documented return types.
Descriptions lack WHEN/WHY guidance. 'Add an assertion node' (ASSERT) vs 'Declare an assumption' (DECLARE) vs 'Propose an inference' (PROPOSE) are semantically unclear. LLMs cannot distinguish when to use each. Descriptions should explain: What does it do? When vs. similar tools? What does it return?
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 49 | 2026-07-28+ | v2 |
Render the reasoning chain leading to a conclusion node
Subscribe to live notifications of graph changes
Retrieve the complete backward trace and change dependencies for a node
Verify an inference edge using Lean theorem prover
No error handling guidance visible in tool definitions. If VERIFY fails (Lean proof fails), what should the LLM do? Retry? Ask user? Abandon?
expectedHead parameter (optimistic concurrency control) is underdocumented. LLMs don't understand what 'null' means vs. a hash string, or what happens on mismatch. Description should explain: 'Pass the current head hash to detect concurrent modifications. Pass null for initial operations.'