Repository navigation
feat: integrate native Hermes Agent TUI - #6536
nikhilachale wants to merge 30 commits into
Conversation
🏆 Review leaderboardOct 4–11, 2026 · UTC
Ranked by distinct external PRs reviewed, then review rounds, then PR comments. Self-activity and bot activity are excluded. Show 6 more reviewers
|
|
Final source These are real original VPS AO Electron captures. Unsupported native surfaces remain explicit; no strict runner PASS or unsupported history restore is claimed. |
|
Harness-specific reports, JSON receipts, screenshots and provenance now live on this integration PR branch, rather than the skill PR #6509. Evidence index with embedded screenshots and JSON links. Historical successes, failures and scope limitations remain as recorded. Moving these files does not rerun native/AO testing or upgrade any verdict. This is evidence relocation only. Existing tested source/native hashes and failures are preserved; the documentation commit is not a fresh runtime pass. Applicable checks run in PR CI. |
|
Canonical main conflicts reconciled at Validation is PR CI only; current-head checks are pending until GitHub reports them. This merge does not constitute a new native/AO run or promote historical fresh/restore/provider-role proof. Harness evidence stays on this integration PR; PR6509 remains reusable guidance and linked summaries. |
|
Canonical main conflicts reconciled at Validation is PR CI only; current-head checks are pending until GitHub reports them. This merge does not constitute a new native/AO run or promote historical fresh/restore/provider-role proof. Harness evidence stays on this integration PR; PR6509 remains reusable guidance and linked summaries. |
|
Canonical main conflicts reconciled at Validation is PR CI only; current-head checks are pending until GitHub reports them. This merge does not constitute a new native/AO run or promote historical fresh/restore/provider-role proof. Harness evidence stays on this integration PR; PR6509 remains reusable guidance and linked summaries. |
|
Canonical main and the green shared ACP replay CI budget reconciled at The shared test-only fix PR6617 had21 green applicable checks; this integration head still needs its own exact-head CI. The full20543-frame replay burst and exact-once assertions remain unchanged. No routine local suites ran. This merge does not constitute a new native/AO run or promote historical fresh/restore/provider-role proof. Harness evidence stays on this integration PR; PR6509 remains reusable guidance and linked summaries. |
Build the real daemon in PR CI for isolated VPS runtime verification without local validation suites or dependency installations. Record source revision, Go build info, and executable hash.
1e4e89d to
fb42974
Compare
wesleymatosdev
left a comment
There was a problem hiding this comment.
Re-reviewed at fb42974. All previously flagged items are fixed and verified against the current head, not just marked resolved:
- Admission lock no longer sticks: pending clears on send error, runtime handle/launch-id change, and fast turns release via the settled-frame fallback (covered by new tests for send-error, fast-turn, echo-timeout, and generation change).
- Native binary identity is anchored (exact-match regex on the version line) and the PATH-first probe is gone - only documented install locations are executed.
- Read-only state DB open now distinguishes SQLITE_READONLY_RECOVERY (WAL recovery needed) from missing history, and read DSNs carry busy_timeout.
- Composer/idle detection moved from bare prompt-substring matching to bordered-composer + dim-placeholder classification, fail-closed on partial frames; modal detection anchors on bottom-pane native chrome instead of scrollback substring matching.
- Env-size budget accounts for NAME=, NUL, and the second copy in AO_HERMES_ORIGINAL_EPHEMERAL.
- Migration 0203 guards both Up and Down with a verification table; the silent no-op case now fails instead of recording a bogus applied migration.
- Observer identity resolution is gated on activity/state change or explicit continuous opt-in, resolve errors are logged, and permission-resolved carries the observed destination state.
- Proof workflow is renamed, dispatch-only, and no longer runs on every PR.
Verified locally on the PR head: hermes adapter, activity observer, terminalui, daemon guarded-input tests, and the full sqlite suite pass with -count=1; go vet clean on the changed packages. CI green at head.
One documented residual: the integration is Linux-only by design (readiness reports install_check_unsupported elsewhere), and the VPS runtime proof is the author's evidence rather than independently re-executed here - neither is blocking for this PR.

