Skip to content

Investigate remote browser account access and continuity across Mac and VPS #1

Open

Description

@OsirisMedici

Remote browser account access and continuity: diagnosis and handoff

Current status, 28 October 2026: The configured-browser fix is deployed on the live VPS as 0.1.4-nightly.20261027.3770+osiris.browser.1. The recorded live acceptance verifies preserved chats/GitHub authentication and direct Google sign-in followed by native YouTube access and fresh-tab reopen continuity. Deployment evidence. The local Google rejection report #2 is resolved. Instagram acceptance, cross-device continuity, and persistence of the new Google session across another browser-process restart remain unverified. The separate viewport fix is in fork PR #3, tested in isolated development but not installed. The upstream executable-override contribution is pingdotgg/t3code#26595; its current status must be read there. Historical diagnosis below is retained as context.

What I need

I use SSH/Tailscale so projects can run on a VPS instead of putting the load on my MacBook. I need agents to test those projects and work in signed-in websites, especially GitHub, YouTube, and Instagram. Extensions are optional; persistent sessions, account access, and reliable browser interaction are essential.

Browser friction over roughly the last 48 hours made me switch back to Codex. My current Codex setup reportedly supports the browser workflow I need. That comparison has not been independently verified. I want to continue this investigation from Codex over SSH and return to T3 when the problems are understood and fixed.

This issue is the shared handoff between computers, agents, and harnesses. Keep observed failures separate from hypotheses. Do not assume either a user-only setup problem or a general T3 regression.

Source versus running application

Baseline captured on 2026-10-28:

  • Fork: https://github.com/OsirisMedici/t3code
  • Checkout on VPS: /home/t3worker/projects/t3code, clean main at 0f4d050edee976297cb3886c0b2b07fc6937b3f3, matching the fork's remote main at inspection.
  • Active T3 service is a separate installed application: 0.1.4-nightly.20261027.3770, executable under ~/.t3/runtime/versions/0.1.4-nightly.20261027.3770/t3, listening on VPS loopback port 3773.
  • The inspected fork was not built, deployed, or used to replace that service. Selected installed code paths for persistent profiles and server-side port navigation match the source inspected; this is not proof of complete build equivalence.
  • User uses the T3 desktop app on a Mac. Its version and exact selected browser runtime/profile are still needed.
  • An earlier investigation under another project was stopped; its results are not evidence about this fork.

Expected versus observed

Check Result Evidence
Agent controls the shared browser PASS preview_status, then preview_open; navigate to Example Domain, snapshot, click the “Learn more” accessibility locator, and verify the IANA page renders. Navigation and click succeeded; no console errors for this interaction.
Browser location and profile are identifiable PASS t3_preview_list reports runtime: server, profile default. The browser process runs on the Linux VPS: Chrome Headless Shell 156.0.8078.70, persistent directory ~/.t3/userdata/server-browser/profiles/default. This is not the Mac's ordinary browser profile.
VPS project can render PASS preview_navigate with target: {kind: "environment-port", port: 8792} loads the existing Chalk app at http://localhost:8792/. Meaningful UI rendered, without a framework error overlay. This is a connectivity sample, not a test of the fork's UI.
Direct Tailscale-IP route to that port FAIL for that route http://<VPS_TAILSCALE_IP>:8792/ returns ERR_CONNECTION_REFUSED. The project listens on 127.0.0.1:8792, not the Tailscale interface. This alone is not a T3 defect.
Existing Tailscale Serve hostname route FAIL Existing configuration maps HTTPS port 8447 to http://127.0.0.1:8792. Browser navigation to https://<VPS_MAGICDNS_NAME>:8447/ returns ERR_NAME_NOT_RESOLVED. Direct TCP/TLS to the VPS Tailscale IP on 8447, with the hostname as SNI and certificate verification enabled, succeeds.
Signed-in website state BLOCKED In VPS Default, GitHub and YouTube show “Sign in”; Instagram shows its login form. No usable authenticated session was available. This does not prove that previously imported sessions were lost.
Storage continuity within the running browser PASS A unique, non-secret localStorage marker on the local project origin was visible in another Default-profile tab and survived closing all diagnostic tabs and opening a new tab without specifying a profile. The new tab selected Default. The marker was removed afterward.
Cross-device connection/session continuity UNVERIFIED No active connection was interrupted and no browser or T3 service was restarted. Persistence across browser-process restart, different agents, or computers was not demonstrated.

