You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
tui-capture: --tui-config overlay is shadowed by same-ID global plugin; add isolated config mode #34712
opencode-test-helper.sh tui-capture --tui-config <overlay> cannot verify a worktree copy of the aidevops V1 TUI plugin. OpenCode merges OPENCODE_TUI_CONFIG with the global ~/.config/opencode/tui.json. Both entries register plugin ID aidevops-tui, so the deployed copy wins and the capture renders the old sidebar without any error.
With an overlay listing only the worktree v1-tui/tui.tsx, the capture rendered the deployed footer and MCP section but not the new Prompts section: --expect Prompts failed.
Rerunning with env XDG_CONFIG_HOME=<temp dir containing opencode/tui.json> rendered ▼ Prompts and passed.
Files
.agents/scripts/opencode-tui-capture.py:93-94 sets OPENCODE_TUI_CONFIG. Option A: add --isolated-config, which writes the overlay as <temp>/opencode/tui.json and sets XDG_CONFIG_HOME for the child only.
.agents/tools/terminal/terminal-title.md:88 (Live-verifying TUI plugin changes) should state that same-ID plugins in the global config shadow overlay entries, and document the isolated route.
Also note there: project data DBs can be very large (one was 84 GB), and the read-only snapshot step then exceeds a 120 s budget. Prefer a small project data dir via --cwd/--data-dir.
Verification
opencode-test-helper.sh tui-capture with the isolated option, run against a worktree plugin whose visible text differs from the deployed copy, passes --expect <new text>. The existing overlay mode is unchanged.
aidevops.sh v3.39.31 plugin for OpenCode v1.19.0 with claude-opus-5-5 spent 1h 43m and 135,996 tokens on this with the user in an interactive session.
Files Scope
.agents/scripts/opencode-tui-capture.py
.agents/scripts/opencode-test-helper.sh
.agents/tools/terminal/terminal-title.md
The shell helper forwards capture options unchanged; update its help for discoverability. Verify with Python syntax/static checks, ShellCheck, and a bounded OpenCode 1.19.0 capture using a small temporary session database and an absolute worktree plugin path. Preserve the existing overlay mode.
Reactions are currently unavailable
Activity
Repository owner locked as resolved and limited conversation to collaborators on Oct 14, 2026
Resolves #34712. Added opt-in child-only isolated TUI configuration so a global same-ID plugin cannot shadow a worktree plugin. Updated CLI help and documented isolation boundaries, absolute plugin paths and large SQLite snapshot budgets.
Runtime-verified on OpenCode 1.19.0: controlled same-ID global plugin renders in normal overlay mode; isolated mode renders Prompts and AIDevOps from the actual worktree plugin; inherited overlay mode also passes. Missing-overlay isolation validation exits 2. Python/Bash syntax, ShellCheck, diff whitespace, pre-commit and push-time Bun typecheck passed. Temporary test DB/config only; no live global config/session data edited.
Decisions
Isolation is opt-in and child-only. Copied overlays require absolute plugin paths; project config and other inherited overrides remain active. No dependencies, release or publication changes.
aidevops.sh v3.39.31 plugin for OpenCode v1.19.0 with gpt-6.1-sol spent 6m and 82,513 tokens on this as a headless worker.
Merged via PR #34716 to main. Merged by deterministic merge pass (pulse-wrapper.sh).
Activity
alex-solovyev commentedon Oct 14, 2026
DISPATCH_CLAIM nonce=daf9696ca4d134c323649da2708bcb63 runner=alex-solovyev ts=2026-10-14T23:32:56Z max_age_s=1800 version=3.39.31 opencode_version=1.18.34 lease_token=daf9696ca4d134c323649da2708bcb63 device=device-1783824075-2103358-6141 session=issue-34712 phase=prelaunch expires_at=1792020901
aidevops.sh v3.39.31 plugin for OpenCode v1.18.34
vladimirdulov commentedon Oct 14, 2026
DISPATCH_CLAIM nonce=9216b61297c2118e2fc6180c1edba37d runner=vladimirdulov ts=2026-10-14T23:37:40Z max_age_s=1800 version=3.39.31 opencode_version=1.19.0 lease_token=9216b61297c2118e2fc6180c1edba37d device=device-1791387943-2519751-22989 session=issue-34712 phase=prelaunch expires_at=1792021180
vladimirdulov commentedon Oct 14, 2026
DISPATCH_LEASE phase=prelaunch lease_token=9216b61297c2118e2fc6180c1edba37d device=device-1791387943-2519751-22989 session=issue-34712 expires_at=1792021522 ts=2026-10-14T23:37:52Z attempt_id=attempt:acdc7cbd-1dac-4c87-a6cb-54b444949dbb
vladimirdulov commentedon Oct 14, 2026
Dispatching worker (deterministic).
vladimirdulov commentedon Oct 14, 2026
DISPATCH_LEASE phase=ready lease_token=9216b61297c2118e2fc6180c1edba37d device=device-1791387943-2519751-22989 session=issue-34712 expires_at=1792028299 ts=2026-10-14T23:38:19Z attempt_id=attempt:acdc7cbd-1dac-4c87-a6cb-54b444949dbb
aidevops.sh v3.39.31 automated scan.
vladimirdulov commentedon Oct 14, 2026
CLAIM_RELEASED reason=worker_complete runner=vladimirdulov ts=2026-10-14T23:47:15Z aidevops_version=3.39.31 opencode_version=1.15.10
aidevops.sh v3.39.31 plugin for OpenCode v1.15.10
vladimirdulov commentedon Oct 14, 2026
DISPATCH_LEASE phase=terminal lease_token=9216b61297c2118e2fc6180c1edba37d device=device-1791387943-2519751-22989 session=issue-34712 expires_at=0 ts=2026-10-14T23:48:13Z attempt_id=attempt:acdc7cbd-1dac-4c87-a6cb-54b444949dbb
aidevops.sh v3.39.31 automated scan.
alex-solovyev commentedon Oct 15, 2026
Summary
Resolves #34712. Added opt-in child-only isolated TUI configuration so a global same-ID plugin cannot shadow a worktree plugin. Updated CLI help and documented isolation boundaries, absolute plugin paths and large SQLite snapshot budgets.
Verification
Exact head:
0d1391e88a1ab36ff8d61be77a46de1bc08a5d7d.Runtime-verified on OpenCode 1.19.0: controlled same-ID global plugin renders in normal overlay mode; isolated mode renders Prompts and AIDevOps from the actual worktree plugin; inherited overlay mode also passes. Missing-overlay isolation validation exits 2. Python/Bash syntax, ShellCheck, diff whitespace, pre-commit and push-time Bun typecheck passed. Temporary test DB/config only; no live global config/session data edited.
Decisions
Isolation is opt-in and child-only. Copied overlays require absolute plugin paths; project config and other inherited overrides remain active. No dependencies, release or publication changes.
aidevops.sh v3.39.31 plugin for OpenCode v1.19.0 with gpt-6.1-sol spent 6m and 82,513 tokens on this as a headless worker.
Merged via PR #34716 to main.
Merged by deterministic merge pass (pulse-wrapper.sh).