Code changes: +932 -22
Tests: +1065 -10
Others: +311 -4
Binary assets in this source snapshot: 5 (excluded from line counts).
Linux classic interactive TUI; exact corroborated native identity and persisted restore. Modern --tui, sticky/named/managed profiles, NULL-cwd restore, Chat and handoff excluded.
Current status
Current source snapshot:
fb42974461279f1e0a931cd0bd700ce428478cf0(base994d609a9385152b64ea26fa218baafbe65722f7). Open for review; GitHub mergeabilityMERGEABLE, merge stateBLOCKED. Exact-head CI: all 23/23 reported checks successful. CI run 1 · CI run 2 · CI run 3 · CI run 4. Green source CI does not establish current native/UI runtime proof or full integration readiness.This fix created only clean isolated source worktrees and temporary review reports; it created no AO/native sessions, provider profiles or owned runtime processes. No local build, gofmt, test, fixture, provider or UI run was performed.
Historical runtime build: Historical Linux AO/UI source
c5615c8494821d572649ae3847977b8aaa4fd4b8; official Hermesv0.21.6 upstream818c13be1dc4fd28987e1e881a9408224afd4535. Final008 and failed/intermediate003–007 remain separate. Later source/platform/observer/migration/rebase follow-ups did not rerun that Linux native proof. Report · evidence index, original receipts, image/provenance hashes. Receipt SHAs/bytes are unchanged. Linux/VPS proof is not Windows/macOS native proof. Runner SHA2568887aa2e7101b9e6d3950bfca08ffddf2e1e6c1c3f1d030c8dec2676443aecearemains historical where reported; manual/standalone proof is not a strict runner PASS.Changes since runtime proof: The existing official Hermes icon remains mapped. Source review/platform/observer/migration/rebase follow-ups and evidence relocation are not a fresh Linux native lifecycle run. Historical local focused checks and their Windows/resource/gcc limitations remain scoped as recorded; current-head source CI is recorded separately below.
The matrix separates current verification from recorded historical passes;
NOT_RUNdoes not erase those passes. Excluded interfaces/manual model input are deliberate supported-scope decisions.Historical implementation and evidence
Native /new rotates corroborated identity, but NULL-cwd conversations remain nonrestorable. Persisted restore requires matching durable workspace/history and owned identity evidence; SQLite errors remain distinct from missing history/cwd mismatch. Later source follow-ups cover pending-input echo recovery, environment bounds, special-character DSNs/read-only-recovery errors, current-bottom modal/spoof guards, observer/lifecycle consistency and guarded migration0203. Current rebase preserves both migration/catalog entries and main ACP timeout. These source changes and Windows Linux-only readiness/Electron controls do not rerun the historical Linux task lifecycle. Historical source c5615c8 and follow-up source check sets are not current Linux runtime proof. Native001–005/AO003–007 failures and incomplete blank capture remain retained. Later local focused/SQLite/Go vet/frontend checks passed in their own scope; full Windows-environment suites had unrelated failures, frontend typecheck had resource/missing-tsc gaps and race lacked gcc. No full local validation pass is claimed.
historical receipt 1
Reproduction and retained-original limitations
The pinned reports/JSON retain action/result, file/token effects, process identity, cancellation, native-history continuity and capture assertions. A complete sanitized executable reproduction bundle is not established for every manual helper: exact helper bytes/hash and invocation, applicable local-contract bytes/hash with probe argv and interrupt/readiness/draft-cleanup settings, and complete native/AO fingerprints are unavailable where not recorded in the linked receipts; recoverability of those original inputs is unknown. No missing command, contract, hash or result is invented. Later reproductions must use a new attempt and cannot replace original failed/missing evidence.
Recorded owned-process/session/daemon/Electron cleanup is historical. Source worktrees, native profiles/history, dirty scratch workspaces, binaries and raw logs were reported retained privately; a complete current inventory/location/hash and recoverability of every original class are unavailable in the public record. Current recoverability is unknown; this reporting fix reconstructs no missing input and silently substitutes none. Share sanitized artifacts only; exclude credential stores, raw DBs and provider-profile directories. Preserve the retained failures and original screenshots.