Skip to content

Integrate reviewed DEV stack (#51, #54, #55, #56, #58) - #72

Merged
howdeploy merged 47 commits into
mainfrom
dev/pr51-review-20260924
Sep 24, 2026
Merged

howdeploy merged 47 commits into
mainfrom
dev/pr51-review-20260924

Conversation

@howdeploy

Copy link
Copy Markdown
Owner

Included changes

Contributor attribution

Merge with a merge commit, not squash, so the original authored commits reach main and keep their GitHub attribution. The independent browser-card design from #34 and the reverted #41/#46 changes are excluded from the resulting product behavior. #50 and #52 are already in main.

Verification

  • The integrated DEV branch was launched in Electron and reviewed by the maintainer, who supplied UI feedback and approved preparing this PR.
  • git diff --check passed. Full automated tests, typecheck, production build, and visual inspection were left for the maintainer as requested in the project instructions.

qSHEMq and others added 30 commits September 14, 2026 20:43
Source commits: 13c9e30bf1d0d3a4b6d1d431cb9252327052859a 6511a330ec2bb6a7f50938f6187a85e5682dc62c 8f4cefadd71c82f28e985214b2dc7c2fc4294cbe 1b8ce72c7f11af0b23f35edfa1354e6ddd447ecd 554d75747e17114d0f5c0855b51902dc62cb84b9 995daf02c1e2247714af987b8605a25a5cc7862a
Source commits: 9876cf1891d924f271e48c7f019a7144cc469971 50bc6bb22eab07ddaf72a736f84b82b40ff17ab3 68eaaa7b12b1f86c1a4e99a3b0bc13ccc510f401 c014e5a1086378b52366df3dfc5df3dabf96fd7b 7a01529239182318aaf207156f8f8528cbe1dcd8 de5c21003c59082ba80ec9279528faa91ea9f34f
Source commits: 27b7fecbc8a5c325e14bc90ec1d64b1b041d5965 919467794950813d9ec34dfb27002dda147d49b0 edec6fbe21c0e6d8de3e72ce9e507753ae23d01d 9fbdfe52b0869b71df34d9d78e043f400f77cf2f
Source commits: a0cd517143f68a07f8d338cf513c527341a1895e 997937576071df2f97653eb4661a216ea4f1e289
Source commits: 6d950d3bce0cd6ccfd02bdba8cd337ae52d91aa6 d04498588673b07c03cdaf9c7c12c3678216aa35 84de25512471c9f5a51b93d81802d2eecd49a4c4 11e875c2253fb6449021fa2ee537862ef3d043ca addddbb83c8b762b88d673edffed81443a713ba9 51ef42b61ae1a3cc2e1ed0f2ce3084f6fa92ae03 a300ce15203041dbef2aad403b647ff03e4f1571 dddea2e666d06e0200bd97c2a1a1e92fc334e095
Source commits: f3abb572b2e77ac4fd5daa0c33861a77f8294a07 2decb38fedfc35b7f4da427397f137d48004ecf1 a2f39c024cfeccad170ae44476adadd5b1677d46 e5681f4f172dbde760065985d70cfaf42d0c3555
Source commits: 657d5c7162a3417ff1f1ef031e1761df6107b2a4
Source commits: 9b24a431b4e1b8379847354d95d5907ca7f6abf5 df917a7c0e7cd6b9bb6122731ecf477f567cfad6
Source commits: 1e3e338a59e0597da8b75bb73573d698335d197c b282d55556bbffd5f4d73749db4cdb17a46db221
Source commits: 80262d291e12739cfd3e07095d6d6305c9e475fb
Source commits: 2d0b45e39421b758a86f154c31a459b612b2600d e976cc6a8f1638b7e2da3df440f4816c68519022 4592916cdbd3988e6afbbd3d54bc6ba4fcb99a1c 7e72f114664be00d38bbc3d70a0739c595a9bac1
Source commits: 14c9a46ea38cde8dfa356435c9b917b66eeba341 3aa685ce6e30251abe45dff132aaf35b2eb8c4d4 2c4aae74f4960ce6949ccc3101c1262182abdd88 c61826d434cfd7c1ed245a5a3e289547b5f9851f f7ce915a027beb4cac4ac51185cc92951e49b2c1 d6939f164ecbbd41d93aaa14238aad095b463359 fb3d15a392e0f72d049928e9d0867fef2aeb7047
Integrate current main, including the js-yaml security pin and accepted ADRs.
Prepare the cached renderer frame behind the native page before the wheel sink exposes it, repaint exposed canvas regions, and normalize clipped native navigation coordinates.

Verify OS keyboard focus and modifier delivery in the desktop harness, retain diagnostic images, and wait for queued macOS button releases.
s079891 and others added 17 commits September 20, 2026 17:24
- Gate the Even G2 final-answer capture behind a per-session grant
  (CANVASTTY_RUNTIME_CAPTURE_ANSWER) decided at spawn time, mirroring
  the Codex result capture; the gateway refuses the field for any other
  lease and keeps only state in the lease.
- Read hook stdin up to a fixed cap independent of result capture so a
  large Stop payload still reports its turn.
- Centralize the answer limit in runtime-protocol and format the merged
  one-liners.
- Drop the dead single-card minimap prop; rename the local browser layer
  alias so it cannot shadow canvasSelectionGesture.browserLayerId.
- Move the Even G2 settings strings into the shared i18n dictionary.
- Add Unreleased changelog entries for #32, #34 and #50.
- Extend the hook capture test for the answer grant and oversized input.
…up (#46)

The maintainer's review of #41 excludes the current two-row HOME launcher
from main, including indirect intake through a stacked PR, and #46 stays
deferred for a separate documentation review. This reverts 7eb59a4 and
the non-changelog part of 0ba5bdb. The Unreleased changelog section and
the browser-guide paragraphs describing behaviour that is in this branch
are kept.
…36, #37 follow-ups)

- Hidden terminal output keeps reaching the orchestration and Even G2
  observers; only renderer delivery is suppressed, with the same replay
  and truncation semantics for the card (TerminalDataEvent.audience).
- Closed browser cards no longer consume the card limit: closing releases
  an unowned tabless card, HOME's Browser action reopens the most
  recently hidden unowned card with its tabs, and a startup sweep drops
  stale hidden entries.
- Release workflow uploads latest*.yml and .blockmap files so the packaged
  updater has channel metadata to check.
- Updates is its own Settings section above About with the full
  check/download/install flow and a wrapping layout.
- Attention panel gets persistent show/hide and placement settings
  independent of OS notifications, plus a caption explaining its rows.
- Error details lead with a derived summary, mark an unknown cause,
  never present a Codex update banner as a cause, and keep raw
  diagnostics secondary and copyable.
- Rename starts from the visible terminal title (custom > OSC > path);
  an unchanged title is a no-op.
- The Even G2 peer-file mode assertion applies where POSIX modes exist.
- Orchestrator CLI help and skill describe the endpoint setting and the
  provider capability contract.
…estrator launch role and worker capabilities per provider

- Settings → Agents → Agent orchestration endpoint (agentControlEnabled,
  default off) starts and stops the local control gateway at runtime;
  --agent-control / CANVASTTY_AGENT_CONTROL=1 still force it on for CI.
- The launch dialog offers an explicit Orchestrator role next to Agent.
  The provider and the normal/YOLO profile stay the user's choice; the
  session is marked role=orchestrator, shows a badge, and receives
  CANVASTTY_CONTROL_CONNECTION / CANVASTTY_CONTROL_CLI so the bundled
  CLI works without setup. Both variables are stripped from every other
  session's environment. Roles survive restore.
- The control endpoint creates workers for every agent provider with
  that provider's own normal/YOLO launch and reports capabilities
  { result, menus } (Codex only) on create and list; choose/dismiss are
  NOT_SUPPORTED elsewhere, screen carries no interaction, and send
  relies on status alone.
… redesign

Rebase the integration onto main after the Even G2 and CLI-detection merges, drop the multi-card browser, inspect handoff and native geometry work, and keep the single browser from main. Settings use the existing layout language, and a control request waiting on terminal replay rechecks the session generation before it can write to a restarted PTY.
…0924

# Conflicts:
#	tests/even-g2-controller.test.mjs
…0924

# Conflicts:
#	src/agent-runtime/hook-helper.mjs
#	src/agent-runtime/runtime-client.mjs
#	src/main/index.ts
#	src/main/services/TerminalManager.ts
#	src/main/services/agent-runtime/AgentRuntimeBridge.ts
#	src/main/services/agent-runtime/RuntimeGateway.ts
…0924

# Conflicts:
#	src/renderer/src/features/settings/EvenG2Controls.tsx
Polish the agent settings, Even G2 layout, and radial launcher after reviewing the integrated PR stack.

Co-authored-by: kootik <6498896+kootik@users.noreply.github.com>
@howdeploy
howdeploy merged commit 5998d49 into main Sep 24, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants