refactor: split opencode runtime and tests

This commit is contained in:
Claude
2026-09-01 02:54:23 +00:00
parent 8dfca67ad3
commit f485d9faf9
13 changed files with 2193 additions and 2089 deletions
+8 -4
View File
@@ -14,8 +14,10 @@ webhook_server ── trusted base config ──► review_config
review_pr facade/orchestrator
├── entrypoints/gitea fetch diff, reviews, config; publish review
├── diff_compress reduce prompt context
├── opencode_review isolated checkout + agent execution
└── model / repo factory (.opencode)
├── opencode review orchestration seam
├── opencode_workspace archive, sanitization, brief, factory
│ ├── opencode_lens_config reviewer configuration and selection
│ └── opencode_synthesis normalization, deduplication, summaries
├── review parsing normalize findings + validate anchors
├── feedback persist reactions and derive scores
└── langfuse_trace usage, cost, evaluation telemetry
@@ -37,8 +39,10 @@ The internal seams are deliberately narrower:
- `entrypoints/gitea.request()` and `GiteaClient` own HTTP authentication, JSON
request encoding, timeout, and Gitea URL construction.
- `model_client.complete()` owns the legacy Anthropic-compatible request shape.
`opencode_review` is the preferred agent adapter and keeps Gitea I/O out of
the autonomous process.
`opencode` is the preferred agent adapter and keeps Gitea I/O out of the
autonomous process. Its sibling modules provide internal seams for workspace
preparation, lens policy, and synthesis without expanding the caller-facing
interface.
- `review/analysis`, `review/output`, `review/configuration`, and
`review/adapters` keep prompt construction, finding parsing, config filtering,
rendering, and publishing in focused modules.