review classifier: every ACP run gets one shared, empty cwd
opencode writes the session's cwd into the system message's environment
block ("Working directory: …", "Workspace root folder: …"), ahead of the
PR's user message. Each ACP classification ran with its per-call scratch
directory, /tmp/review-classifier-<pid>-<counter>, as cwd, so every call
sent a different system message and the provider's prompt cache could not
match past it.
The session's cwd is now one fixed directory, <tmp>/review-classifier-acp-cwd,
shared by every run. HOME (the config, system.md and opencode's own state)
stays a directory per run, removed after it, as before. With no tool and
no project config nothing writes into the cwd: a live opencode 1.15.10 run
through initialize, session/new and a prompt left it empty, with its state
all under HOME. So concurrent runs can share it, and no state carries from
one run to the next.
Refs #5245
This commit is contained in:
parent
345c6e3731
commit
2fb6b39f9f
4 changed files with 70 additions and 11 deletions
|
|
@ -124,7 +124,11 @@ resume, no tools (`--tools ""`), no MCP server (`--strict-mcp-config` and no
|
|||
config) and an empty directory of its own.
|
||||
|
||||
On the ACP runtime, each classification is one prompt on a new `opencode acp`
|
||||
session in an empty directory of its own. The service drives it through
|
||||
session. Its config and opencode's state live in a directory of its own,
|
||||
removed after it. Its working directory is one empty directory that every
|
||||
classification shares: opencode writes that path into the system message, so
|
||||
one path keeps the system message the same from one classification to the
|
||||
next, and the provider's prompt cache can hold. The service drives it through
|
||||
[`hive-runtime`](../../hive-runtime/README.md)'s `AcpRuntime`, as the subagent
|
||||
daemon does a one-run subagent, and stops the agent when the classification
|
||||
ends. The agent has no tool. opencode runs some tools, `read` among them,
|
||||
|
|
|
|||
Loading…
Reference in a new issue