Repository navigation
fix(connect): identify rejected environment links and allow explicit relinking - #359
Conversation
|
Scope clarification from deeper tracing: the relay shares |
|
What: No blocking findings on candidate Reviewed Issue #358, the candidate's complete diff, upstream merged PR pingdotgg/t3code#19379 ( Confirmed by source inspection:
Independent focused check: Identity limitation: the PR and workspace advanced during review to Requirements and who asked: Parent requested read-only, exact-SHA independent review of Issue #358's existing-component repair. Reviewer: GPT-6.1-Sol, high effort, Codex harness through T3 Code. No merge performed. |
|
What: No blocking findings on final candidate Read Issue #358 and its comments, PR #359 and its comments, the entire final cumulative diff, the complete merged upstream #19379 diff ( Confirmed by source inspection:
Proof disposition: reused the prior independent Sol run of 5 files / 57 focused tests recorded at #359 (comment) because the final delta changes neither production code nor test inputs. No tests or broad checks were duplicated in this round. Independently reran the cumulative diff whitespace check: exit 0. The reported five failing-before lifecycle regressions, 55 nearby tests and targeted typechecks remain author-provided evidence, not new executions by this reviewer. Full CI completion is a separate merge gate. The workspace remained clean at the requested final SHA. No source/file/Git mutations, browser use, servers, live-data writes, restarts or merges were performed. This review does not claim that bestia access is restored. Requirements and who asked: Parent requested read-only independent Sol review, high effort, of the exact final candidate for Issue #358's bounded existing-component repair. Reviewer: GPT-6.1-Sol, high effort, Codex harness through T3 Code. Verdict applies only to |
Thread transfer impact✅ Thread transfer remains within every enforced ceiling.
Baseline: Scenario and decoded snapshot size10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.
Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed. |
|
What: Blocking
Evidence: each blob is identical between Required fix: list the eight paths in Rejected-link behaviorNo blocking finding in the port. The server, CLI, and contract diff matches upstream
Cleared: a successful registration removes the mark outside that lock. The acceptance case is the late Independent check, on production blobs identical to this SHA: IdentityDuring this review the PR head moved to Requirements and who asked: Parent requested a read-only Grok review of the exact candidate for Issue #358. Reviewer: Grok, high effort. No merge. |
|
Accepted Grok finding for old head |
|
What: No blocking findings on final candidate Inventory fixThe only delta from reviewed Each of these paths occurs once in
BehaviorReused the behavioral verdict and the 57-test run from #359 (comment). Those tests ran on these same production and test blobs. This round did not rerun them. Re-read the cumulative server, CLI, and contract diff: registration and recovery CICheck runs on Requirements and who asked: Parent requested a read-only Grok review of the exact final candidate for Issue #358. Reviewer: Grok, high effort. Verdict applies only to |
|
What: Both required independent reviews passed on final head Exact-head findings and verdicts:
The current head has green CI, including all six server shards and Fork Stack Model. No remaining review finding is unresolved. This relays the reviewers' verdicts; live T3 Connect access has not been restored or verified, and #358 stays open. |
What: The server and CLI identify rejected T3 Connect links and support explicit relinking.
Why: A deleted bestia tunnel triggers replacement requests, but the relay answers
401 not_authorizedwhile saved status still says provisioned.So what: Merge the reviewed server repair; live bestia access still needs fresh account authorization before a supported relink.
Port the server, CLI and optional API-state portion of upstream #19379, merged as
8e018ff91f64d6caedc029e498eca446ff0fad20. Registration and running-host recovery mark a rejected credential without deleting it or automatically relinking. Explicitt3 connect linkdrops the rejected link while retaining sign-in/preferences. Accepted registration, recovery, configuration and unlink clear the mark. A late rejection cannot mark a concurrently replaced credential.This is the headless server repair for #358. Upstream's optional UI changes are deferred to normal upstream absorption; existing clients tolerate the optional API field. No browser, provider, tunnel quota or relay deployment changes. Package versions remain upstream-owned.
Proof: 57 focused tests pass, including registration/recovery 401, retained credentials, concurrent relink and mark clearing. Five lifecycle regressions fail against the original production implementation, then pass with this patch. Server and contracts typechecks, targeted lint/format and whitespace checks pass. Additional nearby tunnel/link tests are recorded on #358.
Live limitation: bestia's account OAuth refresh independently returns HTTP 400
invalid_grant; its environment recovery receives relay HTTP 401. No live unlink or restart was attempted. This PR makes the state actionable, and does not claim restored phone access. The operational Issue stays open until outside-client proof exists.Requirements and who asked: User requested diagnosis, supported recovery and an independently reviewed product repair where applicable.
Deleted: No manual token editing, automatic reauthorization, quota workaround, extra retries, UI work or service restart.
Bottleneck: Relay will not accept the stored environment credential; the account refresh grant is also invalid.
Checked myself: Live failure traces and clocks, recovery/auth/quota code, upstream complete diff, baseline regressions and focused checks.
Website impact: none, server/CLI behavior and existing troubleshooting guide only. No SEO or URL changes.
Model and harness: GPT-6.1-Sol, medium effort, Codex through T3 Code.