Additional website observations, without attempting login or posting anything:

  • YouTube: video-resource requests to googlevideo.com/videoplayback returned HTTP 403; console included Failed to load resource: the server responded with a status of 403 (Forbidden).
  • Instagram: /ajax/bulk-route-definitions/ returned HTTP 429; console included Error connecting to Credential Management service.
  • Snapshot console/network history can span navigations. Attribute each error by timestamp and request origin before drawing conclusions.
  • Causes of these website errors remain unproven. Do not assume they establish anti-bot blocking, a password-manager defect, or a T3 regression.

DNS finding and current permission blocker

tailscale dns status reports Tailscale DNS disabled while MagicDNS is enabled for the tailnet. The VPS uses systemd-resolved's local stub.

A direct DNS query for the VPS MagicDNS name demonstrated:

  • Tailscale DNS at 100.100.100.100: successful answer with the VPS Tailscale IP.
  • System resolver at 127.0.0.53: NXDOMAIN (rcode 3).

The proposed setting change was attempted but not applied:

$ tailscale set --accept-dns=true
Access denied: checkprefs access denied

Use 'sudo tailscale set --accept-dns=true'.

The T3 agent's Unix account is t3worker. Its sudo policy does not permit this command. An unrelated sudo helper must not be used to bypass that restriction. Codex having SSH configured does not itself establish administrator privileges; inspect the existing SSH destination/account and permissions.

From an authorized administrator session on the same VPS, the proposed command is tailscale set --accept-dns=true as root, or sudo tailscale set --accept-dns=true from a permitted account. Confirm the intended DNS configuration, record any change and rollback, and retest ordinary DNS as well as the MagicDNS name. Do not change tailnet-wide policy or restart T3 to perform this test. Discover the actual hostname/IP from tailscale status and the current tailscale serve status; placeholders above intentionally omit private infrastructure identifiers.

Browser/profile boundary to investigate

The fork's desktop import handler copies cookies into a local Electron browser partition scoped by environment/profile. The VPS server browser has a separate persistent context. Importing on the Mac therefore does not establish that the VPS browser has the same sessions. The documented import is a one-time cookie copy, not ongoing password or profile synchronization.

Relevant source, pinned to the inspected revision:

Continue from Codex or another agent

  1. Read this issue, its latest checkpoint comments, and the applicable AGENTS.md. Verify the actual checkout, branch, head, dirty state, machine, and running T3 build before working. Treat this handoff as context, not proof.
  2. Use the user's existing SSH connection to the same VPS. Establish the SSH account's permissions. Resolve the DNS blocker if authorized and possible, then repeat the existing 8447 browser route test. Preserve current forwarding and loopback bindings.
  3. Obtain the Mac T3 desktop version and establish whether each account is signed in inside T3 or only in the user's usual browser. Record the exact environment, browser runtime, profile ID, and where import/sign-in occurred.
  4. Reproduce the desired signed-in workflow with the user's chosen account/profile, then check continuity across safe connection/tab/agent changes. Do not request raw cookies, passwords, tokens, or copied credential stores. Do not conclude that a skill or Git sync transfers browser credentials.
  5. Recheck the website errors once a usable session is available. Distinguish DNS/routing, browser/profile selection, site responses, and automation-control failures. A generic navigation smoke test is not proof of the full agency workflow.
  6. Make only the smallest evidence-supported fix. If source changes are needed, use a task branch and repository-required focused proof. Keep the installed runtime separate from source testing. No PR, deployment, or active service replacement is authorized by this issue alone.

Preserve the current constraints: no logouts, cleared browser data, third-party writes/messages/purchases, copying credential stores, or replacement/restart of the active T3 service. No delegation or extra chats unless requested. Ordinary read-only source inspection is fine; use T3 shared preview tools for T3 browser tests, starting with preview_status. The user separately reports that their Codex browser setup works; verify that setup directly in its own harness when continuing there.

Checkpoint before switching computers or agents

Update this issue with a short comment containing:

  • What changed and what remains, separating observations from hypotheses.
  • Machine/environment, source branch, full commit SHA, and working-tree status; name any separate installed runtime.
  • Tests/reproductions and their results, exact relevant errors, and remaining blockers.
  • Infrastructure changes and rollback, if any, without secrets.
  • The next concrete action and the location of any evidence the next agent can actually access.

If code was changed, preserve only task-owned work on a named branch, run appropriate focused checks, and commit/push the task branch when authorized. Record its URL and SHA here. Do not treat a local-only file or uncommitted change as transferred work, and do not overwrite unrelated changes. Update this same issue when returning to T3.

Current rollout: Live VPS deployment verified on 0.1.4-nightly.20261027.3770+osiris.browser.1. Original chats/messages and GitHub session preserved; live Google/YouTube native agent authentication and fresh-tab persistence pass. Verified cold backup and runtime-only rollback are ready. Deployment checkpoint.

Prepared with GPT-6.1 Sol in the Codex harness, running through T3 Code.

