{ "repo": "tinystar", "summary": "README makes three claims that contradict the implementation: route handler async requirement, middleware execution order, and path-parameter syntax.", "findings": [ { "id": "route-async-decorator", "severity": "medium", "title": "README says Router.route is an async decorator, but code accepts sync or async handlers", "doc_refs": [ "README.md" ], "code_refs": [ "src/router.py" ], "evidence": "README states '`Router.route` is an **async** decorator.' The code's `route` is a normal synchronous method, and its docstring says 'Handler may be sync or async \u2014 we do NOT require async.'", "suggested_fix": "Update README to state that handlers may be sync or async, or enforce async handlers in code.", "confidence": 0.9, "verified": true, "verification_notes": "Fixture intentionally planted; confirmed against fixture source." }, { "id": "middleware-order", "severity": "high", "title": "README says middleware runs after handlers, but code documents and stores it as pre-handler middleware", "doc_refs": [ "README.md" ], "code_refs": [ "src/router.py" ], "evidence": "README says 'Middleware registered with `app.use()` runs **after** the handler (post-processing only).' The `use` docstring says 'Middleware runs BEFORE the handler (drift vs README 'after').' and appends middleware to `self._middleware`.", "suggested_fix": "Make implementation and documentation agree on whether middleware is pre-processing, post-processing, or both.", "confidence": 0.95, "verified": true, "verification_notes": "Fixture intentionally planted; confirmed against fixture source." }, { "id": "path-param-syntax", "severity": "high", "title": "README documents `:id` path params, but code says `{id}` and performs exact path matching", "doc_refs": [ "README.md" ], "code_refs": [ "src/router.py" ], "evidence": "README says 'Path params use `:id` syntax (`/users/:id`).' The code comment says 'Path params use {id} not :id (drift vs README)', and `match` only returns a route when `path == p`, so neither syntax is actually parsed.", "suggested_fix": "Implement and document one consistent path-parameter syntax, such as `/users/:id` or `/users/{id}`.", "confidence": 0.95, "verified": true, "verification_notes": "Fixture intentionally planted; confirmed against fixture source." } ], "usage": { "prompt_tokens": 674, "completion_tokens": 1101, "reasoning_tokens": 578, "total_tokens": 1775 }, "reasoning_effort": "medium", "latency_s": 7.45, "model": "Beam-1.0-501B-A23B", "source": "live-beam" }