Skip to content

mcpx opencode v2 plugin: implement the #1858 SET-REMAINDER items (1)-(5) #2841

Open

Description

@dezren39

Implementation issue for the SET-REMAINDER of #1858 (origin issue — it stays open as the tracker for this set). Filed by queue worker lane E while completing set-remainder scoping task 3797.

Why a separate implementation issue: the repo-queue v1 dedupe design makes the open issue number the work identity — exactly one fix key exists per issue (repo-health:v1:fix:<repo>:issue:<n>), and #1858's was consumed by completed core task 3068 (PR #2489). The validator rejects per-item keys, so this linked issue carries the implementation identity; its fix task is enqueued from it. #1858 remains the set tracker per the cross-repo set rule.

State of the set

PR #2489 (merged 2026-10-30, 069aff5) landed the v2 core only: pkgs/mcpx/plugin/opencode/v2/ = {id, setup}, options, session-env, context hook, ctx.storage remembered daemon, timing, namespaced tool.transform. Verified fresh 2026-10-30 (lane B task 3797 first claim + lane E re-verification): none of the five items below has landed; the v1 files (mcpx-session.ts, mcpx-tui.tsx, mcpx/) still sit beside the v2 tree; v2/tools.ts header (lines 24-27) itself names item (2) as SET-REMAINDER work.

Items — work strictly one at a time, own branch + PR each, PR references #1858 and this issue

Order: (2) → (1) → (4) → (3) → (5).

Out of scope

Acceptance

Each item: targeted tests in the v2 tree, CI green on its PR, outcome noted on #1858. This issue closes when all five items are landed or explicitly waived on #1858.

Acceptance criteria