Activity

  1. OsirisMedici commented on Oct 28, 2026

    @OsirisMedici
    OwnerAuthor

    Codex checkpoint, 28 October 2026, 20:25 IST

    The VPS DNS permission blocker is resolved. This was a host configuration fix. No T3 source, installed runtime, browser data, or Serve mapping changed.

    Access and independent verification

    • Used the user's existing SSH aliases. hostinger-t3 reaches vps-1 as t3worker, whose only passwordless root command is the unrelated vault-ops helper. That helper was not used. hostinger-osiris reaches the same machine as canvasadmin, with verified passwordless administrator access. The vps-1 alias's direct public-IP connection timed out; the hostname-based existing aliases work.
    • Source checkout /home/t3worker/projects/t3code is clean on main, full SHA 0f4d050edee976297cb3886c0b2b07fc6937b3f3. git ls-remote origin refs/heads/main returns that same SHA. Read the checkout's AGENTS.md.
    • The actual listener on 127.0.0.1:3773 is PID 2471299, executable /home/t3worker/.t3/runtime/versions/0.1.4-nightly.20261027.3770/t3. It is a child of systemd's MainPID 160835, an older 0.1.2-nightly.20261022.3512 launcher. Both are in t3code.service. Reading only MainPID's executable would misidentify the active listener build. MainPID remains 160835, NRestarts=0, service start remains 2026-10-25 23:01:34 UTC.
    • The existing VPS browser remains PID 2655938, Chrome Headless Shell 156.0.8078.70, using /home/t3worker/.t3/userdata/server-browser/profiles/default. No browser restart occurred.
    • The running Mac app is /Applications/T3 Code (Nightly).app, bundle version and short version both 0.1.4-nightly.20261027.3770.
    • No takeover skill was found on the Mac. The existing VPS skill /home/t3worker/.codex/skills/takeover/SKILL.md was subsequently found and read.

    Reproduction and change

    Before the change, CorpDNS=false. Direct queries to 100.100.100.100 resolved the VPS MagicDNS hostname; the system stub 127.0.0.53 returned NXDOMAIN. A normal HTTPS curl to the existing port 8447 failed with curl: (6) Could not resolve host. The same request with --resolve succeeded with HTTP 200, TLS certificate verification enabled and verification result 0.

    At 2026-10-28T14:50:09Z, through hostinger-osiris, ran:

    sudo -n tailscale set --accept-dns=true

    Compared parsed Tailscale preferences before/after. The only changed preference key was CorpDNS, from false to true. The SHA-256 of tailscale serve status --json was identical before and after. Existing loopback app bindings and private Serve mappings remain unchanged. No sudo policy or tailnet-wide configuration changed.

    Rollback, if needed, through that same administrator SSH account:

    sudo -n tailscale set --accept-dns=false

    Rollback was recorded, not executed, because validation passed.

    Validation and remaining boundary

    • System stub query now returns NOERROR and the correct Tailscale IPv4 answer. getent ahostsv4 resolves the VPS MagicDNS hostname.
    • github.com and example.com still resolve through the ordinary resolver path.
    • resolvectl status tailscale0 reports Tailscale DNS servers, the tailnet domain and split routes, with Default Route: no.
    • Normal hostname HTTPS request to the existing 8447 route returns HTTP 200 with TLS verification result 0, both from the VPS and the viewing Mac. No IP override or disabled certificate validation was used after the change.
    • Codex's in-app Browser opens that exact private HTTPS route and renders the Chalk MVP project list, including the existing VPS browser check project. This is Codex/Mac browser acceptance, not yet a repeat in T3's VPS shared browser.
    • The active T3 listener, service launcher, browser and Chalk upstream PIDs remain unchanged. No active service was restarted or replaced.

    Next: verify the same route in T3's existing VPS Default shared browser, and identify the actual signed-in account/profile boundary. This Codex session does not expose T3 preview_status/preview_open MCP tools. Do not borrow another agent's MCP bearer credential or copy browser credential stores to bypass that boundary. Website account state and cross-device continuity remain unproven. The existing issue's YouTube 403 and Instagram 429 findings have not been reclassified or attributed to DNS.

    Codex account comparison and final handoff

    Subsequent read-only checks used Codex's in-app Browser, not the user's personal Chrome automation connection. Existing sessions were usable without any login or import:

    • GitHub rendered the signed-in dashboard for OsirisMedici.
    • YouTube rendered the signed-in interface. Opening its account menu showed Osiris Medici @OsirisMedici and View your channel / Sign out.
    • Instagram rendered its signed-in interface and current-account profile link. No messages or posts were opened or sent.
    • Closed all three site diagnostic tabs, then opened this GitHub issue in a fresh tab. The signed-in GitHub navigation remained available and the saved checkpoint rendered. This verifies GitHub continuity between tabs within this already-running Codex browser, not across computers, browser-process restarts, or T3 profiles.

    T3's native Mac Settings > Browser showed agent browser access enabled and a single Default profile marked as default under the all-project/all-environment scope. No setting was changed. Returned the UI to the pre-existing Fresh diagnosis: T3 browser and VPS workflows chat, with no message sent and no new chat created. The current chat's environment ID is b8e24162-57fb-4fc0-b76b-6d0fd00ac156; the displayed environment label is the cached srv2000533 label. The server browser process confirms the persistent default directory, but this is not a fresh per-tab preview_status result.

    Re-read the actual desktop partition resolver and server persistent-context source at the verified SHA. Desktop Default partitions are scoped to environment ID, whereas the server launches its own persistent profile directory. The import guide describes a one-time cookie copy. This supports separate profile destinations, not a finding that old T3 sessions were lost.

    Remaining blocker: this Codex harness has no T3 shared preview MCP connection, so it cannot perform the required T3 preview_status / explicit-Default tab test through the supported T3 tools. Osiris answered that he is not sure where the earlier sign-ins occurred. Treat their original destination as unknown; do not infer session loss or ask him to reconstruct it as a prerequisite to testing the current T3 Default profile. No credential access, copying, fresh sign-in, or profile migration was attempted. The historical T3 signed-out results were not freshly reproduced after the DNS fix.

    Exact next action in T3: read this checkpoint, call preview_status, then open one task-owned tab with profileId: "default", reuseExistingTab: false. Verify the returned profile ID and runtime, navigate to the existing private MagicDNS HTTPS 8447 route discovered through tailscale serve status, and capture page identity. Then inspect GitHub, YouTube and Instagram signed-in state in that same persistent server profile, with the user's confirmed account choice. If signed out, arrange the user's sign-in in that exact tab. Check continuity using tab changes without restarting anything. Do not infer account access from the fixed DNS route. Do not move sessions through source/Git, borrow another agent's MCP token, or copy credential stores.

    Final SSH recheck: checkout still has no porcelain changes; listener PID 2471299, launcher PID 160835, browser PID 2655938, and upstream PID 3441558 retain their original start times. NRestarts=0.

    No source edits, task branch, implementation commit, PR, deployment, login, logout, account import, cleared browser data, or third-party website write occurred, apart from the requested updates to this GitHub issue. This issue comment is the portable evidence checkpoint; the local Markdown copy is only a convenience.

  2. OsirisMedici commented on Oct 28, 2026

    @OsirisMedici
    OwnerAuthor

    Note

    🤖 GPT-6.1 Sol responding on behalf of OsirisMedici

    The repaired private HTTPS 8447 route now passes in T3's actual VPS shared browser. Account access remains blocked by signed-out state in that browser's Default profile; sign-in and authenticated continuity are pending the user's direct interaction.

    • Resumed from the Codex checkpoint and read the issue's latest body/comments. Checkout remains clean on main at 0f4d050edee976297cb3886c0b2b07fc6937b3f3.
    • Called preview_status, then preview_open with profileId: "default", reuseExistingTab: false. The returned tab reports profileId: "default"; t3_preview_list confirms runtime: "server". This is a fresh tab in the existing VPS browser, not a Mac/Codex browser session.
    • Navigated that tab to the existing MagicDNS HTTPS 8447 route. T3 returned title Chalk, meaningful rendered welcome/project UI, and no console errors in the route snapshot. The prior ERR_NAME_NOT_RESOLVED is resolved in this supported T3 path, without an IP override or certificate bypass.
    • In that same tab/profile, GitHub and YouTube display Sign in, while Instagram displays Log into Instagram and its login form. No signed-in identity is established for any of the three in T3 Default. This does not establish loss of an earlier T3 session, because its original destination is unknown.
    • YouTube again returned 403 for googlevideo.com/videoplayback requests; a Google ServiceLogin request also returned 401. Instagram again returned 429 for /ajax/bulk-route-definitions/ and logged Error connecting to Credential Management service. Attribute resource errors by timestamp/origin because tab diagnostic history spans navigation. These observations do not establish the causes of those website responses.
    • Rechecked the original listener PID 2471299 and browser PID 2655938; both still exist at the previously verified installed T3 and Chrome Headless Shell executable paths. No source, infrastructure, browser-data, or service changes were made in this continuation.

    The same task-owned tab is intentionally left open at GitHub's standard sign-in page. The user was instructed to click Take control, sign in directly on GitHub with the intended account and complete any two-factor prompt, then click Release control and confirm completion. The earlier Codex checkpoint used GitHub account OsirisMedici; the T3 account still requires direct verification. No credential values are requested in chat, no credential stores are copied, and no snapshots will be taken while the user is entering credentials.

    Next: after the user's confirmation, verify GitHub's signed-in account, close and reopen its tab explicitly in VPS Default, and verify the same account remains signed in. Then repeat user-assisted sign-in and tab-reopen checks for YouTube and Instagram. Account sign-in, identity and authenticated persistence are not yet marked as passed. Do not restart T3/browser, clear data, or migrate credentials.

  3. OsirisMedici commented on Oct 28, 2026

    @OsirisMedici
    OwnerAuthor

    Note

    🤖 GPT-6.1 Sol responding on behalf of OsirisMedici

    GitHub account verification and authenticated tab-reopen continuity now pass in T3's VPS Default browser.

    • The user signed in directly in the shared browser and confirmed control was released. preview_status reported the original task-owned tab at https://github.com/, profile default, with agent control restored (generation 2).
    • Opened GitHub's user navigation menu through a fresh accessibility locator. Its heading identified OsirisMedici / Osiris Medici, and Sign out was available. No account-changing action was taken.
    • Closed that tab using t3_preview_close, then created a fresh tab with preview_open({profileId: "default", reuseExistingTab: false, url: "https://github.com"}).
    • The new tab reports default; t3_preview_list confirms runtime: "server". Opening its user navigation menu again identified OsirisMedici with Sign out available. No second login was required.

    This proves GitHub authentication survives closing/reopening tabs within the existing VPS persistent browser. It does not prove persistence across browser-process restart, another device, or a different profile. It also does not establish that previous sessions were lost.

    Moved the reopened Default tab to YouTube, which still showed Sign in. Clicking that link successfully rendered Google's normal sign-in form, with Email or phone and Next. The user has been asked to take control and sign in directly to the intended YouTube account, then release control. No credential values or verification codes are requested in chat; browser inspection is paused during human credential entry.

    Current results: private HTTPS 8447 route PASS; GitHub account identity and tab continuity PASS; YouTube user sign-in/account/continuity PENDING; Instagram sign-in/account/continuity PENDING. The earlier website resource errors remain separate observations, not proven login blockers.

    Rechecked original listener PID 2471299 and browser PID 2655938; both remain at the verified executable paths. No source edit, data clearing, credential copying, browser restart, or T3 restart occurred. Next is verification of the intended YouTube account and close/reopen continuity after the user releases control, followed by Instagram.

  4. OsirisMedici commented on Oct 28, 2026

    @OsirisMedici
    OwnerAuthor

    Note

    🤖 GPT-6.1 Sol responding on behalf of OsirisMedici

    YouTube sign-in is now confirmed blocked by Google's visible browser/app rejection. Filed the focused bug as #2 with reproduction steps, exact error text, installed runtime/browser versions, and the distinction between observed behavior and possible causes.

    The user-supplied screenshot shows Couldn't sign you in and This browser or app may not be secure, with T3 indicating You have control. Tab status confirms the Google /v3/signin/rejected path, title and VPS default profile. Account email and authentication URL query parameters were omitted from the public report.

    Current acceptance: private HTTPS project route PASS; GitHub OsirisMedici identity and authenticated tab-reopen continuity PASS; YouTube sign-in FAIL/blocked by #2, with identity and persistence untestable; Instagram sign-in/persistence still pending. Existing Codex YouTube authentication is a useful comparison but is not a matched fresh-login reproduction.

    The Google tab remains under human control and was left intact. A read-only snapshot request was rejected with A human controls this browser tab. Wait until they release control. No control bypass, login retries, cookie copying, data clearing, or service/browser restart was performed. This update uses the user's screenshot and tab metadata as its evidence. Next is investigation of #2 or a supported workaround; do not classify the rejection's underlying cause without proof.

  5. OsirisMedici commented on Oct 28, 2026

    @OsirisMedici
    OwnerAuthor

    Note

    🤖 GPT-6.1 Sol responding on behalf of OsirisMedici

    Reported the current-version reproduction on the original T3 repository: pingdotgg#17465 (comment).

    The exact Google rejection was already reported in pingdotgg#20867. A maintainer closed that report as a feature request and directed follow-up evidence to Ideas discussion pingdotgg#17465, so no duplicate upstream bug was opened. The new comment records our installed nightly/browser versions, manual sign-in rejection, working GitHub account/tab continuity, and the requirement that the authenticated browser remain accessible to the remote agent.

    The maintainer-described desktop workaround moves the tab outside the remote agent's reach, which does not meet this workflow. Other reports in that discussion describe the same constraint. This establishes prior upstream reports and a maintainer classification, not the technical cause of our reproduction.

    The fork's #2 remains the focused investigation record. No runtime/source changes, restarts, data clearing or credential migration occurred.

  6. OsirisMedici commented on Oct 28, 2026

    @OsirisMedici
    OwnerAuthor

    Note

    🤖 Codex responding on behalf of OsirisMedici

    The Google investigation now has an isolated source candidate running maintained full Chrome with its sandbox enabled. Real Google sign-in, account verification and tab-reopen persistence are still pending. See the detailed #2 checkpoint.

    • Candidate published on fix/server-browser-executable at 9169bd3e50d6c094d9192cee318f2e4ae53b501c; the VPS checkout is clean. It preserves the inherited executable override and adds a missing execute-permission regression test. No PR, merge or deployment.
    • Installed official Chrome stable 156.0.8078.73-1 alongside the live bundled browser. Existing Ubuntu AppArmor policy permits its standard executable path. Actual source runtime smoke reports namespace and Seccomp sandbox protection and loads Example Domain; no sandbox weakening was used.
    • Isolated source instance uses explicit home /home/t3worker/.local/state/t3-browser-acceptance, loopback backend 13773, web 5733, and a dedicated private Tailscale HTTPS mapping on 5733. Original Serve routes remain. No real data or credential stores were copied.
    • Paired this test app, explicitly selected its persistent Default profile, and reached Google's normal YouTube sign-in form. Chrome PID 107893 uses only the isolated profile directory. The user has control for direct login; inspection is paused during credential entry. The dev runner created one empty bootstrap record in its own database, with no provider turn or submitted message.
    • 22 focused tests, final formatting, lint and whitespace checks pass. Broad check:changed remains incomplete: format/lint/GraphQL passed, but parallel typecheck/knip/test were stopped under memory pressure. Stale earlier validators were also cancelled and no validation processes remain.
    • Original live T3 server 2471299 and browser 2655938 retain their start times. No live restart, binary replacement, browser-data clearing or session migration occurred. Browser computation remains on the VPS.

    Next: the user completes Google login in the isolated app and releases control. Verify the intended identity, an agent interaction, and close/reopen continuity in that exact Default profile. A normal sign-in form and green unit tests do not prove successful login. If rejected again, record the visible result without identifiers and reassess. Complete resource-bounded typecheck/knip before calling the source candidate fully validated. The detailed checkpoint records process/log locations and cleanup commands. Existing live GitHub continuity remains the earlier verified result; Instagram remains pending.

  7. OsirisMedici commented on Oct 28, 2026

    @OsirisMedici
    OwnerAuthor

    Note

    🤖 Codex responding on behalf of OsirisMedici

    The user completed Google sign-in in the isolated VPS source instance. YouTube account settings verified the Osiris Medici channel, and the same account remained signed in after closing the tab and opening a fresh tab explicitly in Default, without another login. Codex forwarded UI click/navigation successfully and returned the final tab to Watching by releasing control.

    This is an isolated candidate result, not a fix deployed to the live installation. Native T3-agent preview MCP interaction remains unverified because this Codex chat has no T3 preview connection; no other agent's credential or capability bypass was used. Full typecheck/knip also remain incomplete after the earlier resource-pressure cancellation. The candidate's 22 focused tests and format/lint/whitespace checks passed previously.

    The clean published branch remains fix/server-browser-executable at 9169bd3e50d6c094d9192cee318f2e4ae53b501c. Isolated Chrome PID 107893 still uses the separate acceptance home/profile, maintained Chrome stable and enabled sandbox. Original live server 2471299 and browser 2655938 retain their start times. No source changes this turn, restart, credential copying, live binary replacement, PR, merge or deployment.

    Next is a read-only native preview-tool interaction from an authorized session in the isolated environment, followed by resource-bounded typecheck/knip. Preserve the signed-in candidate profile and current live sessions. Detailed evidence and limits are recorded in #2's latest acceptance comment. Browser-process restart and cross-device persistence are not established; Instagram remains pending.

  8. OsirisMedici commented on Oct 28, 2026

    @OsirisMedici
    OwnerAuthor

    Note

    🤖 Codex responding on behalf of OsirisMedici

    The isolated candidate now passes native T3-agent authentication, interaction and tab-reopen continuity, and all remaining local changed-file checks. This supersedes the previous native-verification/typecheck/knip blockers.

    One bounded read-only turn in the existing isolated bootstrap thread used native preview_status, t3_preview_list, preview_open, preview_snapshot, preview_navigate, and t3_preview_close. Both agent-created tabs were explicitly fresh server/Default tabs. The public channel Osiris Medici stayed authenticated through navigation and closing/reopening without another login. The final authenticated agent tab is left open. Its actual tool-call transcript was checked independently; no borrowed credential or capability bypass was used. No additional chat was created.

    The same check:changed steps were run sequentially through a temporary ignored adapter, under a 5 GB / one-core validation scope. Format, lint, both knip passes, generated server GraphQL validation, typechecks for both affected packages, and 13 changed-file tests all passed; exit 0. The earlier focused browser run passed 22 tests. The committed check runner is unchanged. Full CI suites/build were not run.

    The clean branch remains fix/server-browser-executable at 9169bd3e50d6c094d9192cee318f2e4ae53b501c, matching the published branch. No new source change was needed. Original live server PID 2471299 and browser PID 2655938 retain their start times; no live restart, replacement, profile copying, clearing, PR, merge or deployment occurred. Isolated backend 60214 and browser 107893 also remained running throughout.

    Only the task-owned dev frontend was stopped to free memory for validation. The private preview is restored on the same route using unbundled dev mode and a transient user service capped at 3 GB RAM / one core. A bundled restore exceeded its own cap and was killed within that unit; it did not stop either backend/browser. The restored route returns verified HTTPS 200. Its frontend unit is t3-browser-acceptance-web.service; runtime/evidence remains under /home/t3worker/.local/state/t3-browser-acceptance/. The frontend unit is transient, and this development preview is not a reboot-persistent deployment.

    Final visual acceptance: the restored private preview renders the isolated app and its completed native verification report in Codex's in-app Browser. The frontend is active at about 1 GB current memory. Detailed tool/tab evidence and check durations are in #2's completion checkpoint.

    The Google/YouTube workflow is verified for this isolated candidate. Browser-process restart and cross-device persistence remain outside the tested boundary, and Instagram remains separate. The next step is review and a separately authorized deployment decision, not further login troubleshooting. Keep the live installation and both signed-in profiles intact.

  9. OsirisMedici commented on Oct 28, 2026

    @OsirisMedici
    OwnerAuthor

    Note

    🤖 Codex responding on behalf of OsirisMedici

    The browser fix is now applied to the live VPS T3 setup under the user's explicit deployment authorization. Existing chats, GitHub authentication, and live Google/YouTube native agent access all pass.

    Built from the exact installed nightly 3770 source 7c3b3b3605efa695e9948051b569937fc1482c0f plus the browser patch, not the older prototype base. Clean published branch fix/live-3770-browser-executable is at 7911191adf758686c9238be7b27aaa4321bfe642. The live runtime is 0.1.4-nightly.20261027.3770+osiris.browser.1, with maintained sandboxed Chrome in the original live Default profile directory.

    Before the controlled restart, made a verified private cold backup containing the userdata/profile and original runtimes/configuration. Post-start integrity, schema, all 32 original thread IDs/titles and all 542 original message payload hashes passed preservation checks. Verification messages were subsequently added only to the existing investigation chat. The native agent verified GitHub OsirisMedici before/after fresh-tab reopen without a login prompt, proving preservation of the pre-existing session through the restart.

    The user signed into Google directly in LIVE Default. The agent then verified Osiris Medici in its own fresh server/Default tab and again after closing/reopening, without login. An old tab retained a human-control flag despite the user's release click; it was left untouched. Verification used separate agent-owned tabs in the intended persistent profile. The final authenticated agent tab is open.

    Exact-release checks passed: 22 focused browser tests, formatting, lint, both knip passes, GraphQL validation, typechecks for three affected packages, changed-file tests, packaged startup smoke, and zero required migrations on a database snapshot. Full CI suites are not claimed.

    Backup/rollback directory: /home/t3worker/.local/state/t3-live-rollouts/20261028-browser/, private on the VPS. Runtime rollback readiness dry-run passed. T3 cleanup removed the old managed version directory, so the original runtime was separately restored from the verified archive into rollback-original/, outside cleanup. The rollback command rehydrates the old runtime as needed and keeps CURRENT userdata/profile files, rather than restoring stale chats. Detailed procedure, backup checksum, exact live/native evidence and source provenance are in #2's live rollout checkpoint.

    ssh hostinger-t3 'python3 /home/t3worker/.local/state/t3-live-rollouts/20261028-browser/rollout.py --rollback'

    This is the rollback action, not a routine check. No actual rollback was performed unnecessarily. No PR or merge was made. The live private UI is on the new dedicated tailnet HTTPS port 8449; the exact link is in the local handoff. Other Serve mappings and the isolated acceptance profile remain intact. Future upstream updates need review for this local patch; newly created Google-session persistence across another browser-process restart and cross-device continuity remain outside the tested boundary.

  10. OsirisMedici commented on Oct 28, 2026

    @OsirisMedici
    OwnerAuthor

    Note

    🤖 Codex responding on behalf of OsirisMedici

    The live Google/YouTube browser workflow is verified, and the upstream contribution is now open: pingdotgg/t3code#26595.

    The PR leads with the original Google rejection and the native T3 screenshot showing the authenticated public channel and owner controls. It includes setup/service documentation, scope, regression tests, and explicit acceptance limits. Both uploaded images were checked in the rendered PR.

    • Contribution: feat/server-browser-executable, commit 9fc8a2e60c68123e88da268e6b0debe6c8e45899; clean VPS checkout /home/t3worker/projects/t3code-contribution-browser. Three changed source/documentation files; screenshots are GitHub attachments, not repository assets.
    • Checks: red/green regression confirmed; 22 focused tests pass; formatting, lint, whitespace and first knip pass pass. Remaining local changed-file checks stopped under VPS memory pressure and are not claimed as passes. Upstream checks/review are pending.
    • Live deployment remains the previously verified patched 3770 build, source 7911191adf758686c9238be7b27aaa4321bfe642. The contribution head was not deployed. Existing chats and shared Default sessions remain in place; the live service is active.
    • Private backup and rollback remain at /home/t3worker/.local/state/t3-live-rollouts/20261028-browser. The rollback dry-run passed; rollback retains current chats/profile. No rollback was run unnecessarily.
    • The unused isolated acceptance backend/browser were stopped to release resources; their data/profile were retained. No live process was stopped for this contribution.

    Next step: resolve upstream CI/review on pingdotgg#26595. No merge or additional deployment is authorized. Process-restart persistence of the newly created Google session and non-Linux runtime acceptance remain untested; tab close/reopen persistence and native agent interaction passed on the live Linux instance.

  11. OsirisMedici commented on Oct 28, 2026

    @OsirisMedici
    OwnerAuthor

    Note

    🤖 Codex responding on behalf of OsirisMedici

    PR review follow-up: pingdotgg/t3code#26595 now includes commit d0fba2c7a9d309fe3efd2dfbca36b90cfd16e730 on feat/server-browser-executable. The contribution checkout is clean at /home/t3worker/projects/t3code-contribution-browser. The branch is now synced with upstream 9e09926d97824179d97311d1a810c6b5bb60d2d1 at head b1a1d26008b8146ae2ee38cbcf63b8c5a4e9cc71. There are no commits behind the base. The browser source/tests are unchanged by this sync; the focused tests were repeated with 30 passes and 3 browser-dependent skips, and scoped whitespace checks passed.

    Confirmed and fixed the review finding: an invalid executable override now fails HTML publication with the configuration error, cleans up its attachment and leaves no recoverable reference. An unset browser remains optional. Reply and regression evidence. The original review thread is resolved.

    Checks on the follow-up: 30 focused tests passed; 3 existing browser-dependent tests skipped without a test browser. The extended invalid-path cases and added HTML-publication regression failed before this fix. Formatting, lint, whitespace, the first knip pass and server GraphQL generation passed. Knip exports checking exhausted its worker heap. The sequential job was capped at 3 GiB with no swap and one CPU; it terminated during typechecking as memory pressure rose and was stopped. No validation job remains running.

    The user guide and PR description are updated. Both original before/after images still render at the top and are explicitly identified as evidence from the earlier patched-release acceptance, not a new live deployment.

    Blocker and exact next step: a maintainer must approve the fork's GitHub Actions runs, including CI for this PR. The required test/build checks have not run. After approval, inspect those results and current-head reviews, then fix any real findings on this branch. Do not call the PR fully green before those checks run.

    The live service, installed runtime, browser profile, chats and sessions were not changed or restarted. Nothing was merged or deployed. The earlier private backup/rollback plan remains in place.

  12. OsirisMedici commented on Oct 28, 2026

    @OsirisMedici
    OwnerAuthor

    Note

    🤖 GPT-6.1 Sol responding on behalf of OsirisMedici

    The original DNS and GitHub/Google access blockers have recorded successful acceptance, and #2 is being closed as resolved in the local installation. I corrected this issue's stale opening status so it no longer presents the Google rejection as the current live result.

    This umbrella stays open for its unverified acceptance scope: Instagram sign-in/agent interaction, cross-device continuity, and the newly created Google session surviving another browser-process restart. Those are not established by a source fix, tab reopen, or the isolated viewport test. Completing them needs the corresponding user-driven account/device checks and a separately authorized restart window where relevant.

    Fork PR #3 addresses viewport/control sizing, not authentication. Its queued CI jobs request upstream-only Blacksmith runner labels while this fork has no registered runners. A fork runner fallback is being prepared so checks can execute. No live installation change is part of this repository follow-up.

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

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions