Integrate reviewed DEV stack (#51, #54, #55, #56, #58) - #72
Merged
Merged
Conversation
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.
- 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>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Included changes
Contributor attribution
Co-authored-bytrailer because the integration commits in Integrate all open PRs (#32, #34, #35–#37, #41, #46, #50) with conflict resolution and post-merge fixes #51 use a local Git identity that GitHub does not link to this account.Merge with a merge commit, not squash, so the original authored commits reach
mainand 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 inmain.Verification
git diff --checkpassed. Full automated tests, typecheck, production build, and visual inspection were left for the maintainer as requested in the project instructions.