Invoice detail endpoint
Passed with warnings
1 lower-severity issue to review, starting with IDOR in app/routes/invoices.py:22.
Security agent
Scripted demo replay
Instead of reading one big prompt, the agent plans, then investigates the code graph one tool call at a time and sees each real result before deciding what to check next.
- 1Inspect the changed function and where its inputs come from
- 2Trace entry points through the change to dangerous calls
- 3Read the code on the path for validation or auth checks
- 4Report only what the evidence supports
- Step 1Looked up
app.routes.invoices:read_invoiceStart with the changed symbol.
What it found
{ "id": "app.routes.invoices:read_invoice", "kind": "function", "file": "app/routes/invoices.py", "lines": [ 20, 25 ], "params": [ "invoice_id", "user" ], "entry_point": true, "route": "GET /{invoice_id}", "depends_on": [ "get_current_user" ], "untrusted_inputs": [], "dangerous_calls": [], "has_docstring": true } callers: (none) callees: app.auth:get_current_user (app/auth.py:9-15) via line 20 app.services.billing:BillingService.get_invoice (app/services/billing.py:13-16) via line 22