Repository navigation
Conversation
|
Thank you for your attention and contribution! We will schedule an internal review of this PR, and we will share any feedback right here. |
Signed-off-by: diqierjia <jiahongcheng61@gmail.com>
e55629c to
e73c567
Compare
|
Updated on 2026-08-20.
|
|
GitHub Actions has created run 32346604890 for head |
Review: the durable outbox still has an accepted-write / mark crash window🔴 Blocking if this PR claims restart-safe duplicate prevention for L0 capture. The filesystem outbox and cross-process claim correctly serialize live plugin processes, but Failure sequence
The local claim file cannot distinguish step 2 from a failed request after the process has died, so this produces duplicated L0 data (and can re-run downstream extraction). The same acknowledgement gap exists for the optional Skill pipeline. Required changePlease make the adapter depend on the server-side idempotency contract in #1142 (or an equivalent merged Gateway contract), then include the deterministic turn key in the L0 request: await this.post("/v3/conversation/add", {
...this.isolation(turn.sessionId),
idempotency_key: turn.key,
messages: [...],
});The server must treat the identity as tenant-scoped and return the original successful result for an equal-payload replay; a same-key/different-payload replay must fail clearly. Until that contract is available, please document this PR as at-least-once delivery rather than durable deduplication. Regression coverageAdd a crash-window contract test that simulates:
Assert that both attempts carry the same This is the remaining boundary identified by #1087: a client-side outbox provides delivery recovery, but only the Gateway can make an accepted write retry-safe. |
|
|
Thanks! See you on #1181. |
Description
Adds a native OpenCode adapter for TencentDB Agent Memory with automatic L0/L1/Core/Skill recall, durable completed-turn capture, five native tools, fail-open behavior, and a source-first one-command installation flow that does not depend on an unpublished npm package.
Related Issue
Related to #926
Change Type
What is covered
tool()API and lifecycle hooks (chat.message, system transform,session.idle).Verification
Local deterministic checks:
Isolated new-user acceptance on Windows:
A redacted 15-second H.264 recording and sanitized logs are available for upload with the PR.
Self-test Checklist
Additional Notes
The documented installation path is source-based while the package remains unpublished. Users fill one ignored Gateway
.envfile, then give OpenCode the checked-in self-install instruction; the installer builds the adapter, starts the local Gateway, installs the private loader, and verifies health without copying model keys into OpenCode configuration.