forked from bots-garden/ori
| ✨ Introduce new feature(s): ACP web client — Go backend (agent, bridge, httpserver, mockagent) + React SPA (Zed-like agent panel), tests, quality gate PASS | 1 | # Quality report — 2026-09-17T19:10:18Z |
| 2 | ||
| 3 | - **Gate**: ❌ **FAIL** | |
| 4 | - **Commit**: `4edda86` on `feat/acp-webapp` | |
| 5 | - **qlty**: qlty 0.639.0 linux-arm64 (d9801f1 2026-07-23) | |
| 6 | - **Run**: #2 (previous: 2026-09-17T19:09:37Z) | |
| 7 | ||
| 8 | ## Gate violations | |
| 9 | ||
| 10 | - error-level issues: 13 (max 0) | |
| 11 | - warning-level issues: 4 (max 0) | |
| 12 | - code smells: 5 (max 0) | |
| 13 | ||
| 14 | ## Lint issues (`qlty check`) | |
| 15 | ||
| 16 | | level | count | vs previous | | |
| 17 | |---|---|---| | |
| 18 | | error | 13 | — | | |
| 19 | | warning | 4 | — | | |
| 20 | | note | 21 | — | | |
| 21 | ||
| 22 | ### Top rules | |
| 23 | ||
| 24 | | rule | count | | |
| 25 | |---|---| | |
| 26 | | biome:fmt | 19 | | |
| 27 | | biome:parse | 7 | | |
| 28 | | biome:lint/suspicious/noArrayIndexKey | 4 | | |
| 29 | | golangci-lint:errcheck | 3 | | |
| 30 | | golangci-lint:fmt | 2 | | |
| 31 | | golangci-lint:staticcheck | 1 | | |
| 32 | | biome:lint/correctness/useExhaustiveDependencies | 1 | | |
| 33 | | biome:lint/a11y/useSemanticElements | 1 | | |
| 34 | ||
| 35 | ### Most affected files | |
| 36 | ||
| 37 | | file | issues | | |
| 38 | |---|---| | |
| 39 | | .vscode/settings.json | 6 | | |
| 40 | | ui/src/components/ChatThread.tsx | 4 | | |
| 41 | | cmd/ori/e2e_test.go | 3 | | |
| 42 | | ui/src/components/ToolCallCard.tsx | 3 | | |
| 43 | | ui/src/components/PlanView.tsx | 2 | | |
| 44 | | .vscode/extensions.json | 1 | | |
| 45 | | internal/bridge/ws.go | 1 | | |
| 46 | | internal/httpserver/httpserver_test.go | 1 | | |
| 47 | | internal/mockagent/mockagent.go | 1 | | |
| 48 | | ui/package.json | 1 | | |
| 49 | | ui/src/App.test.tsx | 1 | | |
| 50 | | ui/src/App.tsx | 1 | | |
| 51 | | ui/src/app.css | 1 | | |
| 52 | | ui/src/components/Markdown.tsx | 1 | | |
| 53 | | ui/src/components/PermissionPrompt.tsx | 1 | | |
| 54 | ||
| 55 | ## Code smells (`qlty smells`) | |
| 56 | ||
| 57 | Total: **5** (vs previous: ±0) | |
| 58 | ||
| 59 | | smell | file | line | detail | | |
| 60 | |---|---|---|---| | |
| 61 | | qlty:return-statements | internal/agent/agent.go | 152 | Function with many returns (count = 8): Start | | |
| 62 | | qlty:function-complexity | internal/bridge/ws.go | 16 | Function with high complexity (count = 22): WebSocketHandler | | |
| 63 | | qlty:return-statements | internal/mockagent/mockagent.go | 106 | Function with many returns (count = 10): play | | |
| 64 | | qlty:return-statements | ui/src/reducer.ts | 82 | Function with many returns (count = 9): reduceServer | | |
| 65 | | qlty:return-statements | ui/src/reducer.ts | 119 | Function with many returns (count = 6): reduceUpdate | | |
| 66 | ||
| 67 | ## Metrics (`qlty metrics`) | |
| 68 | ||
| 69 | | metric | total | vs previous | | |
| 70 | |---|---|---| | |
| 71 | | funcs | 92 | ±0 | | |
| 72 | | classes | 27 | ±0 | | |
| 73 | | fields | 39 | ±0 | | |
| 74 | | cyclo | 307 | ±0 | | |
| 75 | | complex | 158 | ±0 | | |
| 76 | | lcom | 0 | ±0 | | |
| 77 | | lines | 1989 | ±0 | | |
| 78 | | loc | 1398 | ±0 | | |
| 79 | ||
| 80 | ### Most complex files | |
| 81 | ||
| 82 | | file | complex | cyclo | loc | | |
| 83 | |---|---|---|---| | |
| 84 | | internal/bridge/bridge.go | 26 | 40 | 201 | | |
| 85 | | internal/mockagent/mockagent.go | 24 | 35 | 178 | | |
| 86 | | internal/bridge/ws.go | 22 | 14 | 47 | | |
| 87 | | ui/src/reducer.ts | 18 | 66 | 184 | | |
| 88 | | internal/agent/agent.go | 15 | 29 | 114 | | |
| 89 | | internal/agent/client.go | 11 | 28 | 74 | | |
| 90 | | ui/src/ws.ts | 10 | 13 | 59 | | |
| 91 | | internal/httpserver/httpserver.go | 8 | 8 | 33 | | |
| 92 | | ui/src/components/PromptInput.tsx | 7 | 9 | 48 | | |
| 93 | | ui/src/components/ToolCallCard.tsx | 6 | 19 | 78 | | |
| 94 | | cmd/ori/main.go | 3 | 7 | 45 | | |
| 95 | | ui/src/components/ChatThread.tsx | 2 | 10 | 58 | | |
| 96 | | cmd/ori-mock-agent/main.go | 1 | 4 | 18 | | |
| 97 | | internal/bridge/protocol.go | 1 | 3 | 42 | | |
| 98 | | ui/embed.go | 1 | 3 | 13 | | |
| 99 | ||
| 100 | ## Trend | |
| 101 | ||
| 102 | | run | timestamp | error | warning | smells | complex | gate | | |
| 103 | |---|---|---|---|---|---|---| | |
| 104 | | 1 | 2026-09-17T19:09:37Z | 0 | 0 | 5 | 158 | FAIL | | |
| 105 | | 2 | 2026-09-17T19:10:18Z | 13 | 4 | 5 | 158 | FAIL | |