From 5430ed3c1bc19c9736232c23ffe071cde558a648 Mon Sep 17 00:00:00 2001 From: NagyVikt Date: Fri, 15 May 2026 14:28:12 +0200 Subject: [PATCH] Make pane context menu transparent --- .../.openspec.yaml | 2 + .../proposal.md | 24 ++ .../spec.md | 26 +++ .../tasks.md | 34 +++ .../README.md | 30 +++ .../architect/.openspec.yaml | 9 + .../architect/README.md | 12 + .../architect/prompt.md | 34 +++ .../architect/proposal.md | 15 ++ .../architect/specs/architect/spec.md | 10 + .../architect/tasks.md | 33 +++ .../checkpoints.md | 4 + .../coordinator-prompt.md | 41 ++++ .../critic/.openspec.yaml | 9 + .../critic/README.md | 12 + .../critic/prompt.md | 34 +++ .../critic/proposal.md | 15 ++ .../critic/specs/critic/spec.md | 10 + .../critic/tasks.md | 33 +++ .../executor/.openspec.yaml | 9 + .../executor/README.md | 12 + .../executor/checkpoints.md | 4 + .../executor/prompt.md | 34 +++ .../executor/proposal.md | 15 ++ .../executor/specs/executor/spec.md | 10 + .../executor/tasks.md | 33 +++ .../kickoff-prompts.md | 108 +++++++++ .../open-questions.md | 6 + .../phases.md | 15 ++ .../planner/.openspec.yaml | 9 + .../planner/README.md | 12 + .../planner/plan.md | 65 ++++++ .../planner/prompt.md | 34 +++ .../planner/proposal.md | 15 ++ .../planner/specs/planner/spec.md | 10 + .../planner/tasks.md | 33 +++ .../summary.md | 8 + .../verifier/.openspec.yaml | 9 + .../verifier/README.md | 12 + .../verifier/prompt.md | 34 +++ .../verifier/proposal.md | 15 ++ .../verifier/specs/verifier/spec.md | 10 + .../verifier/tasks.md | 33 +++ .../writer/.openspec.yaml | 9 + .../writer/README.md | 12 + .../writer/prompt.md | 34 +++ .../writer/proposal.md | 15 ++ .../writer/specs/writer/spec.md | 10 + .../writer/tasks.md | 33 +++ scripts/codex-fleet/bin/pane-context-menu.sh | 210 +++++++++++------- 50 files changed, 1175 insertions(+), 80 deletions(-) create mode 100644 openspec/changes/agent-codex-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/.openspec.yaml create mode 100644 openspec/changes/agent-codex-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/proposal.md create mode 100644 openspec/changes/agent-codex-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/specs/glass-pane-action-menu-transparent-chrome-fg-only-ansi-ios-blue-focus-underline/spec.md create mode 100644 openspec/changes/agent-codex-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/tasks.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/README.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/.openspec.yaml create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/README.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/prompt.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/proposal.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/specs/architect/spec.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/tasks.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/checkpoints.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/coordinator-prompt.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/.openspec.yaml create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/README.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/prompt.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/proposal.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/specs/critic/spec.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/tasks.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/.openspec.yaml create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/README.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/checkpoints.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/prompt.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/proposal.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/specs/executor/spec.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/tasks.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/kickoff-prompts.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/open-questions.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/phases.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/.openspec.yaml create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/README.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/plan.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/prompt.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/proposal.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/specs/planner/spec.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/tasks.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/summary.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/.openspec.yaml create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/README.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/prompt.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/proposal.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/specs/verifier/spec.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/tasks.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/.openspec.yaml create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/README.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/prompt.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/proposal.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/specs/writer/spec.md create mode 100644 openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/tasks.md diff --git a/openspec/changes/agent-codex-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/.openspec.yaml b/openspec/changes/agent-codex-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/.openspec.yaml new file mode 100644 index 0000000..9f70866 --- /dev/null +++ b/openspec/changes/agent-codex-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/.openspec.yaml @@ -0,0 +1,2 @@ +schema: spec-driven +created: 2026-05-15 diff --git a/openspec/changes/agent-codex-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/proposal.md b/openspec/changes/agent-codex-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/proposal.md new file mode 100644 index 0000000..b5407ee --- /dev/null +++ b/openspec/changes/agent-codex-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/proposal.md @@ -0,0 +1,24 @@ +## Why + +- The pane right-click menu should read as glass over the live terminal, not as + a solid card that hides the underlying pane. +- Operators need a quick visual confirmation of the hotkey they just pressed + before the popup dispatches the action. + +## What Changes + +- Rework `scripts/codex-fleet/bin/pane-context-menu.sh` to render foreground-only + ANSI chrome with no solid background SGR output. +- Use iOS separator, label, secondary-label, success, danger, disabled, and blue + focus colors directly in the script without changing shared menu helpers. +- Replace bracket shortcut chips with dim foreground-only shortcut hints. +- Add an 80ms blue underline feedback flash for the selected hotkey row before + dispatch. +- Document a smoke-test command for capturing PR evidence. + +## Impact + +- Scope is limited to the bash fallback pane context menu. +- Shared `ios-menu.sh`, `help-popup.sh`, and tmux binding scripts are unchanged. +- Verification checks syntax, fg-only rendered output, focus underline output, + and OpenSpec validity. diff --git a/openspec/changes/agent-codex-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/specs/glass-pane-action-menu-transparent-chrome-fg-only-ansi-ios-blue-focus-underline/spec.md b/openspec/changes/agent-codex-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/specs/glass-pane-action-menu-transparent-chrome-fg-only-ansi-ios-blue-focus-underline/spec.md new file mode 100644 index 0000000..341f8eb --- /dev/null +++ b/openspec/changes/agent-codex-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/specs/glass-pane-action-menu-transparent-chrome-fg-only-ansi-ios-blue-focus-underline/spec.md @@ -0,0 +1,26 @@ +## ADDED Requirements + +### Requirement: Pane Context Menu Transparent Chrome +The pane context menu SHALL render its bash fallback chrome using foreground-only +ANSI color escapes so the tmux popup remains visually transparent over the +underlying pane. + +#### Scenario: Menu renders without solid backgrounds +- **WHEN** `scripts/codex-fleet/bin/pane-context-menu.sh` renders the popup +- **THEN** the emitted menu chrome uses `38;2;R;G;B` foreground color escapes +- **AND** the emitted menu chrome does not use `48;2;R;G;B` background color escapes. + +#### Scenario: Menu colors match the requested iOS tones +- **WHEN** the menu renders normal, disabled, danger, header, and divider rows +- **THEN** dividers use `#3A3A3C` +- **AND** normal labels use `#FFFFFF` +- **AND** normal icons use `#8E8E93` +- **AND** shortcut text uses `#AEAEB2` +- **AND** disabled rows use `#48484A` +- **AND** danger rows use `#FF3B30` +- **AND** the header dot and `LIVE` text use `#34C759`. + +#### Scenario: Hotkey feedback flashes before dispatch +- **WHEN** the operator presses a recognized hotkey +- **THEN** the matching row is re-rendered briefly with iOS-blue underline +- **AND** the popup clears before dispatching the selected action. diff --git a/openspec/changes/agent-codex-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/tasks.md b/openspec/changes/agent-codex-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/tasks.md new file mode 100644 index 0000000..2a25834 --- /dev/null +++ b/openspec/changes/agent-codex-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/tasks.md @@ -0,0 +1,34 @@ +## Definition of Done + +This change is complete only when **all** of the following are true: + +- Every checkbox below is checked. +- The agent branch reaches `MERGED` state on `origin` and the PR URL + state are recorded in the completion handoff. +- If any step blocks (test failure, conflict, ambiguous result), append a `BLOCKED:` line under section 4 explaining the blocker and **STOP**. Do not tick remaining cleanup boxes; do not silently skip the cleanup pipeline. + +## Handoff + +- Handoff: change=`agent-codex-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21`; branch=`agent//`; scope=`TODO`; action=`continue this sandbox or finish cleanup after a usage-limit/manual takeover`. +- Copy prompt: Continue `agent-codex-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21` on branch `agent//`. Work inside the existing sandbox, review `openspec/changes/agent-codex-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/tasks.md`, continue from the current state instead of creating a new sandbox, and when the work is done run `gx branch finish --branch agent// --base dev --via-pr --wait-for-merge --cleanup`. + +## 1. Specification + +- [x] 1.1 Finalize proposal scope and acceptance criteria for `agent-codex-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21`. +- [x] 1.2 Define normative requirements in `specs/glass-pane-action-menu-transparent-chrome-fg-only-ansi-ios-blue-focus-underline/spec.md`. + +## 2. Implementation + +- [x] 2.1 Implement scoped behavior changes. +- [x] 2.2 Add/update focused regression coverage. + +## 3. Verification + +- [x] 3.1 Run targeted project verification commands. +- [x] 3.2 Run `openspec validate agent-codex-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21 --type change --strict`. +- [x] 3.3 Run `openspec validate --specs`. + +## 4. Cleanup (mandatory; run before claiming completion) + +- [ ] 4.1 Run the cleanup pipeline: `gx branch finish --branch agent// --base dev --via-pr --wait-for-merge --cleanup`. This handles commit -> push -> PR create -> merge wait -> worktree prune in one invocation. +- [ ] 4.2 Record the PR URL and final merge state (`MERGED`) in the completion handoff. +- [ ] 4.3 Confirm the sandbox worktree is gone (`git worktree list` no longer shows the agent path; `git branch -a` shows no surviving local/remote refs for the branch). diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/README.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/README.md new file mode 100644 index 0000000..bf22d1b --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/README.md @@ -0,0 +1,30 @@ +# Plan Workspace: agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21 + +This folder stores durable planning artifacts before implementation changes. + +## Shared files +- `summary.md` +- `checkpoints.md` +- `phases.md` +- `open-questions.md` +- `coordinator-prompt.md` +- `kickoff-prompts.md` + +## Role folders +- `planner/` +- `architect/` +- `critic/` +- `executor/` +- `writer/` +- `verifier/` + +When Codex or Claude hits an unresolved question that should survive chat, add it to `open-questions.md` as an unchecked `- [ ]` item. + +Each role folder contains OpenSpec-style artifacts: +- `.openspec.yaml` +- `prompt.md` (copy/paste role prompt) +- `proposal.md` +- `tasks.md` (Spec / Tests / Implementation / Checkpoints checklists) +- `specs//spec.md` +Planner also gets `plan.md`; executor also gets `checkpoints.md`. +Planner plans should follow `openspec/plan/PLANS.md`. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/.openspec.yaml b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/.openspec.yaml new file mode 100644 index 0000000..b6b23da --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/.openspec.yaml @@ -0,0 +1,9 @@ +schema: 1 +plan: agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21 +role: architect +status: draft +artifacts: + prompt: prompt.md + proposal: proposal.md + tasks: tasks.md + spec: specs/architect/spec.md diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/README.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/README.md new file mode 100644 index 0000000..1e1c275 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/README.md @@ -0,0 +1,12 @@ +# architect + +Role workspace for `architect`. + +Default artifacts: +- `.openspec.yaml` +- `prompt.md` +- `proposal.md` +- `tasks.md` +- `specs//spec.md` + +Use this folder for role notes, artifacts, and status updates. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/prompt.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/prompt.md new file mode 100644 index 0000000..9dbfb6b --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/prompt.md @@ -0,0 +1,34 @@ +# architect Prompt + +You are the `architect` role for OpenSpec plan `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21`. + +## Objective + +Complete only this role's assigned checklist and leave compact evidence for the coordinator. + +## Source of truth + +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/summary.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/checkpoints.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/open-questions.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/tasks.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/proposal.md` + +## Before edits + +1. Confirm branch/worktree with `git status --short --branch`. +2. Claim every touched file before editing: + - Prefer Colony `task_claim_file` when an active task exists. + - Otherwise run `gx locks claim --branch `. +3. Stay inside assigned files/modules; coordinate before touching shared paths. + +## Working rules + +- Update `architect/tasks.md` as each item completes. +- Record durable unresolved questions in `open-questions.md`. +- Keep handoffs short: files changed, behavior touched, verification, risks. +- Do not revert another agent's edits. + +## Cleanup + +Only the owner/finalizer lane runs `gx branch finish --branch --base dev --via-pr --wait-for-merge --cleanup`. If blocked, append `BLOCKED:` with branch, task, blocker, next, evidence. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/proposal.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/proposal.md new file mode 100644 index 0000000..72bdd38 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/proposal.md @@ -0,0 +1,15 @@ +# Proposal: architect (agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21) + +## Why + +Summarize why this role's work is required for plan `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21`. + +## What Changes + +- [ ] List the planned role-specific changes + +## Impact + +- Scope: +- Risks: +- Dependencies: diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/specs/architect/spec.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/specs/architect/spec.md new file mode 100644 index 0000000..55a1a27 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/specs/architect/spec.md @@ -0,0 +1,10 @@ +# Capability Spec: architect + +## ADDED Requirements + +### Requirement: architect responsibilities for `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21` +This role MUST define and deliver its scoped outputs with evidence. + +#### Scenario: Role executes assigned scope +- **WHEN** the role begins execution for `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21` +- **THEN** it follows `tasks.md` and records evidence for completion diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/tasks.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/tasks.md new file mode 100644 index 0000000..c63f888 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/architect/tasks.md @@ -0,0 +1,33 @@ +# architect tasks + +## 1. Spec + +- [ ] 1.1 Define ownership boundaries, interfaces, and artifact responsibilities for `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21` +- [ ] 1.2 Validate architecture constraints and non-functional requirements coverage + +## 2. Tests + +- [ ] 2.1 Define architectural verification checkpoints (integration boundaries, failure modes, compatibility) +- [ ] 2.2 Validate that acceptance criteria map to concrete architecture decisions + +## 3. Implementation + +- [ ] 3.1 Review plan for strongest antithesis/tradeoff tensions +- [ ] 3.2 Propose synthesis path and guardrails for implementation teams +- [ ] 3.3 Record architecture sign-off notes for downstream execution + +## 4. Checkpoints + +- [ ] [A1] READY - Architecture review checkpoint + +## 5. Collaboration + +- [ ] 5.1 Owner recorded this lane before edits. +- [ ] 5.2 Record joined agents / handoffs, or mark `N/A` when solo. +- [ ] 5.3 Record unresolved plan questions in `../open-questions.md`, or mark `N/A` when none. + +## 6. Cleanup + +- [ ] 6.1 If this lane owns finalization, run `gx branch finish --branch --base dev --via-pr --wait-for-merge --cleanup`. +- [ ] 6.2 Record PR URL + final `MERGED` state in the handoff. +- [ ] 6.3 Confirm sandbox cleanup (`git worktree list`, `git branch -a`) or append `BLOCKED:` and stop. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/checkpoints.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/checkpoints.md new file mode 100644 index 0000000..ac1030a --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/checkpoints.md @@ -0,0 +1,4 @@ +# Plan Checkpoints: agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21 + +Chronological checkpoint log for all roles. + diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/coordinator-prompt.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/coordinator-prompt.md new file mode 100644 index 0000000..bb27eab --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/coordinator-prompt.md @@ -0,0 +1,41 @@ +# Master Coordinator Prompt + +You are the coordinator for plan `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21`. + +## Objective + +Drive this plan from draft to execution-ready status with strict checkpoint discipline and no scope drift. + +## Source-of-truth artifacts + +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/summary.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/checkpoints.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/open-questions.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/plan.md` +- role `prompt.md` files for copy/paste helper startup +- role `tasks.md` files for planner/architect/critic/executor/writer/verifier + +## Coordinator responsibilities + +1. Keep checkpoints current in each role `tasks.md` and root `checkpoints.md`. +2. Route unresolved questions and branching decisions into `open-questions.md`. +3. Ensure each role has explicit acceptance criteria and verification evidence. +4. Prevent implementation from starting before planning gates are complete. +5. Keep handoffs concise: files changed, behavior touched, verification output, risks. + +## Wave-splitting decision (optional) + +Create wave prompts in `kickoff-prompts.md` only when at least one applies: + +- 3+ independent implementation lanes can run in parallel. +- Runtime cutover/rollback sequencing needs explicit lane ownership. +- Risk is high enough that bounded execution packets reduce coordination mistakes. + +If wave splitting is not needed, keep execution under a single owner with normal role checkpoints. + +## Exit criteria + +- All role checkpoints required for planning are done. +- Execution lanes (if any) have clear ownership boundaries. +- `open-questions.md` captures unresolved decisions that still need answers. +- Verification plan and rollback expectations are explicit and testable. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/.openspec.yaml b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/.openspec.yaml new file mode 100644 index 0000000..e9a27da --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/.openspec.yaml @@ -0,0 +1,9 @@ +schema: 1 +plan: agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21 +role: critic +status: draft +artifacts: + prompt: prompt.md + proposal: proposal.md + tasks: tasks.md + spec: specs/critic/spec.md diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/README.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/README.md new file mode 100644 index 0000000..5b5c877 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/README.md @@ -0,0 +1,12 @@ +# critic + +Role workspace for `critic`. + +Default artifacts: +- `.openspec.yaml` +- `prompt.md` +- `proposal.md` +- `tasks.md` +- `specs//spec.md` + +Use this folder for role notes, artifacts, and status updates. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/prompt.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/prompt.md new file mode 100644 index 0000000..88018e3 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/prompt.md @@ -0,0 +1,34 @@ +# critic Prompt + +You are the `critic` role for OpenSpec plan `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21`. + +## Objective + +Complete only this role's assigned checklist and leave compact evidence for the coordinator. + +## Source of truth + +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/summary.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/checkpoints.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/open-questions.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/tasks.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/proposal.md` + +## Before edits + +1. Confirm branch/worktree with `git status --short --branch`. +2. Claim every touched file before editing: + - Prefer Colony `task_claim_file` when an active task exists. + - Otherwise run `gx locks claim --branch `. +3. Stay inside assigned files/modules; coordinate before touching shared paths. + +## Working rules + +- Update `critic/tasks.md` as each item completes. +- Record durable unresolved questions in `open-questions.md`. +- Keep handoffs short: files changed, behavior touched, verification, risks. +- Do not revert another agent's edits. + +## Cleanup + +Only the owner/finalizer lane runs `gx branch finish --branch --base dev --via-pr --wait-for-merge --cleanup`. If blocked, append `BLOCKED:` with branch, task, blocker, next, evidence. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/proposal.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/proposal.md new file mode 100644 index 0000000..e6b8d3d --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/proposal.md @@ -0,0 +1,15 @@ +# Proposal: critic (agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21) + +## Why + +Summarize why this role's work is required for plan `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21`. + +## What Changes + +- [ ] List the planned role-specific changes + +## Impact + +- Scope: +- Risks: +- Dependencies: diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/specs/critic/spec.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/specs/critic/spec.md new file mode 100644 index 0000000..a079ab4 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/specs/critic/spec.md @@ -0,0 +1,10 @@ +# Capability Spec: critic + +## ADDED Requirements + +### Requirement: critic responsibilities for `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21` +This role MUST define and deliver its scoped outputs with evidence. + +#### Scenario: Role executes assigned scope +- **WHEN** the role begins execution for `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21` +- **THEN** it follows `tasks.md` and records evidence for completion diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/tasks.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/tasks.md new file mode 100644 index 0000000..6b455a2 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/critic/tasks.md @@ -0,0 +1,33 @@ +# critic tasks + +## 1. Spec + +- [ ] 1.1 Validate principle-driver-option consistency across the plan +- [ ] 1.2 Validate risks, consequences, and mitigation clarity (including idempotency expectations) + +## 2. Tests + +- [ ] 2.1 Validate testability and measurability of all acceptance criteria +- [ ] 2.2 Validate verification steps are concrete and reproducible + +## 3. Implementation + +- [ ] 3.1 Produce verdict (APPROVE / ITERATE / REJECT) with actionable feedback +- [ ] 3.2 Confirm revised drafts resolve prior findings before approval +- [ ] 3.3 Publish final quality/risk sign-off notes + +## 4. Checkpoints + +- [ ] [C1] READY - Quality gate checkpoint + +## 5. Collaboration + +- [ ] 5.1 Owner recorded this lane before edits. +- [ ] 5.2 Record joined agents / handoffs, or mark `N/A` when solo. +- [ ] 5.3 Record unresolved plan questions in `../open-questions.md`, or mark `N/A` when none. + +## 6. Cleanup + +- [ ] 6.1 If this lane owns finalization, run `gx branch finish --branch --base dev --via-pr --wait-for-merge --cleanup`. +- [ ] 6.2 Record PR URL + final `MERGED` state in the handoff. +- [ ] 6.3 Confirm sandbox cleanup (`git worktree list`, `git branch -a`) or append `BLOCKED:` and stop. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/.openspec.yaml b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/.openspec.yaml new file mode 100644 index 0000000..db5541f --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/.openspec.yaml @@ -0,0 +1,9 @@ +schema: 1 +plan: agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21 +role: executor +status: draft +artifacts: + prompt: prompt.md + proposal: proposal.md + tasks: tasks.md + spec: specs/executor/spec.md diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/README.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/README.md new file mode 100644 index 0000000..62b95ee --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/README.md @@ -0,0 +1,12 @@ +# executor + +Role workspace for `executor`. + +Default artifacts: +- `.openspec.yaml` +- `prompt.md` +- `proposal.md` +- `tasks.md` +- `specs//spec.md` + +Use this folder for role notes, artifacts, and status updates. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/checkpoints.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/checkpoints.md new file mode 100644 index 0000000..7faa673 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/checkpoints.md @@ -0,0 +1,4 @@ +# executor checkpoints + +Timestamped execution checkpoints for `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21`. + diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/prompt.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/prompt.md new file mode 100644 index 0000000..ff4e127 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/prompt.md @@ -0,0 +1,34 @@ +# executor Prompt + +You are the `executor` role for OpenSpec plan `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21`. + +## Objective + +Complete only this role's assigned checklist and leave compact evidence for the coordinator. + +## Source of truth + +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/summary.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/checkpoints.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/open-questions.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/tasks.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/proposal.md` + +## Before edits + +1. Confirm branch/worktree with `git status --short --branch`. +2. Claim every touched file before editing: + - Prefer Colony `task_claim_file` when an active task exists. + - Otherwise run `gx locks claim --branch `. +3. Stay inside assigned files/modules; coordinate before touching shared paths. + +## Working rules + +- Update `executor/tasks.md` as each item completes. +- Record durable unresolved questions in `open-questions.md`. +- Keep handoffs short: files changed, behavior touched, verification, risks. +- Do not revert another agent's edits. + +## Cleanup + +Only the owner/finalizer lane runs `gx branch finish --branch --base dev --via-pr --wait-for-merge --cleanup`. If blocked, append `BLOCKED:` with branch, task, blocker, next, evidence. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/proposal.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/proposal.md new file mode 100644 index 0000000..fb0fb7e --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/proposal.md @@ -0,0 +1,15 @@ +# Proposal: executor (agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21) + +## Why + +Summarize why this role's work is required for plan `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21`. + +## What Changes + +- [ ] List the planned role-specific changes + +## Impact + +- Scope: +- Risks: +- Dependencies: diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/specs/executor/spec.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/specs/executor/spec.md new file mode 100644 index 0000000..664e0d4 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/specs/executor/spec.md @@ -0,0 +1,10 @@ +# Capability Spec: executor + +## ADDED Requirements + +### Requirement: executor responsibilities for `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21` +This role MUST define and deliver its scoped outputs with evidence. + +#### Scenario: Role executes assigned scope +- **WHEN** the role begins execution for `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21` +- **THEN** it follows `tasks.md` and records evidence for completion diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/tasks.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/tasks.md new file mode 100644 index 0000000..062ff29 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/executor/tasks.md @@ -0,0 +1,33 @@ +# executor tasks + +## 1. Spec + +- [ ] 1.1 Map approved plan requirements to concrete implementation work items +- [ ] 1.2 Validate touched components/files are explicitly listed before coding starts + +## 2. Tests + +- [ ] 2.1 Define test additions/updates required to lock intended behavior +- [ ] 2.2 Validate regression and smoke verification commands for delivery + +## 3. Implementation + +- [ ] 3.1 Execute implementation tasks in approved order +- [ ] 3.2 Keep progress and evidence linked back to plan checkpoints +- [ ] 3.3 Complete final verification bundle for handoff + +## 4. Checkpoints + +- [ ] [E1] READY - Execution start checkpoint + +## 5. Collaboration + +- [ ] 5.1 Owner recorded this lane before edits. +- [ ] 5.2 Record joined agents / handoffs, or mark `N/A` when solo. +- [ ] 5.3 Record unresolved plan questions in `../open-questions.md`, or mark `N/A` when none. + +## 6. Cleanup + +- [ ] 6.1 If this lane owns finalization, run `gx branch finish --branch --base dev --via-pr --wait-for-merge --cleanup`. +- [ ] 6.2 Record PR URL + final `MERGED` state in the handoff. +- [ ] 6.3 Confirm sandbox cleanup (`git worktree list`, `git branch -a`) or append `BLOCKED:` and stop. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/kickoff-prompts.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/kickoff-prompts.md new file mode 100644 index 0000000..731ee10 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/kickoff-prompts.md @@ -0,0 +1,108 @@ +# Kickoff Prompts (Copy/Paste) + +Use these only when the coordinator decides wave-splitting is needed. + +## Prompt A — Wave A (Primary lane) + +```text +You own Wave-A for plan `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21` in /home/deadpool/Documents/codex-lb. + +Goal: +Implement the assigned Wave-A scope and return verification evidence. + +Hard constraints: +- You are not alone in the codebase; do not revert others' work. +- Stay in your owned files/modules only. +- Record explicit handoff notes for integration. + +Owned scope: +- + +Verification: +- + +Handoff format: +- Files changed +- Behavior touched +- Verification outputs +- Risks/follow-ups +``` + +## Prompt B — Wave B (Secondary lane) + +```text +You own Wave-B for plan `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21` in /home/deadpool/Documents/codex-lb. + +Goal: +Implement the assigned Wave-B scope and return verification evidence. + +Hard constraints: +- You are not alone in the codebase; do not revert others' work. +- Stay in your owned files/modules only. +- Record explicit handoff notes for integration. + +Owned scope: +- + +Verification: +- + +Handoff format: +- Files changed +- Behavior touched +- Verification outputs +- Risks/follow-ups +``` + +## Prompt C — Wave C (Secondary lane) + +```text +You own Wave-C for plan `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21` in /home/deadpool/Documents/codex-lb. + +Goal: +Implement the assigned Wave-C scope and return verification evidence. + +Hard constraints: +- You are not alone in the codebase; do not revert others' work. +- Stay in your owned files/modules only. +- Record explicit handoff notes for integration. + +Owned scope: +- + +Verification: +- + +Handoff format: +- Files changed +- Behavior touched +- Verification outputs +- Risks/follow-ups +``` + +## Prompt D — Integrator lane + +```text +You are the integrator for plan `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21` in /home/deadpool/Documents/codex-lb. + +Goal: +Integrate completed waves, resolve conflicts, run final verification, and prepare rollout/cutover notes. + +Hard constraints: +- You are not alone in the codebase; do not revert others' work. +- Preserve safety-critical behavior unless explicitly planned and tested. +- Keep final output evidence-first. + +Owned scope: +- integration glue and shared touchpoints +- final validation + handoff summary + +Verification: +- + +Final report: +- Files changed +- Integration decisions +- Verification outputs +- Remaining risks +``` diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/open-questions.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/open-questions.md new file mode 100644 index 0000000..aecb473 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/open-questions.md @@ -0,0 +1,6 @@ +# Open Questions: agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21 + +Capture unresolved plan questions here as unchecked checklist items. +Keep each item concrete, decision-shaped, and easy to close with evidence. + +- [ ] Add the next unresolved question here. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/phases.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/phases.md new file mode 100644 index 0000000..7e13d4a --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/phases.md @@ -0,0 +1,15 @@ +# Plan Phases: agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21 + +One entry per phase. Checkbox marks map to: `x` = completed, `>` = in progress, space = pending. +Indented sub-bullets are optional metadata consumed by the Plans UI: + +- `session`: which agent kind runs the phase (`codex` / `claude`). +- `checkpoints`: comma-separated role checkpoint ids delivered within the phase. +- `summary`: one short sentence rendered under the phase title. + +One phase is intended to fit into a single Codex or Claude session task. + +- [ ] [PH01] First milestone title goes here + - session: codex + - checkpoints: P1, A1 + - summary: Describe the single session outcome expected for this phase. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/.openspec.yaml b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/.openspec.yaml new file mode 100644 index 0000000..04b8f33 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/.openspec.yaml @@ -0,0 +1,9 @@ +schema: 1 +plan: agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21 +role: planner +status: draft +artifacts: + prompt: prompt.md + proposal: proposal.md + tasks: tasks.md + spec: specs/planner/spec.md diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/README.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/README.md new file mode 100644 index 0000000..1b0ad5d --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/README.md @@ -0,0 +1,12 @@ +# planner + +Role workspace for `planner`. + +Default artifacts: +- `.openspec.yaml` +- `prompt.md` +- `proposal.md` +- `tasks.md` +- `specs//spec.md` + +Use this folder for role notes, artifacts, and status updates. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/plan.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/plan.md new file mode 100644 index 0000000..8ceaf27 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/plan.md @@ -0,0 +1,65 @@ +# ExecPlan: agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21 + +This ExecPlan is a living document. Keep `Progress`, `Surprises & Discoveries`, `Decision Log`, and `Outcomes & Retrospective` current as work proceeds. + +Follow repository guidance in `openspec/plan/PLANS.md`. + +## Purpose / Big Picture + +Describe what becomes possible after this plan is executed and how a user/operator can observe it working. + +## Progress + +- [ ] (YYYY-MM-DD HH:MMZ) Capture initial scope and acceptance criteria. +- [ ] (YYYY-MM-DD HH:MMZ) Draft architecture/tradeoff plan and verification strategy. +- [ ] (YYYY-MM-DD HH:MMZ) Finalize execution-ready handoff. + +## Surprises & Discoveries + +- Observation: _none yet_ + Evidence: _n/a_ + +## Decision Log + +- Decision: Use OpenSpec plan workspace as source of truth for this planning cycle. + Rationale: Keeps planning artifacts in-repo and reviewable. + Date/Author: YYYY-MM-DD / planner + +## Outcomes & Retrospective + +Summarize outcomes, gaps, and lessons learned when a milestone or the full plan is completed. + +## Context and Orientation + +Describe relevant modules, files, constraints, and assumptions for a newcomer. Use repository-relative paths. + +## Plan of Work + +Describe the sequence of edits and deliverables in prose. Name target files and expected effects. + +## Concrete Steps + +List exact commands with working directory and short expected outcomes. + + cd /home/deadpool/Documents/codex-lb + openspec validate --specs + +## Validation and Acceptance + +State observable behavior and verification evidence required before execution handoff. + +## Idempotence and Recovery + +Document safe re-run behavior, rollback strategy, and failure recovery notes. + +## Artifacts and Notes + +Capture concise command output snippets, evidence pointers, and references. + +## Interfaces and Dependencies + +Name concrete interfaces/modules/dependencies and any required signatures/contracts. + +## Revision Note + +- YYYY-MM-DD HH:MMZ: Initial scaffold generated by `scripts/openspec/init-plan-workspace.sh`. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/prompt.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/prompt.md new file mode 100644 index 0000000..6c34917 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/prompt.md @@ -0,0 +1,34 @@ +# planner Prompt + +You are the `planner` role for OpenSpec plan `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21`. + +## Objective + +Complete only this role's assigned checklist and leave compact evidence for the coordinator. + +## Source of truth + +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/summary.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/checkpoints.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/open-questions.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/tasks.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/proposal.md` + +## Before edits + +1. Confirm branch/worktree with `git status --short --branch`. +2. Claim every touched file before editing: + - Prefer Colony `task_claim_file` when an active task exists. + - Otherwise run `gx locks claim --branch `. +3. Stay inside assigned files/modules; coordinate before touching shared paths. + +## Working rules + +- Update `planner/tasks.md` as each item completes. +- Record durable unresolved questions in `open-questions.md`. +- Keep handoffs short: files changed, behavior touched, verification, risks. +- Do not revert another agent's edits. + +## Cleanup + +Only the owner/finalizer lane runs `gx branch finish --branch --base dev --via-pr --wait-for-merge --cleanup`. If blocked, append `BLOCKED:` with branch, task, blocker, next, evidence. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/proposal.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/proposal.md new file mode 100644 index 0000000..07df84e --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/proposal.md @@ -0,0 +1,15 @@ +# Proposal: planner (agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21) + +## Why + +Summarize why this role's work is required for plan `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21`. + +## What Changes + +- [ ] List the planned role-specific changes + +## Impact + +- Scope: +- Risks: +- Dependencies: diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/specs/planner/spec.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/specs/planner/spec.md new file mode 100644 index 0000000..2c17dba --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/specs/planner/spec.md @@ -0,0 +1,10 @@ +# Capability Spec: planner + +## ADDED Requirements + +### Requirement: planner responsibilities for `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21` +This role MUST define and deliver its scoped outputs with evidence. + +#### Scenario: Role executes assigned scope +- **WHEN** the role begins execution for `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21` +- **THEN** it follows `tasks.md` and records evidence for completion diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/tasks.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/tasks.md new file mode 100644 index 0000000..6ed9808 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/planner/tasks.md @@ -0,0 +1,33 @@ +# planner tasks + +## 1. Spec + +- [ ] 1.1 Define planning principles, decision drivers, and viable options for `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21` +- [ ] 1.2 Validate that scope, constraints, and acceptance criteria are captured in `summary.md` + +## 2. Tests + +- [ ] 2.1 Define verification approach for plan quality (traceability, testability, evidence expectations) +- [ ] 2.2 Validate OpenSpec consistency checkpoints (including `openspec validate --specs` when applicable) + +## 3. Implementation + +- [ ] 3.1 Produce the initial RALPLAN-DR plan draft +- [ ] 3.2 Integrate Architect/Critic feedback into revised plan iterations +- [ ] 3.3 Publish final planning handoff with explicit execution lanes + +## 4. Checkpoints + +- [ ] [P1] READY - Initial planning draft checkpoint + +## 5. Collaboration + +- [ ] 5.1 Owner recorded this lane before edits. +- [ ] 5.2 Record joined agents / handoffs, or mark `N/A` when solo. +- [ ] 5.3 Record unresolved plan questions in `../open-questions.md`, or mark `N/A` when none. + +## 6. Cleanup + +- [ ] 6.1 If this lane owns finalization, run `gx branch finish --branch --base dev --via-pr --wait-for-merge --cleanup`. +- [ ] 6.2 Record PR URL + final `MERGED` state in the handoff. +- [ ] 6.3 Confirm sandbox cleanup (`git worktree list`, `git branch -a`) or append `BLOCKED:` and stop. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/summary.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/summary.md new file mode 100644 index 0000000..d496f11 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/summary.md @@ -0,0 +1,8 @@ +# Plan Summary: agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21 + +- **Mode:** ralplan +- **Status:** draft + +## Context + +Describe the planning context, constraints, and desired outcomes. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/.openspec.yaml b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/.openspec.yaml new file mode 100644 index 0000000..a602b5b --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/.openspec.yaml @@ -0,0 +1,9 @@ +schema: 1 +plan: agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21 +role: verifier +status: draft +artifacts: + prompt: prompt.md + proposal: proposal.md + tasks: tasks.md + spec: specs/verifier/spec.md diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/README.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/README.md new file mode 100644 index 0000000..1daa373 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/README.md @@ -0,0 +1,12 @@ +# verifier + +Role workspace for `verifier`. + +Default artifacts: +- `.openspec.yaml` +- `prompt.md` +- `proposal.md` +- `tasks.md` +- `specs//spec.md` + +Use this folder for role notes, artifacts, and status updates. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/prompt.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/prompt.md new file mode 100644 index 0000000..cc91d9c --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/prompt.md @@ -0,0 +1,34 @@ +# verifier Prompt + +You are the `verifier` role for OpenSpec plan `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21`. + +## Objective + +Complete only this role's assigned checklist and leave compact evidence for the coordinator. + +## Source of truth + +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/summary.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/checkpoints.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/open-questions.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/tasks.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/proposal.md` + +## Before edits + +1. Confirm branch/worktree with `git status --short --branch`. +2. Claim every touched file before editing: + - Prefer Colony `task_claim_file` when an active task exists. + - Otherwise run `gx locks claim --branch `. +3. Stay inside assigned files/modules; coordinate before touching shared paths. + +## Working rules + +- Update `verifier/tasks.md` as each item completes. +- Record durable unresolved questions in `open-questions.md`. +- Keep handoffs short: files changed, behavior touched, verification, risks. +- Do not revert another agent's edits. + +## Cleanup + +Only the owner/finalizer lane runs `gx branch finish --branch --base dev --via-pr --wait-for-merge --cleanup`. If blocked, append `BLOCKED:` with branch, task, blocker, next, evidence. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/proposal.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/proposal.md new file mode 100644 index 0000000..f155237 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/proposal.md @@ -0,0 +1,15 @@ +# Proposal: verifier (agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21) + +## Why + +Summarize why this role's work is required for plan `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21`. + +## What Changes + +- [ ] List the planned role-specific changes + +## Impact + +- Scope: +- Risks: +- Dependencies: diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/specs/verifier/spec.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/specs/verifier/spec.md new file mode 100644 index 0000000..978ba69 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/specs/verifier/spec.md @@ -0,0 +1,10 @@ +# Capability Spec: verifier + +## ADDED Requirements + +### Requirement: verifier responsibilities for `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21` +This role MUST define and deliver its scoped outputs with evidence. + +#### Scenario: Role executes assigned scope +- **WHEN** the role begins execution for `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21` +- **THEN** it follows `tasks.md` and records evidence for completion diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/tasks.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/tasks.md new file mode 100644 index 0000000..4a18c54 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/verifier/tasks.md @@ -0,0 +1,33 @@ +# verifier tasks + +## 1. Spec + +- [ ] 1.1 Define end-to-end validation matrix for `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21` +- [ ] 1.2 Validate success/failure conditions and evidence requirements + +## 2. Tests + +- [ ] 2.1 Execute verification commands and collect outputs +- [ ] 2.2 Validate idempotency/re-run behavior and error-path handling + +## 3. Implementation + +- [ ] 3.1 Verify completed work against acceptance criteria +- [ ] 3.2 Produce pass/fail findings with concrete evidence links +- [ ] 3.3 Publish final verification sign-off (or blocker report) + +## 4. Checkpoints + +- [ ] [V1] READY - Verification checkpoint + +## 5. Collaboration + +- [ ] 5.1 Owner recorded this lane before edits. +- [ ] 5.2 Record joined agents / handoffs, or mark `N/A` when solo. +- [ ] 5.3 Record unresolved plan questions in `../open-questions.md`, or mark `N/A` when none. + +## 6. Cleanup + +- [ ] 6.1 If this lane owns finalization, run `gx branch finish --branch --base dev --via-pr --wait-for-merge --cleanup`. +- [ ] 6.2 Record PR URL + final `MERGED` state in the handoff. +- [ ] 6.3 Confirm sandbox cleanup (`git worktree list`, `git branch -a`) or append `BLOCKED:` and stop. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/.openspec.yaml b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/.openspec.yaml new file mode 100644 index 0000000..89950c7 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/.openspec.yaml @@ -0,0 +1,9 @@ +schema: 1 +plan: agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21 +role: writer +status: draft +artifacts: + prompt: prompt.md + proposal: proposal.md + tasks: tasks.md + spec: specs/writer/spec.md diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/README.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/README.md new file mode 100644 index 0000000..757c824 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/README.md @@ -0,0 +1,12 @@ +# writer + +Role workspace for `writer`. + +Default artifacts: +- `.openspec.yaml` +- `prompt.md` +- `proposal.md` +- `tasks.md` +- `specs//spec.md` + +Use this folder for role notes, artifacts, and status updates. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/prompt.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/prompt.md new file mode 100644 index 0000000..851a120 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/prompt.md @@ -0,0 +1,34 @@ +# writer Prompt + +You are the `writer` role for OpenSpec plan `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21`. + +## Objective + +Complete only this role's assigned checklist and leave compact evidence for the coordinator. + +## Source of truth + +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/summary.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/checkpoints.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/open-questions.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/tasks.md` +- `openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/proposal.md` + +## Before edits + +1. Confirm branch/worktree with `git status --short --branch`. +2. Claim every touched file before editing: + - Prefer Colony `task_claim_file` when an active task exists. + - Otherwise run `gx locks claim --branch `. +3. Stay inside assigned files/modules; coordinate before touching shared paths. + +## Working rules + +- Update `writer/tasks.md` as each item completes. +- Record durable unresolved questions in `open-questions.md`. +- Keep handoffs short: files changed, behavior touched, verification, risks. +- Do not revert another agent's edits. + +## Cleanup + +Only the owner/finalizer lane runs `gx branch finish --branch --base dev --via-pr --wait-for-merge --cleanup`. If blocked, append `BLOCKED:` with branch, task, blocker, next, evidence. diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/proposal.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/proposal.md new file mode 100644 index 0000000..5753589 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/proposal.md @@ -0,0 +1,15 @@ +# Proposal: writer (agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21) + +## Why + +Summarize why this role's work is required for plan `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21`. + +## What Changes + +- [ ] List the planned role-specific changes + +## Impact + +- Scope: +- Risks: +- Dependencies: diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/specs/writer/spec.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/specs/writer/spec.md new file mode 100644 index 0000000..9ea1094 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/specs/writer/spec.md @@ -0,0 +1,10 @@ +# Capability Spec: writer + +## ADDED Requirements + +### Requirement: writer responsibilities for `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21` +This role MUST define and deliver its scoped outputs with evidence. + +#### Scenario: Role executes assigned scope +- **WHEN** the role begins execution for `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21` +- **THEN** it follows `tasks.md` and records evidence for completion diff --git a/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/tasks.md b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/tasks.md new file mode 100644 index 0000000..b407f74 --- /dev/null +++ b/openspec/plan/agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21/writer/tasks.md @@ -0,0 +1,33 @@ +# writer tasks + +## 1. Spec + +- [ ] 1.1 Validate documentation scope and audience for `agent-codex-masterplan-glass-pane-action-menu-transparent-chrom-2026-05-15-14-21` +- [ ] 1.2 Validate consistency between plan terminology and OpenSpec artifacts + +## 2. Tests + +- [ ] 2.1 Define documentation verification checklist (accuracy, completeness, command correctness) +- [ ] 2.2 Validate command/help text examples against current workflow behavior + +## 3. Implementation + +- [ ] 3.1 Update workflow docs and command guidance for approved plan behavior +- [ ] 3.2 Add or refine examples for operator usage and handoff clarity +- [ ] 3.3 Publish final docs change summary with references + +## 4. Checkpoints + +- [ ] [W1] READY - Docs update checkpoint + +## 5. Collaboration + +- [ ] 5.1 Owner recorded this lane before edits. +- [ ] 5.2 Record joined agents / handoffs, or mark `N/A` when solo. +- [ ] 5.3 Record unresolved plan questions in `../open-questions.md`, or mark `N/A` when none. + +## 6. Cleanup + +- [ ] 6.1 If this lane owns finalization, run `gx branch finish --branch --base dev --via-pr --wait-for-merge --cleanup`. +- [ ] 6.2 Record PR URL + final `MERGED` state in the handoff. +- [ ] 6.3 Confirm sandbox cleanup (`git worktree list`, `git branch -a`) or append `BLOCKED:` and stop. diff --git a/scripts/codex-fleet/bin/pane-context-menu.sh b/scripts/codex-fleet/bin/pane-context-menu.sh index f511f1f..0150a0c 100755 --- a/scripts/codex-fleet/bin/pane-context-menu.sh +++ b/scripts/codex-fleet/bin/pane-context-menu.sh @@ -1,6 +1,15 @@ #!/usr/bin/env bash # pane-context-menu.sh — iOS-style right-click context menu for fleet panes. # +# Transparency model: this fallback bash menu intentionally emits foreground-only +# ANSI (`38;2;R;G;B`) so tmux popup `-B` leaves the underlying pane visible. Do +# not use solid background SGR (`48;2;...`) in this script. +# +# Smoke test: +# printf 'hello-bg\nhello-bg\nhello-bg' && CODEX_FLEET_MENU_LINE=demo bash scripts/codex-fleet/bin/pane-context-menu.sh '%0' < /dev/null +# Capture PR evidence with `script -qfec "" /tmp/pane-context-menu.typescript` +# or an equivalent terminal recording. +# # Bound to MouseDown3Pane via scripts/codex-fleet/style-tabs.sh through a # `display-popup -E -B` so we get a full pty and can draw the rounded card + # accent shortcut chips that tmux's built-in `display-menu` cannot render. @@ -34,6 +43,8 @@ source "$SCRIPT_DIR/../lib/ios-menu.sh" CARD_W=54 INNER_W=$(( CARD_W - 2 )) +IOS_SEPARATOR="#3A3A3C" +IOS_DISABLED="#48484A" INDEX="$(tmux display -p -t "$PANE_ID" '#{pane_index}' 2>/dev/null || echo '?')" PANES_IN_WIN="$(tmux display -p -t "$PANE_ID" '#{window_panes}' 2>/dev/null || echo 1)" @@ -42,26 +53,51 @@ ZOOMED="$(tmux display -p -t "$PANE_ID" '#{window_zoomed_flag}' 2>/dev/null || e PANE_MARKED="$(tmux display -p -t "$PANE_ID" '#{pane_marked}' 2>/dev/null || echo 0)" # ── chrome helpers (operate inside the popup's pty) ──────────────────────── +menu_fg() { + local fg="$1"; shift || true + local hexfg="${fg#\#}" + local r g b out="" + + r=$((16#${hexfg:0:2})); g=$((16#${hexfg:2:2})); b=$((16#${hexfg:4:2})) + out+="\033[38;2;${r};${g};${b}m" + while [[ $# -gt 0 ]]; do + case "$1" in + bold) out+="\033[1m" ;; + dim) out+="\033[2m" ;; + italic) out+="\033[3m" ;; + underline) out+="\033[4m" ;; + esac + shift + done + printf '%b' "$out" +} + +menu_repeat() { + local char="$1" count="$2" i + for (( i=0; i' + pad + '[ LIVE ]' + ' ' # Widths: 1 1 1 +len P 1+1+4+1+1 1 = INNER_W - local chip_render_w=$(( ${#chip} + 4 )) + local chip_render_w=$(( ${#chip} + 2 )) local pad=$(( INNER_W - 3 - title_len - chip_render_w - 1 )) (( pad < 1 )) && pad=1 - _ios_sgr "$IOS_BG3" "$IOS_BG"; printf '│' - _ios_sgr "$IOS_GREEN" "$IOS_BG2"; printf ' ● ' - _ios_sgr "$IOS_WHITE" "$IOS_BG2" bold; printf '%s' "$title" - _ios_sgr "$IOS_GRAY2" "$IOS_BG2"; printf '%*s' "$pad" '' - _ios_sgr "$IOS_WHITE" "$IOS_GREEN" bold; printf ' %s ' "$chip" - _ios_sgr "$IOS_GRAY2" "$IOS_BG2"; printf ' ' - _ios_sgr "$IOS_BG3" "$IOS_BG"; printf '│' + menu_fg "$IOS_SEPARATOR"; printf '│' + menu_fg "$IOS_GREEN"; printf ' ● ' + menu_fg "$IOS_WHITE" bold; printf '%s' "$title" + printf '%*s' "$pad" '' + menu_fg "$IOS_GREEN" bold; printf ' %s ' "$chip" + printf ' ' + menu_fg "$IOS_SEPARATOR"; printf '│' _ios_reset; printf '\n' } # Item row layout (INNER_W = 52): -# SP icon SP SP label PAD '[ ' key ' ]' SP -# 1 1 1 1 L P 2 1 2 1 = 9 + L + P → P = INNER_W - 9 - L +# SP icon SP SP label PAD '· ' key SP +# 1 1 1 1 L P 2 K 1 = 7 + K + L + P # # Args: icon label key [style: normal|danger|disabled] draw_item() { - local icon="$1" label="$2" key="$3" style="${4:-normal}" - local label_pad=$(( INNER_W - 9 - ${#label} )) + local icon="$1" label="$2" key="$3" style="${4:-normal}" focus_key="${5:-}" + local shortcut="· $key" + local label_pad=$(( INNER_W - 5 - ${#label} - ${#shortcut} )) (( label_pad < 1 )) && label_pad=1 - _ios_sgr "$IOS_BG3" "$IOS_BG"; printf '│' - - case "$style" in - danger) - _ios_sgr "$IOS_RED" "$IOS_BG2"; printf ' %s ' "$icon" - _ios_sgr "$IOS_RED" "$IOS_BG2" bold; printf '%s' "$label" - ;; - disabled) - _ios_sgr "$IOS_GRAY" "$IOS_BG2"; printf ' %s ' "$icon" - _ios_sgr "$IOS_GRAY" "$IOS_BG2"; printf '%s' "$label" - ;; - *) - _ios_sgr "$IOS_GRAY2" "$IOS_BG2"; printf ' %s ' "$icon" - _ios_sgr "$IOS_WHITE" "$IOS_BG2"; printf '%s' "$label" - ;; - esac - - _ios_sgr "$IOS_GRAY2" "$IOS_BG2"; printf '%*s' "$label_pad" '' - if [[ "$style" == "disabled" ]]; then - _ios_sgr "$IOS_GRAY" "$IOS_BG3"; printf '[ ' - _ios_sgr "$IOS_GRAY" "$IOS_BG3" bold; printf '%s' "$key" - _ios_sgr "$IOS_GRAY" "$IOS_BG3"; printf ' ]' + menu_fg "$IOS_SEPARATOR"; printf '│' + + if [[ "$focus_key" == "$key" ]]; then + menu_fg "$IOS_BLUE" underline + printf ' %s %s%*s%s ' "$icon" "$label" "$label_pad" '' "$shortcut" + printf '\033[24m' else - _ios_sgr "$IOS_GRAY2" "$IOS_BG3"; printf '[ ' - _ios_sgr "$IOS_WHITE" "$IOS_BG3" bold; printf '%s' "$key" - _ios_sgr "$IOS_GRAY2" "$IOS_BG3"; printf ' ]' + case "$style" in + danger) + menu_fg "$IOS_RED"; printf ' %s ' "$icon" + menu_fg "$IOS_RED" bold; printf '%s' "$label" + printf '%*s' "$label_pad" '' + menu_fg "$IOS_RED"; printf '%s ' "$shortcut" + ;; + disabled) + menu_fg "$IOS_DISABLED"; printf ' %s %s%*s%s ' "$icon" "$label" "$label_pad" '' "$shortcut" + ;; + *) + menu_fg "$IOS_GRAY"; printf ' %s ' "$icon" + menu_fg "$IOS_WHITE"; printf '%s' "$label" + printf '%*s' "$label_pad" '' + menu_fg "$IOS_GRAY2"; printf '%s ' "$shortcut" + ;; + esac fi - _ios_sgr "$IOS_GRAY2" "$IOS_BG2"; printf ' ' - _ios_sgr "$IOS_BG3" "$IOS_BG"; printf '│' + menu_fg "$IOS_SEPARATOR"; printf '│' _ios_reset; printf '\n' } +render_menu() { + local focus_key="${1:-}" + + clear + printf '\n' # small top margin so the popup doesn't crowd row 0 + + draw_top + draw_header + draw_hairline + + draw_item '▣' "Copy whole session" 'C' normal "$focus_key" + draw_item '▢' "Copy visible" 'c' normal "$focus_key" + draw_item '─' "Copy this line" 'l' normal "$focus_key" + draw_hairline + draw_item '↟' "Scroll to top" '<' normal "$focus_key" + draw_item '↡' "Scroll to bottom" '>' normal "$focus_key" + draw_hairline + draw_item '⊟' "Horizontal split" 'h' normal "$focus_key" + draw_item '⊞' "Vertical split" 'v' normal "$focus_key" + draw_item '⤢' "$zoom_label" 'z' "$zoom_style" "$focus_key" + draw_hairline + draw_item '↑' "Swap up" 'u' "$multi" "$focus_key" + draw_item '↓' "Swap down" 'd' "$multi" "$focus_key" + draw_item '⇄' "Swap with marked" 's' "$swap_marked_style" "$focus_key" + draw_item '★' "$mark_label" 'm' normal "$focus_key" + draw_hairline + draw_item '↻' "Respawn pane" 'R' normal "$focus_key" + draw_item '✕' "Kill pane" 'X' danger "$focus_key" + draw_hairline + draw_item '?' "Keyboard help…" '?' normal "$focus_key" + draw_bottom + + menu_fg "$IOS_GRAY"; printf '\n press a hotkey · ? for help · esc cancels' + _ios_reset +} + # ── conditional labels / styles ──────────────────────────────────────────── multi=normal (( PANES_IN_WIN > 1 )) || multi=disabled @@ -141,41 +211,21 @@ mark_label="Mark pane" (( PANE_MARKED == 1 )) && mark_label="Unmark pane" # ── render ───────────────────────────────────────────────────────────────── -clear -printf '\n' # small top margin so the popup doesn't crowd row 0 - -draw_top -draw_header -draw_hairline - -draw_item '▣' "Copy whole session" 'C' -draw_item '▢' "Copy visible" 'c' -draw_item '─' "Copy this line" 'l' -draw_hairline -draw_item '↟' "Scroll to top" '<' -draw_item '↡' "Scroll to bottom" '>' -draw_hairline -draw_item '⊟' "Horizontal split" 'h' -draw_item '⊞' "Vertical split" 'v' -draw_item '⤢' "$zoom_label" 'z' "$zoom_style" -draw_hairline -draw_item '↑' "Swap up" 'u' "$multi" -draw_item '↓' "Swap down" 'd' "$multi" -draw_item '⇄' "Swap with marked" 's' "$swap_marked_style" -draw_item '★' "$mark_label" 'm' -draw_hairline -draw_item '↻' "Respawn pane" 'R' -draw_item '✕' "Kill pane" 'X' danger -draw_hairline -draw_item '?' "Keyboard help…" '?' -draw_bottom - -_ios_sgr "$IOS_GRAY" "$IOS_BG"; printf '\n press a hotkey · ? or ctrl+h for help · esc cancels' -_ios_reset +render_menu # ── input + dispatch ─────────────────────────────────────────────────────── choice='' read -rsn1 -t 30 choice || choice='' + +feedback_key='' +case "$choice" in + C|c|l|'<'|'>'|h|v|z|u|d|s|m|R|X|'?') feedback_key="$choice" ;; + $'\b'|$'\x08') feedback_key='?' ;; +esac +if [[ -n "$feedback_key" ]]; then + render_menu "$feedback_key" + sleep 0.08 +fi clear case "$choice" in