refactor: split opencode runtime and tests
This commit is contained in:
@@ -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.
|
||||
|
||||
Reference in New Issue
Block a user