Skip to content

[feature] RC: ship an observer-only Aether Code viewer profile #228

Closed

Description

@AetherAI3

Gap

The Agent's viewer profile allows only observe and excludes transcript and all control vocabulary. The current Aether Code /rc/[sessionId] page still renders a transcript panel and a ControlPanel; the latter is separately flag-gated but remains on the viewer route. That page cannot yet serve as release proof for the stated watch-only product contract.

Evidence: Agent viewer profile, web viewer composition, web control component.

Acceptance

  • The RC viewer route/build used by Aether Agent exposes observation only: no control request/action path, terminal input, prompt submission, or transcript panel that suggests raw prompts are shared.
  • Show the safe structured panels and accurate empty states; keep any future controller product behind a separate route, manifest, and release gate.
  • A release test scans shipped viewer routes, bundles, labels, and API calls for the observer-only profile and fails on accidental authority exposure.
  • Verify the account's Aether Code portal can discover the remote viewer without implying that browser coding sessions and CLI workspaces are the same session.

Scope

Cross-repo Aether Code web integration required for the Aether Agent 0.4.0 RC promise.

Activity

  1. added
    featureNew product capability or integration work
    on Sep 30, 2026
  2. AetherAI3 commented on Oct 6, 2026

    @AetherAI3
    OwnerAuthor

    Done — observer-only Aether Code viewer shipped and verified live.

    • Viewer route/build observation-only: AETHER-CLOUD#1932 removed ControlPanel, browser panel, inputs/forms and transcript from /rc and /rc/[sessionId]; control/takeover moved to a separate, flag-gated /rc-operator/[sessionId] declared under separate_profiles in the manifest. Deployed to app.aethersystems.net (2026-10-06).
    • Safe panels + accurate states: typed stream ends (disabled/gone/signed-out/busy/unavailable + Retry), panel titles no longer promise unsent data, honest "no public link" preview state.
    • Release test: site/scripts/rc-viewer-profile-scan.mjs runs as postbuild and in --url mode. Live anonymous scan of prod: 16 chunks, 0 findings (the pre-change prod build had 18). Passes with RC flags off (CI) and with viewer+control+browser compiled on (prod).
    • Agent pin: test/rc_viewer_profile.test.ts pins the profile to a byte-identical, hash-pinned copy of the Cloud manifest (landed in feat(rc): #229 release-gate prerequisites — real producers, host pump, truthful status #292).
    • Portal discovery: /code palette + account-menu entry "Remote viewer (Aether Agent)", explicitly view-only and not Aether Code browser sessions — present in the deployed /code bundle; the /rc list copy says the same (phone screenshot in the evidence).
    • Live journey evidence: docs/reviews/2026-10-06-rc-live-journey.md.
      Viewer UX bugs found on the phone are tracked in AETHER-CLOUD#1938.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    featureNew product capability or integration work

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions