File size: 2,849 Bytes
94e16b3
 
0c8c14f
94e16b3
 
0c8c14f
94e16b3
0c8c14f
94e16b3
 
 
 
 
 
0c8c14f
 
 
 
 
94e16b3
 
0c8c14f
94e16b3
0c8c14f
94e16b3
 
 
 
 
 
0c8c14f
 
 
 
 
94e16b3
 
0c8c14f
 
 
94e16b3
 
 
 
 
 
0c8c14f
 
 
 
 
94e16b3
 
 
0c8c14f
 
 
 
94e16b3
0c8c14f
 
 
 
94e16b3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
{
  "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"
}