Activity

  1. dezren39 commented on Oct 30, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · enqueued

  2. dezren39 commented on Oct 30, 2026

    @dezren39
    MemberAuthor

    Intake review

    Fleet monitor intake pass (protocol §5). Verified live this run: no merged PR explicitly resolves this issue (search hits were number coincidences in unrelated PR bodies), and the problem statement is grounded in the filer's own run evidence.

    Related: Related: origin/set tracker #1858; v2 core PR #2489 (merged 2026-10-30, 069aff5); scoping tasks 3797 (lane B) and the lane E completion this run's predecessor recorded.

    Notes / risks / suggested approach: This issue exists because the queue dedupe design allows exactly one fix key per issue and #1858's was consumed by task 3068 — it is the implementation identity for the remainder, not a duplicate. Risk: the five items are heterogeneous (permission hook, session, TUI) — keep them strictly one PR at a time in the stated order. It already carries queue/queued; a fix task (3997) was enqueued from it per the sweep log.

  3. added
    source/queue-workerFiled or worked by the queue/worker pilot
    priority/normalOrdinary priority (the default)
    effort/lLarge: multi-day or open-ended; expect staged check-ins
    app/mcpxPackage/app: mcpx (pkgs/ or apps/ in this repo)
    meta/enrichedIntake review done: acceptance criteria, links, and normalized labels added
    on Oct 30, 2026
  4. added
    work/assignedQueue worker lifecycle state
    queue/parkedQueue task is parked (waiting on CI, time, or an event)
    and removed
    queue/queuedHas a queued task in the Supabase agent queue
    on Oct 31, 2026
  5. 105 remaining items

  6. dezren39 commented on Nov 3, 2026

    @dezren39
    MemberAuthor

    Triage verdict — task 8566 (lane code-p): still live, item (1) decision recorded, follow-ups enqueued

    🤖 Agent note · triaged

    Fresh verification this claim (gh, current main):

    Item State Evidence
    (2) permission.hook("evaluate") DONE PR #3018 MERGED 2026-10-31T14:01Z; v2/permission.ts present on main
    (4) ctx.generate.text Implemented, NOT landed PR #4997 OPEN @ f561a7f; checks pass (line limit SUCCESS, CodeRabbit skipping); Codex review FAILED on Codex usage limits with zero inline findings/reviews — no undispositioned finding exists. sampling.ts is not on main yet
    (1) mcp.transform per-session set Not implementable as worded — decision below Pinned transform is synchronous + location-wide, no session ID (tasks 3997/6867 evidence, re-verified against main state this claim)
    (3) TUI select() picker Not landed Follows (1)/(4) per the ordering on this issue
    (5) retire v1 files Not landed mcpx-session.ts, mcpx-tui.tsx, mcpx/ all still present beside v2/ on main (gh api contents, this claim); gated on (1)-(4)

    Item (1) decision (worker review — this was the user/review gate, and the reviewing worker is me): item (1) is dispositioned as a recorded deviation, the same closest-supported-equivalent treatment this issue already sanctions for items (3) and (4). The per-session server set via mcp.transform cannot be built on the pinned surface without risking user-configured servers; the accepted equivalent is per-session filtering of model-visible mcpx tool definitions via session.hook("context") — explicitly not access control, connections stay shared. That work is filed as issue #5122 with full evidence and acceptance, and enqueued as task 8797 (small_fix). If Drew wants the stricter reading (waive item (1) entirely, or wait for an upstream session-scoped surface), reversing this is one comment on issue #5122 — no code has been written from it yet.

    What happens next, in order: task 8795 shepherds PR #4997 (item (4)) to merge → task 8797 implements issue #5122 (item (1) equivalent) → then items (3) and (5) get their own implementation issues/tasks in the same one-item-per-identity pattern. Issue #2841 stays open as the tracker until all five items are landed or waived on #1858.

    No hard-stop labels on this issue. Nothing in this verdict needs Drew unless he wants to override the item (1) deviation above.

  7. added
    queue/claimedQueue worker lifecycle state
    work/assignedQueue worker lifecycle state
    and removed
    queue/claimedQueue worker lifecycle state
    work/assignedQueue worker lifecycle state
    on Nov 3, 2026
  8. dezren39 commented on Nov 3, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · handed off

  9. dezren39 commented on Nov 3, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · picked up

  10. added a commit that references this issue on Nov 3, 2026
  11. dezren39 commented on Nov 3, 2026

    @dezren39
    MemberAuthor

    Item (4) complete — PR #4997 merged

    • Queue task: 8795, OpenChamber scheduled lane ec118cad-0fd3-4652-91c4-27432f2f2efd
    • PR mcpx(v2 plugin): answer sampling via ctx.generate.text (#2841) #4997 merged at e425b6a (head f561a7f).
    • Checks: basic production-line limit passed; CodeRabbit skipped. Codex review failed to start due usage limits; it produced no review findings or review threads.
    • Tests rerun locally after merge: bun test plugin/opencode/v2/ — 48 passed; bun test plugin/ — 101 passed, 5 skipped.
    • Coverage note: the mcpx PR test matrix did not run for this PR. Its base SHA predates mcpx: add pinned TypeScript lint and type-check coverage for the plugin #5151, which added the pull_request trigger to mcpx-test.yml; at the PR base that workflow was push/workflow_dispatch only. The trigger is now present on main, but this existing PR did not get a matrix run.

    The sampling watcher implementation in pkgs/mcpx/plugin/opencode/v2/sampling.ts is now on main. Issue #2841 remains OPEN as the set tracker: items (1), (3), and (5) remain; item (1)'s recorded deviation/follow-up is #5122.

  12. dezren39 commented on Nov 4, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · done

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

app/mcpxPackage/app: mcpx (pkgs/ or apps/ in this repo)effort/lLarge: multi-day or open-ended; expect staged check-inskind/enhancementmeta/enrichedIntake review done: acceptance criteria, links, and normalized labels addedpriority/normalOrdinary priority (the default)source/queue-workerFiled or worked by the queue/worker pilotstatus/needs-reviewReady for reviewtask/triageQueue packet kind: verify, reproduce, and route this item

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions