Repository navigation
ci(release): Release v0.0.2 - #5
Merged
Merged
Conversation
Contributor
|
Important Review skippedReview was skipped due to path filters ⛔ Files ignored due to path filters (2)
CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
Contributor
✅ Dry-Run Completed Successfully📊 Build Summary
📦 Built ArtifactsNot available. This is an automated comment from the release dry-run check. |
This was referenced Apr 1, 2026
This was referenced Apr 14, 2026
Closed
Closed
Closed
Closed
Closed
Closed
This was referenced Apr 21, 2026
Closed
Closed
Closed
Closed
Merged
Merged
pedronauck
added a commit
that referenced
this pull request
Aug 9, 2026
* feat: add gateway exposure foundation * feat: Tier listeners and device authentication #2 Checkpoint via cy-loop-tasks (iteration 5, phase B mode=tasks). Adds daemon-owned tier listeners, device authentication, secure pairing and credentials, stream tickets, live revocation, transaction mutation fencing, transport parity, generated contracts, and gateway documentation. Co-Authored-By: Codex <[email protected]> * feat: add connectivity provider seam * feat: add public gateway ingress * feat: Remote CLI profiles, operation matrix, and SSH connect #5 Checkpoint via cy-loop-tasks (iteration 11, phase B mode=tasks). Co-Authored-By: Codex <[email protected]> * feat: add gateway self-audit and native control * feat: Gateway operator surface and documentation #7 Checkpoint via cy-loop-tasks (iteration 15, phase B mode=tasks). Co-Authored-By: Codex <[email protected]> * feat: QA planning for remote gateway #8 Checkpoint via cy-loop-tasks (iteration 17, phase B mode=tasks). Co-Authored-By: Codex <[email protected]> * feat: QA execution for remote gateway #9 Checkpoint via cy-loop-tasks (iteration 19, phase B mode=tasks). QA execution settled all reset scenarios, re-walked six fixes, passed strict evidence audit, and ended with a clean teardown. Full workstream gate remains deferred until the single final review remediation is complete. Co-Authored-By: Codex <[email protected]> * fix: harden remote gateway for release Resolve the sole deep-review round across the Gateway runtime, CLI, SDKs, web UI, documentation, package boundaries, and QA evidence. Fix nullable bridge provider configuration and preserve exact public SDK and native-tool metadata contracts. * refactor: categorize tailscale extension under extensions/connectivity Co-Authored-By: Claude Fable 5 <[email protected]> * fix: final adjustments * docs: add curated release notes for remote gateway Co-Authored-By: Claude Fable 5 <[email protected]> --------- Co-authored-by: Codex <[email protected]> Co-authored-by: Claude Fable 5 <[email protected]>
pedronauck
added a commit
that referenced
this pull request
Aug 17, 2026
Checkpoint via cy-loop-tasks (iteration 6, phase B mode=tasks). Hard cut the legacy desktop shell and feed, retire the external bucket and alias, and align docs, skill, QA tracking, and release guidance with Electron. Co-Authored-By: Codex <[email protected]>
pedronauck
added a commit
that referenced
this pull request
Aug 17, 2026
* feat: Update Operation, single command, and daemon surfaces #1 Checkpoint via cy-loop-tasks (iteration 2, phase B mode=tasks). Co-Authored-By: Codex <[email protected]> * feat: Web update surface (settings two-track + menubar indicator) #2 Checkpoint via cy-loop-tasks (iteration 3, phase B mode=tasks). Claude Opus implementation reviewed and accepted by the controller; visual and browser QA evidence remains owned by the tail tasks. Co-Authored-By: Codex <[email protected]> * feat: Electron shell at parity #3 Checkpoint via cy-loop-tasks (iteration 4, task mode). Co-Authored-By: Codex <[email protected]> * feat: add desktop release authority * feat: Cutover and docs truth pass #5 Checkpoint via cy-loop-tasks (iteration 6, phase B mode=tasks). Hard cut the legacy desktop shell and feed, retire the external bucket and alias, and align docs, skill, QA tracking, and release guidance with Electron. Co-Authored-By: Codex <[email protected]> * feat: QA Plan and Session Charters #6 Checkpoint via cy-loop-tasks (iteration 7, phase B mode=tasks). Co-Authored-By: Codex <[email protected]> * fix: remediate electron shell review findings * fix: scope desktop notarization to macOS * fix: use configured macOS notarization credentials * fix: run desktop release builder from app workspace * fix: execute release builder in desktop workspace * fix: harden desktop release artifact contracts * fix: complete Linux and DMG package metadata * fix: preserve desktop release identity * fix: normalize signed x64 runtime digest * fix: synchronize web assets for explicit releases * fix: pass release fallback to web assets sync * build: sync web assets for explicit release * fix: refresh finalized dmg integrity * build: sync web assets for explicit release * build: sync web assets for explicit release * fix: exclude dmg files from update channel * build: sync web assets for explicit release * fix: exclude deb files from update channel * build: sync web assets for explicit release * fix: isolate desktop release smoke * docs: record electron shell QA closeout * fix: final adjusts * fix: update icon * fix: close buttons * fix: resolve pull request lint failures --------- Co-authored-by: Codex <[email protected]> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
pedronauck
added a commit
that referenced
this pull request
Aug 22, 2026
* feat: Terminal settlement invariant, reconciliation sweep & loops confi… Checkpoint via cy-loop-tasks (iteration 2, phase B mode=tasks). Co-Authored-By: Codex <[email protected]> * feat: Catalog loop classification with 4-surface parity #2 Checkpoint via cy-loop-tasks (iteration 4, phase B mode=tasks). Co-Authored-By: Codex <[email protected]> * feat: add loop run read layer and CLI verbs #3 * feat: add calm task views and loop provenance #4 * feat: redesign loop run registers and unblockers #5 * fix: remediate loop legibility review findings * docs: plan loop legibility QA cycle * fix: narrow generated loop read filters * fix: update loop briefing duration fixtures * fix: print runnable loop request unblockers * fix: quote loop unblocker payloads for shells * fix: expose loop timeline resume bounds * fix: recover sessionless task leases * fix: requeue expired loop coordinators * docs: record loop runtime QA phase * docs: close loop runtime QA lab * fix: remediate loop runtime QA findings * fix: observe runtime progress from public reads * fix: label unnamed loop briefing outputs * fix: harden runtime observer contracts * fix: ignore loop heartbeat events in observer * fix: require every run-page story to stage its served verdict Visual Contract row VC-08 was recorded as PASS against a capture that showed a terminal "Done" run with no partial signal at all. The story it targets staged no briefing read, and buildScenarioProps filled the gap with a manufactured verdict - tone "ok", a headline built from the loop name and round, no outcome, no artifacts - so the capture photographed a state nobody had staged. VC-03, VC-06 and VC-07 failed the same way inside their recorded scope boundaries. Make the omission impossible instead of papering over it: briefing is now required on LoopRunStoryScenario, the placeholder is deleted, and briefingFor copies the run's server-owned run_id, status, progress and usage while requiring each scenario to state the tone and headline the daemon writes. The compiler enumerates every site, so a scenario that has not staged a verdict cannot render one. Add registerPartialOutputsScenario for VC-08: a run that failed after seven of ten fix workers returned, labelling its output partial in the default register through the artifact's warning note, the join's partial chip and the fan-out's "partial 7 of 10" coverage - all server-owned reads, none derived client-side. Split the metric-ratchet scenarios and the durable lifecycle payloads into their own files to stay under the 500-line cap. Co-Authored-By: Claude Opus 5 <[email protected]> * fix: make loop run stories stage the state they claim The visual-contract evidence for task_04/task_05 was passing on captures that did not show their named state. The fixture layer was the reason, and it is what this fixes. `briefingFor` documented that a scenario may not overwrite the server-owned briefing fields, but `StoryVerdict` admitted all of them and `...verdict` was spread last, so only the comment stood between a story and a briefing that contradicted the run beside it. The type now excludes `run_id`/`status`/ `progress`/`usage`, the derived fields land after the caller's spread, and the two usage facts the record cannot supply — `cost_usd`, `duration` — are kept as a named optional. `makeBriefing` stopped being a second staging path: every register and visual-contract scenario derives its briefing from its own run, so the captures no longer photograph 82.4k tokens over a run recording 68k, a "Done" strip over a failed run, or a calm verdict over a cancelled one. Beat titles are the daemon's own (`Step <node> running`, `Round 2 started`) rather than invented fixture copy, and the long story stages the fold the daemon serves, so the paging row shows a coalesced beat and the way back instead of a wall of identical rows. The story clock is stamped once per load rather than pinned to a literal instant: projections took the pinned value and components render against the wall clock, so every beat read "1d ago" and a retry two minutes in the future read "next 1d ago". Three surfaces were understating what the product does, and one was leaking wire vocabulary into the default read: - the needs-you card printed `needs_approval · <gate id>`, and `on_exceeded: <enum>` on the budget gate — two enums and a machine id in the register task_05 requirement 1 keeps them out of. It now names the asking gate in words with its round, and leaves the budget policy to the sentence the usage rail already carries. - the request card never said who was asking, though `node_id` and `generation` were on the wire the whole time. - a degraded runs roster said the rows were the last read without saying how old it was, which reads as "this is current". - the roster answered "not started" about steps that had plainly run. A step whose timing did not survive now reads `unknown`. Stories now stage what the host wires: Compare/Fork on the generation history, `Browse loops` on the empty roster, an `attention` summary so the roster's needs-you group exists, and reduced motion through `MotionConfig` rather than a Storybook global that moved neither the context nor the media query. VC-22 gets a deep graph of its own instead of re-staging VC-21's wide one. Co-Authored-By: Claude Opus 5 <[email protected]> * fix: give the loop run page the history and causes its rows claim Inspecting the remaining twenty-one visual-contract rows one image at a time turned up three more states the page was not actually in, plus a test that asserted a number instead of an invariant. The story pane reads the durable timeline, and several scenarios staged their events richly while staging no timeline at all — so a run four rounds deep with 21k tokens spent rendered "Nothing has happened in this run yet." and four contract rows captured that empty pane as their evidence. The read is now derived from the scenario's own events, mirroring what the daemon does with them at read time; kinds the mapping does not know are skipped rather than given an invented sentence. The terminal graph was drawing a finished run as though it were still on its way: the scenario staged roster rows for two earlier rounds only, so the round the graph draws had almost none and every unlisted step read "Reachable. Nothing has reached it yet." The terminal round is staged in full now, and the branch the run declined reads as declined. Cancellation cause and actor move onto the roster row. Strategy-canceled and operator-canceled share the neutral ramp by design, so the state word alone cannot tell them apart — the roster showed two identical grey `canceled` chips and the distinction US-012.EC-2 asks for was unreadable until the node panel was opened. The node panel's builder is shared rather than copied, so the runtime's own reason codes stay suppressed in both places. `expect(scenarios.length).toBeGreaterThanOrEqual(18)` was a structural threshold pretending to be a guard: the invariant is that a staged briefing agrees with its run, and freezing a fixture count would fail on a scenario being added or retired, neither of which can break that. It is now a plain non-vacuity check, and the sweep reaches every module that exports scenarios instead of two. Co-Authored-By: Claude Opus 5 <[email protected]> * fix: put the dozens in the active group the scale contract names VC-35 stages "dozens active", and the reference note is specific about where the scale goes: "Scale changes the count, not the composition. The needs-you group still sorts first and stays small; active collapses into one scrollable table." The story built its thirty runs by cycling every seed of `loopRunFixtures`. That list is mostly terminal runs, so thirty drawn from it in order inherited the mix two-fold and the roster sorted them into Needs you 2, Active 8, Recent 20 — the dozens landed in Recent, the one group the row exists to show held eight, and the needs-you group was twice the size the note calls small. The capture was passing on a state it did not stage. The scale fixture moves into its own module and partitions the seeds by the same two facts `groupOf` groups on — a served `attention` summary, and whether the status is terminal — rather than by naming ids. Thirty runs still, now one needs-you, twenty-six active and a settled tail of three, so the composition still reads as three groups while the count lands where the contract puts it. Reusing the roster's own predicate means a change to the grouping rule carries this fixture with it instead of silently dropping the bulk into the wrong group again, which is how the defect survived the first pass. The canonical `LoopRunsView` suite gains the invariant: at scale the three groups keep their order, Active holds the dozens, Needs you stays small, every run is accounted for, and no KPI band appears. Co-Authored-By: Claude Opus 5 <[email protected]> * feat: Real-User QA Execution #7 Checkpoint via cy-loop-tasks (iteration 8, phase B mode=tasks). Co-Authored-By: Codex <[email protected]> * test: refresh catalog subtest contexts --------- Co-authored-by: Codex <[email protected]> Co-authored-by: Claude Opus 5 <[email protected]>
pedronauck
added a commit
that referenced
this pull request
Aug 27, 2026
Checkpoint via cy-loop-tasks (iteration 6, phase B mode=tasks). Co-Authored-By: Codex <[email protected]>
pedronauck
added a commit
that referenced
this pull request
Aug 27, 2026
Checkpoint via cy-loop-tasks (iteration 7, phase B mode=tasks). Co-Authored-By: Codex <[email protected]>
pedronauck
added a commit
that referenced
this pull request
Aug 28, 2026
Checkpoint via cy-loop-tasks (iteration 7, phase B mode=tasks). Co-Authored-By: Codex <[email protected]>
pedronauck
added a commit
that referenced
this pull request
Aug 29, 2026
Checkpoint via cy-loop-tasks (iteration 6, phase B mode=tasks). Co-Authored-By: Codex <[email protected]>
pedronauck
added a commit
that referenced
this pull request
Aug 29, 2026
Checkpoint via cy-loop-tasks (iteration 6, phase B mode=tasks). Co-Authored-By: Codex <[email protected]>
pedronauck
added a commit
that referenced
this pull request
Aug 30, 2026
Checkpoint via cy-loop-tasks (iteration 6, phase B mode=tasks). Co-Authored-By: Codex <[email protected]>
pedronauck
added a commit
that referenced
this pull request
Sep 1, 2026
Checkpoint via cy-loop-tasks (iteration 6, phase B mode=tasks). Co-Authored-By: Codex <[email protected]>
pedronauck
added a commit
that referenced
this pull request
Sep 1, 2026
Checkpoint via cy-loop-tasks (iteration 6, phase B mode=tasks). Co-Authored-By: Codex <[email protected]>
pedronauck
added a commit
that referenced
this pull request
Sep 2, 2026
Checkpoint via cy-loop-tasks (iteration 6, phase B mode=tasks). Co-Authored-By: Codex <[email protected]>
pedronauck
added a commit
that referenced
this pull request
Sep 2, 2026
Checkpoint via cy-loop-tasks (iteration 6, phase B mode=tasks). Co-Authored-By: Codex <[email protected]>
pedronauck
added a commit
that referenced
this pull request
Sep 3, 2026
Checkpoint via cy-loop-tasks (iteration 6, phase B mode=tasks). Co-Authored-By: Codex <[email protected]>
pedronauck
added a commit
that referenced
this pull request
Sep 3, 2026
#490) * feat: Terminal core and PTY substrate #1 Checkpoint via cy-loop-tasks (iteration 2, phase B mode=tasks). Co-Authored-By: Codex <[email protected]> * feat: Wire protocol and transport #2 Checkpoint via cy-loop-tasks (iteration 3, phase B mode=tasks). Co-Authored-By: Codex <[email protected]> * feat: Persistence, journal and observability #3 Checkpoint via cy-loop-tasks (iteration 4, phase B mode=tasks). Co-Authored-By: Codex <[email protected]> * feat: Agent surfaces exec tools and write path #4 * feat: Web terminal system #5 Checkpoint via cy-loop-tasks (iteration 6, phase B mode=tasks). Co-Authored-By: Codex <[email protected]> * feat: Public activation tranche #6 Checkpoint via cy-loop-tasks (iteration 7, phase B mode=tasks). Co-Authored-By: Codex <[email protected]> * feat: render agent-reported terminal output * feat: Windows ConPTY adapter #8 Checkpoint via cy-loop-tasks (iteration 9, phase B mode=tasks). Co-Authored-By: Codex <[email protected]> * fix: satisfy integrated terminal gate policies * fix: normalize local gate classification * fix: resolve integrated terminal review findings * feat: QA Plan and Session Charters #9 Checkpoint via cy-loop-tasks (iteration 10, phase B mode=tasks). Co-Authored-By: Codex <[email protected]> * fix: preserve terminal workspace registration identity * fix: complete integrated terminal QA remediation * refactor: remove unused terminal exports * fix: ui improvements * fix: improvs * fix: complete rebase integration * fix: align product language * fix: resolve Windows terminal executables * test: stabilize Windows terminal reads * test: drain Windows terminal startup output * test: align reported terminal E2E contract * fix: bind terminal browser ownership * fix: stabilize terminal browser attachments * fix: retry empty Windows terminal reads * fix: preserve terminal sessions after creation * fix: preserve terminal clipboard shortcuts * test: align daemon harness profile resolution * fix: harden terminal process shutdown * fix: harden terminal approvals and agent guidance * fix: harden terminal runtime lifecycle * fix: unify terminal transport contracts * fix: complete integrated terminal lifecycle * build: regenerate integrated terminal contracts * feat: rebuild integrated terminal window Co-authored-by: Cursor <[email protected]> * feat: rebuild integrated terminal journal Co-authored-by: Cursor <[email protected]> * feat: rebuild terminal input attention Co-authored-by: Cursor <[email protected]> * feat: rebuild terminal approval surfaces Co-authored-by: Cursor <[email protected]> * feat: rebuild session terminal blocks Co-authored-by: Cursor <[email protected]> * feat: rebuild terminal quote and settings Co-authored-by: Cursor <[email protected]> * docs: clarify estimated terminal journal boundaries Co-authored-by: Cursor <[email protected]> * fix: close integrated terminal host gaps Co-authored-by: Cursor <[email protected]> * fix: complete integrated terminal remediation * fix: final review * fix: close integrated terminal QA gaps * fix: repair integrated terminal CI * fix: stabilize integrated terminal CI * fix: close integrated terminal web CI gaps * fix: stabilize terminal detach chord * test: stabilize loop event resume E2E * ci: parallelize e2e lanes * fix: close final web e2e races * fix: close exact-head web e2e races * fix: close exact-head e2e races * test: stabilize terminal e2e fixtures * fix: preserve semantic identity during retarget * test: stabilize loop read E2E * fix: stabilize integrated terminal and remove in-app tabs Close is idempotent (exited terminals answer their recorded exit), the stream client settles as closed instead of reconnecting a dead terminal, size votes made before the socket opened are delivered on open, and the fish shim rides vendor_conf.d without hiding the user's config. The web terminal is window-native: one terminal per OS window, an id-less route that adopts or creates, head-level Journal/New/Close verbs, and window close never signals the PTY. Co-Authored-By: Claude Fable 5 <[email protected]> * fix: repair zsh markers and resolve terminals from fresh catalog truth The zsh marker hooks shadowed zsh's read-only status parameter, killing the precmd hook on every prompt and dropping every finish marker; a live zsh test now pins the clean hook. The id-less terminal route waits for a catalog fetch from this mount before adopting or creating, so a terminal opened moments before the window cannot be missed and duplicated. Browser journeys walk the window-native flow end to end, and the QA tracker records the walked verdicts. Co-Authored-By: Claude Fable 5 <[email protected]> * fix: dedupe worktrees spec imports after rebase Co-Authored-By: Claude Fable 5 <[email protected]> * fix: split protocol client wiring and align desktop terminal flow Co-Authored-By: Claude Fable 5 <[email protected]> * test: assert reattach liveness on the focused restored terminal Co-Authored-By: Claude Fable 5 <[email protected]> * fix: terminal fonts * fix: render agent-internal commands as plain session output Pull ADR-012 door 3 (`_meta.terminal_output`): the daemon no longer opts into agent-reported terminal output, and the whole reported pipeline goes with it — ACP ingestion and suppression, the `agent_reported` origin, contract/stream payload fields, transcript codec/replay, acpmock steps, and the web "reported by agent" xterm blocks. Agent-internal commands render as plain command output again; the deliberate S3 supervised block and the ACP pipe door stay untouched. Co-Authored-By: Claude Fable 5 <[email protected]> * feat: materialize agent-opened terminals as desktop windows A daemon bridge observes terminal opened events and, for agent-actor interactive PTY terminals (terminal_open, terminal_exec visible:true), opens a managed Terminal window in the workspace window model — on the desktop showing the bound session, never moving focus, one-shot per terminal, deduped by instance key, and never failing the tool call. Pipe terminals and human actors materialize nothing. The transcript now recognizes real agent traffic: hosted-MCP tool names (mcp__<server>__compozy__*) normalize to their native ids for the S3 supervised block and row labels, MCP string envelopes decode so terminal_id reaches the block, and the remaining terminal tools carry registered labels. E2E-003 asserts the window materializes without stealing focus. Co-Authored-By: Claude Fable 5 <[email protected]> * fix: steer agents to the integrated terminal and refresh its truth surfaces Terminal tool descriptors now lead with the desktop-window capability, the official skill documents the windows contract and the write-wait-read loop, and the site docs replace the agent-reported block section with the plain-output and window-materialization truth. QA tracker updated for ADR-019: the reported-terminal scenario is deleted, affected scenarios were reset and re-walked with a real Haiku agent in an isolated lab, and a new materialization scenario records the walk (docs/qa/reports/2026-09-01-terminal-rework.md). Co-Authored-By: Claude Fable 5 <[email protected]> * ci: retrigger PR checks for the terminal rework head Co-Authored-By: Claude Fable 5 <[email protected]> * fix: renumber terminal migration and settle generated artifacts after rebase Main's loop work took 00098/00099, so the workspace-deletion-intents migration moves to the next gap-free version (00100), atlas.sum is rehashed for the unpublished tail, and the SDK contract chunks regenerate to the merged truth. Co-Authored-By: Claude Fable 5 <[email protected]> * fix: reconcile pointer actor and ahead sentinel after second rebase Main's new loop tests construct ActionExecutionInput with a value actor while this branch moved the field to *task.ActorContext; the merged call sites now take the pointer. The global ahead-schema fixtures pinned version 100, which the renumbered terminal migration just occupied — they use the 999 sentinel the other streams already use. Co-Authored-By: Claude Fable 5 <[email protected]> * docs: increase deep review limits * fix: remediate integrated terminal review * test: align rebased suites with main contracts * fix: repair rebased CI regressions * fix: skill triggering --------- Co-authored-by: Codex <[email protected]> Co-authored-by: Cursor <[email protected]> Co-authored-by: Claude Fable 5 <[email protected]>
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.
Release v0.0.2
This PR prepares the release of version v0.0.2.
Changelog
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
Unreleased
♻️ Refactoring
---
Generated by git-cliff