feat(fork): promote v0.0.36 Dulli rebuild - #41

Merged
YJJosh merged 396 commits into
mainfrom
promote/t3dulli-v0.0.36
Sep 2, 2026
Merged

feat(fork): promote v0.0.36 Dulli rebuild#41
YJJosh merged 396 commits into
mainfrom
promote/t3dulli-v0.0.36

Conversation

@YJJosh

Copy link
Copy Markdown
Owner

What Changed

This promotes the reviewed T3 Dulli rebuild based on upstream stable v0.0.36.

  • Preserves the Dulli desktop/mobile identity, installation paths, update repository, signing continuity, Android package, and @yjosh/t3 CLI.
  • Integrates Pi 0.84.4 as a first-class provider with profiles, usage, task controls, reasoning, tools, background terminals, durable child transcripts, subagents, and workflows.
  • Restores Workler-backed workspace creation while retaining upstream Start from origin behavior.
  • Restores the dedicated Fork features settings section and Dulli workspace/branch defaults.
  • Keeps fork release automation isolated in .github/workflows/fork-desktop-release.yml; upstream publishers, relay deployment, EAS, and store workflows remain disabled.
  • Rebuilds the web/desktop Agents inspector around one workflow roster item, a phase tree, per-agent model labels, and live chat-style agent transcripts.

Promotion note: this head records the previous main as a merge parent while preserving the rebuilt tree exactly. Merge with a merge commit, not squash or rebase. The previous fork main is also preserved at archive/pre-v0.0.36-dulli-rebuild.

Why

The previous fork main predated upstream stable v0.0.36 and carried provider, workspace, and release implementations that no longer matched the canonical runtime. A normal content merge would reintroduce obsolete architecture. This promotion keeps the reviewed rebuild as the exact resulting tree while preserving both histories.

UI Changes

Fork settings

Before: fork controls mixed into GeneralAfter: dedicated fork section and defaults
Fork settings beforeFork settings after

Workflow details

Before: one aggregate model labelAfter: model shown on each workflow agent
Workflow detail beforeWorkflow detail after

Verification

  • Focused server tests passed for Pi projection/replay, runtime ingestion, task controls, settings persistence, Workler behavior, release helpers, and publisher isolation.
  • Focused web/client/contracts tests passed for agent transcripts, workflows, settings, trait scoping, composer behavior, and runtime folding.
  • Web, server, client-runtime, and contracts typechecks passed.
  • Targeted lint, formatting, and diff checks passed.
  • Playwright verified workflow navigation, per-agent models, persisted child conversations, prompt deduplication, responsive layouts, and fork settings with no new console errors.
  • The release path was exercised by v0.0.36-pi.2, including desktop matrices, updater manifests, signatures, Android identity/signing, GitHub assets, and npm publication. Follow-up UI commits remain unreleased.
  • Live mobile verification remains pending because this host has no available device or emulator; the current inspector redesign does not change mobile behavior.

Checklist

  • This PR is focused on one concern: promoting the clean Dulli rebuild.
  • I explained what changed and why.
  • I included before/after screenshots for UI changes.
  • No new motion or animation requires a video.

Implemented with GPT-5.6 Sol using the pi coding-agent harness.

none23and others added 30 commits August 18, 2026 09:37
…in GitHubPullRequestCli (pingdotgg#7385)
Signed-off-by: aoright <102943475+aoright@users.noreply.github.com>
Co-authored-by: shivam <91240327+shivamhwp@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
…t full speed (pingdotgg#7460)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…nt (pingdotgg#6563)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…tgg#6286)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: GPT-5.6 <noreply@openai.com>
@chatgpt-codex-connector

chatgpt-codex-connectorBot commented Sep 1, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

ReviewStatusCommitReview trigger
📝 Code ReviewCompleted2026-09-02T19:35:00.711115Zf3cf060Manual request
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@github-actionsgithub-actionsBot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XXL 1,000+ effective changed lines (test files excluded in mixed PRs). 📱 Native Change Changes the native fingerprint; merging blocks production OTAs until a new store build ships. labels Sep 1, 2026
@github-actions

github-actionsBot commented Sep 1, 2026

Copy link
Copy Markdown

Thread transfer impact

✅ Thread transfer remains within every enforced ceiling.

ProviderMetricMain baselineThis PRImpactPR ceiling
CodexTotal thread wire11.5 KiB13.3 KiB+1.8 KiB (+15.2%)15.1 KiB
CodexThread snapshot wire5.6 KiB6.9 KiB+1.3 KiB (+23.3%)7.3 KiB
CodexLive turn WebSocket wire5.9 KiB6.4 KiB+459 B (+7.6%)7.8 KiB
CodexLive turn WebSocket decoded51.4 KiB55.5 KiB+4.1 KiB (+8.0%)66.4 KiB
CodexLive turn messages169−7 (−43.8%)21
ClaudeTotal thread wire11.5 KiB13.3 KiB+1.8 KiB (+15.4%)15.1 KiB
ClaudeThread snapshot wire5.6 KiB6.9 KiB+1.3 KiB (+23.0%)7.3 KiB
ClaudeLive turn WebSocket wire5.9 KiB6.4 KiB+491 B (+8.1%)7.8 KiB
ClaudeLive turn WebSocket decoded52.2 KiB56.4 KiB+4.1 KiB (+7.9%)66.4 KiB
ClaudeLive turn messages169−7 (−43.8%)21

Baseline: 33b5e46 · PR result: f3cf060 · Source CI: success

Scenario and decoded snapshot size

10 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.

  • Codex decoded thread snapshot: 109.4 KiB
  • Claude decoded thread snapshot: 110.1 KiB

Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed.

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

constdiscovery=yield*discoverPiModels({
agentDir: settings.agentDir||undefined,
profile: settings.profile||undefined,
}).pipe(

P1 Badge Apply the instance environment during Pi model discovery

When a Pi provider instance supplies credentials or custom-provider configuration through its Environment settings, PiDriver passes that merged environment to the version probe and spawned Pi process, but this SDK discovery runs in the server process without applying it. Consequently getAvailable() can report no models and an unauthenticated provider even though the actual Pi subprocess has valid credentials, leaving the model picker unusable for that supported configuration. Run discovery with the same per-instance environment.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadapps/server/src/usage/UsageService.ts Outdated
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed the Pi model-discovery finding in 9f1025404: provider status now passes the merged instance environment into SDK discovery, which runs in a bounded worker so extension/provider credentials never mutate the server process environment. Added a real extension-backed isolation test.

The same commit addresses the multi-instance Usage finding and the failing compatibility-boundary test. Focused verification: 52 tests passed, affected contracts/shared/server typechecks passed, targeted format/lint passed, and the server bundle build passed.

@codex review

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit:9f1025404e

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadapps/server/src/usage/UsageService.ts Outdated
Comment threadapps/server/src/usage/usageTranscriptReader.ts
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed both follow-up findings in 68b56ea32. Usage now resolves roots from the hydrated Claude, Codex, Grok, and Pi instance set with per-instance environments, while incomplete directory/file reads surface partial coverage and cannot prune cache entries from incomplete walks.

Focused verification: 60 tests passed across provider discovery, Usage resolution/reading/aggregation, and shared merging; affected typechecks and targeted format/lint passed; the server bundle build passed.

@codex review

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit:68b56ea322

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadpackages/shared/src/usageMerge.ts
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed the complete-vs-partial source ordering finding in f3cf060a1, with focused regression coverage. The previous 68b56ea32 CI run was fully green; the latest commit is a two-file shared merge/test change and its focused tests, typecheck, format, and lint pass.

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 🎉

Reviewed commit:f3cf060a1c

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@YJJosh
YJJosh merged commit e4d4d5b into mainSep 2, 2026
15 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📱 Native ChangeChanges the native fingerprint; merging blocks production OTAs until a new store build ships.size:XXL1,000+ effective changed lines (test files excluded in mixed PRs).vouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@YJJosh@none23@maslinedwin@aoright@gbarros-dev@Bil0000@Rishet11@StiensWout@AugusDogus@tarik02@gsimone@t3dotgg@chrisdeeming@inayayousfi@RakshithBhat03@dbalders@maria-rcks@UtkarshUsername@SunkenInTime@lgwacker
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

feat(fork): promote v0.0.36 Dulli rebuild - #41

Merged
YJJosh merged 396 commits into
mainfrom
promote/t3dulli-v0.0.36
Sep 2, 2026
Merged

feat(fork): promote v0.0.36 Dulli rebuild#41
YJJosh merged 396 commits into
mainfrom
promote/t3dulli-v0.0.36

Conversation

@YJJosh

Copy link
Copy Markdown
Owner

What Changed

This promotes the reviewed T3 Dulli rebuild based on upstream stable v0.0.36.

  • Preserves the Dulli desktop/mobile identity, installation paths, update repository, signing continuity, Android package, and @yjosh/t3 CLI.
  • Integrates Pi 0.84.4 as a first-class provider with profiles, usage, task controls, reasoning, tools, background terminals, durable child transcripts, subagents, and workflows.
  • Restores Workler-backed workspace creation while retaining upstream Start from origin behavior.
  • Restores the dedicated Fork features settings section and Dulli workspace/branch defaults.
  • Keeps fork release automation isolated in .github/workflows/fork-desktop-release.yml; upstream publishers, relay deployment, EAS, and store workflows remain disabled.
  • Rebuilds the web/desktop Agents inspector around one workflow roster item, a phase tree, per-agent model labels, and live chat-style agent transcripts.

Promotion note: this head records the previous main as a merge parent while preserving the rebuilt tree exactly. Merge with a merge commit, not squash or rebase. The previous fork main is also preserved at archive/pre-v0.0.36-dulli-rebuild.

Why

The previous fork main predated upstream stable v0.0.36 and carried provider, workspace, and release implementations that no longer matched the canonical runtime. A normal content merge would reintroduce obsolete architecture. This promotion keeps the reviewed rebuild as the exact resulting tree while preserving both histories.

UI Changes

Fork settings

Before: fork controls mixed into GeneralAfter: dedicated fork section and defaults
Fork settings beforeFork settings after

Workflow details

Before: one aggregate model labelAfter: model shown on each workflow agent
Workflow detail beforeWorkflow detail after

Verification

  • Focused server tests passed for Pi projection/replay, runtime ingestion, task controls, settings persistence, Workler behavior, release helpers, and publisher isolation.
  • Focused web/client/contracts tests passed for agent transcripts, workflows, settings, trait scoping, composer behavior, and runtime folding.
  • Web, server, client-runtime, and contracts typechecks passed.
  • Targeted lint, formatting, and diff checks passed.
  • Playwright verified workflow navigation, per-agent models, persisted child conversations, prompt deduplication, responsive layouts, and fork settings with no new console errors.
  • The release path was exercised by v0.0.36-pi.2, including desktop matrices, updater manifests, signatures, Android identity/signing, GitHub assets, and npm publication. Follow-up UI commits remain unreleased.
  • Live mobile verification remains pending because this host has no available device or emulator; the current inspector redesign does not change mobile behavior.

Checklist

  • This PR is focused on one concern: promoting the clean Dulli rebuild.
  • I explained what changed and why.
  • I included before/after screenshots for UI changes.
  • No new motion or animation requires a video.

Implemented with GPT-5.6 Sol using the pi coding-agent harness.

none23and others added 30 commits August 18, 2026 09:37
…in GitHubPullRequestCli (pingdotgg#7385)
Signed-off-by: aoright <102943475+aoright@users.noreply.github.com>
Co-authored-by: shivam <91240327+shivamhwp@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
…t full speed (pingdotgg#7460)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…nt (pingdotgg#6563)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…tgg#6286)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: GPT-5.6 <noreply@openai.com>
@chatgpt-codex-connector

chatgpt-codex-connectorBot commented Sep 1, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

ReviewStatusCommitReview trigger
📝 Code ReviewCompleted2026-09-02T19:35:00.711115Zf3cf060Manual request
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@github-actionsgithub-actionsBot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XXL 1,000+ effective changed lines (test files excluded in mixed PRs). 📱 Native Change Changes the native fingerprint; merging blocks production OTAs until a new store build ships. labels Sep 1, 2026
@github-actions

github-actionsBot commented Sep 1, 2026

Copy link
Copy Markdown

Thread transfer impact

✅ Thread transfer remains within every enforced ceiling.

ProviderMetricMain baselineThis PRImpactPR ceiling
CodexTotal thread wire11.5 KiB13.3 KiB+1.8 KiB (+15.2%)15.1 KiB
CodexThread snapshot wire5.6 KiB6.9 KiB+1.3 KiB (+23.3%)7.3 KiB
CodexLive turn WebSocket wire5.9 KiB6.4 KiB+459 B (+7.6%)7.8 KiB
CodexLive turn WebSocket decoded51.4 KiB55.5 KiB+4.1 KiB (+8.0%)66.4 KiB
CodexLive turn messages169−7 (−43.8%)21
ClaudeTotal thread wire11.5 KiB13.3 KiB+1.8 KiB (+15.4%)15.1 KiB
ClaudeThread snapshot wire5.6 KiB6.9 KiB+1.3 KiB (+23.0%)7.3 KiB
ClaudeLive turn WebSocket wire5.9 KiB6.4 KiB+491 B (+8.1%)7.8 KiB
ClaudeLive turn WebSocket decoded52.2 KiB56.4 KiB+4.1 KiB (+7.9%)66.4 KiB
ClaudeLive turn messages169−7 (−43.8%)21

Baseline: 33b5e46 · PR result: f3cf060 · Source CI: success

Scenario and decoded snapshot size

10 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.

  • Codex decoded thread snapshot: 109.4 KiB
  • Claude decoded thread snapshot: 110.1 KiB

Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed.

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

constdiscovery=yield*discoverPiModels({
agentDir: settings.agentDir||undefined,
profile: settings.profile||undefined,
}).pipe(

P1 Badge Apply the instance environment during Pi model discovery

When a Pi provider instance supplies credentials or custom-provider configuration through its Environment settings, PiDriver passes that merged environment to the version probe and spawned Pi process, but this SDK discovery runs in the server process without applying it. Consequently getAvailable() can report no models and an unauthenticated provider even though the actual Pi subprocess has valid credentials, leaving the model picker unusable for that supported configuration. Run discovery with the same per-instance environment.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadapps/server/src/usage/UsageService.ts Outdated
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed the Pi model-discovery finding in 9f1025404: provider status now passes the merged instance environment into SDK discovery, which runs in a bounded worker so extension/provider credentials never mutate the server process environment. Added a real extension-backed isolation test.

The same commit addresses the multi-instance Usage finding and the failing compatibility-boundary test. Focused verification: 52 tests passed, affected contracts/shared/server typechecks passed, targeted format/lint passed, and the server bundle build passed.

@codex review

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit:9f1025404e

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadapps/server/src/usage/UsageService.ts Outdated
Comment threadapps/server/src/usage/usageTranscriptReader.ts
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed both follow-up findings in 68b56ea32. Usage now resolves roots from the hydrated Claude, Codex, Grok, and Pi instance set with per-instance environments, while incomplete directory/file reads surface partial coverage and cannot prune cache entries from incomplete walks.

Focused verification: 60 tests passed across provider discovery, Usage resolution/reading/aggregation, and shared merging; affected typechecks and targeted format/lint passed; the server bundle build passed.

@codex review

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit:68b56ea322

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadpackages/shared/src/usageMerge.ts
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed the complete-vs-partial source ordering finding in f3cf060a1, with focused regression coverage. The previous 68b56ea32 CI run was fully green; the latest commit is a two-file shared merge/test change and its focused tests, typecheck, format, and lint pass.

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 🎉

Reviewed commit:f3cf060a1c

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@YJJosh
YJJosh merged commit e4d4d5b into mainSep 2, 2026
15 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📱 Native ChangeChanges the native fingerprint; merging blocks production OTAs until a new store build ships.size:XXL1,000+ effective changed lines (test files excluded in mixed PRs).vouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@YJJosh@none23@maslinedwin@aoright@gbarros-dev@Bil0000@Rishet11@StiensWout@AugusDogus@tarik02@gsimone@t3dotgg@chrisdeeming@inayayousfi@RakshithBhat03@dbalders@maria-rcks@UtkarshUsername@SunkenInTime@lgwacker
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

feat(fork): promote v0.0.36 Dulli rebuild - #41

Merged
YJJosh merged 396 commits into
mainfrom
promote/t3dulli-v0.0.36
Sep 2, 2026
Merged

feat(fork): promote v0.0.36 Dulli rebuild#41
YJJosh merged 396 commits into
mainfrom
promote/t3dulli-v0.0.36

Conversation

@YJJosh

Copy link
Copy Markdown
Owner

What Changed

This promotes the reviewed T3 Dulli rebuild based on upstream stable v0.0.36.

  • Preserves the Dulli desktop/mobile identity, installation paths, update repository, signing continuity, Android package, and @yjosh/t3 CLI.
  • Integrates Pi 0.84.4 as a first-class provider with profiles, usage, task controls, reasoning, tools, background terminals, durable child transcripts, subagents, and workflows.
  • Restores Workler-backed workspace creation while retaining upstream Start from origin behavior.
  • Restores the dedicated Fork features settings section and Dulli workspace/branch defaults.
  • Keeps fork release automation isolated in .github/workflows/fork-desktop-release.yml; upstream publishers, relay deployment, EAS, and store workflows remain disabled.
  • Rebuilds the web/desktop Agents inspector around one workflow roster item, a phase tree, per-agent model labels, and live chat-style agent transcripts.

Promotion note: this head records the previous main as a merge parent while preserving the rebuilt tree exactly. Merge with a merge commit, not squash or rebase. The previous fork main is also preserved at archive/pre-v0.0.36-dulli-rebuild.

Why

The previous fork main predated upstream stable v0.0.36 and carried provider, workspace, and release implementations that no longer matched the canonical runtime. A normal content merge would reintroduce obsolete architecture. This promotion keeps the reviewed rebuild as the exact resulting tree while preserving both histories.

UI Changes

Fork settings

Before: fork controls mixed into GeneralAfter: dedicated fork section and defaults
Fork settings beforeFork settings after

Workflow details

Before: one aggregate model labelAfter: model shown on each workflow agent
Workflow detail beforeWorkflow detail after

Verification

  • Focused server tests passed for Pi projection/replay, runtime ingestion, task controls, settings persistence, Workler behavior, release helpers, and publisher isolation.
  • Focused web/client/contracts tests passed for agent transcripts, workflows, settings, trait scoping, composer behavior, and runtime folding.
  • Web, server, client-runtime, and contracts typechecks passed.
  • Targeted lint, formatting, and diff checks passed.
  • Playwright verified workflow navigation, per-agent models, persisted child conversations, prompt deduplication, responsive layouts, and fork settings with no new console errors.
  • The release path was exercised by v0.0.36-pi.2, including desktop matrices, updater manifests, signatures, Android identity/signing, GitHub assets, and npm publication. Follow-up UI commits remain unreleased.
  • Live mobile verification remains pending because this host has no available device or emulator; the current inspector redesign does not change mobile behavior.

Checklist

  • This PR is focused on one concern: promoting the clean Dulli rebuild.
  • I explained what changed and why.
  • I included before/after screenshots for UI changes.
  • No new motion or animation requires a video.

Implemented with GPT-5.6 Sol using the pi coding-agent harness.

none23and others added 30 commits August 18, 2026 09:37
…in GitHubPullRequestCli (pingdotgg#7385)
Signed-off-by: aoright <102943475+aoright@users.noreply.github.com>
Co-authored-by: shivam <91240327+shivamhwp@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
…t full speed (pingdotgg#7460)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…nt (pingdotgg#6563)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…tgg#6286)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: GPT-5.6 <noreply@openai.com>
@chatgpt-codex-connector

chatgpt-codex-connectorBot commented Sep 1, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

ReviewStatusCommitReview trigger
📝 Code ReviewCompleted2026-09-02T19:35:00.711115Zf3cf060Manual request
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@github-actionsgithub-actionsBot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XXL 1,000+ effective changed lines (test files excluded in mixed PRs). 📱 Native Change Changes the native fingerprint; merging blocks production OTAs until a new store build ships. labels Sep 1, 2026
@github-actions

github-actionsBot commented Sep 1, 2026

Copy link
Copy Markdown

Thread transfer impact

✅ Thread transfer remains within every enforced ceiling.

ProviderMetricMain baselineThis PRImpactPR ceiling
CodexTotal thread wire11.5 KiB13.3 KiB+1.8 KiB (+15.2%)15.1 KiB
CodexThread snapshot wire5.6 KiB6.9 KiB+1.3 KiB (+23.3%)7.3 KiB
CodexLive turn WebSocket wire5.9 KiB6.4 KiB+459 B (+7.6%)7.8 KiB
CodexLive turn WebSocket decoded51.4 KiB55.5 KiB+4.1 KiB (+8.0%)66.4 KiB
CodexLive turn messages169−7 (−43.8%)21
ClaudeTotal thread wire11.5 KiB13.3 KiB+1.8 KiB (+15.4%)15.1 KiB
ClaudeThread snapshot wire5.6 KiB6.9 KiB+1.3 KiB (+23.0%)7.3 KiB
ClaudeLive turn WebSocket wire5.9 KiB6.4 KiB+491 B (+8.1%)7.8 KiB
ClaudeLive turn WebSocket decoded52.2 KiB56.4 KiB+4.1 KiB (+7.9%)66.4 KiB
ClaudeLive turn messages169−7 (−43.8%)21

Baseline: 33b5e46 · PR result: f3cf060 · Source CI: success

Scenario and decoded snapshot size

10 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.

  • Codex decoded thread snapshot: 109.4 KiB
  • Claude decoded thread snapshot: 110.1 KiB

Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed.

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

constdiscovery=yield*discoverPiModels({
agentDir: settings.agentDir||undefined,
profile: settings.profile||undefined,
}).pipe(

P1 Badge Apply the instance environment during Pi model discovery

When a Pi provider instance supplies credentials or custom-provider configuration through its Environment settings, PiDriver passes that merged environment to the version probe and spawned Pi process, but this SDK discovery runs in the server process without applying it. Consequently getAvailable() can report no models and an unauthenticated provider even though the actual Pi subprocess has valid credentials, leaving the model picker unusable for that supported configuration. Run discovery with the same per-instance environment.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadapps/server/src/usage/UsageService.ts Outdated
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed the Pi model-discovery finding in 9f1025404: provider status now passes the merged instance environment into SDK discovery, which runs in a bounded worker so extension/provider credentials never mutate the server process environment. Added a real extension-backed isolation test.

The same commit addresses the multi-instance Usage finding and the failing compatibility-boundary test. Focused verification: 52 tests passed, affected contracts/shared/server typechecks passed, targeted format/lint passed, and the server bundle build passed.

@codex review

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit:9f1025404e

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadapps/server/src/usage/UsageService.ts Outdated
Comment threadapps/server/src/usage/usageTranscriptReader.ts
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed both follow-up findings in 68b56ea32. Usage now resolves roots from the hydrated Claude, Codex, Grok, and Pi instance set with per-instance environments, while incomplete directory/file reads surface partial coverage and cannot prune cache entries from incomplete walks.

Focused verification: 60 tests passed across provider discovery, Usage resolution/reading/aggregation, and shared merging; affected typechecks and targeted format/lint passed; the server bundle build passed.

@codex review

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit:68b56ea322

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadpackages/shared/src/usageMerge.ts
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed the complete-vs-partial source ordering finding in f3cf060a1, with focused regression coverage. The previous 68b56ea32 CI run was fully green; the latest commit is a two-file shared merge/test change and its focused tests, typecheck, format, and lint pass.

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 🎉

Reviewed commit:f3cf060a1c

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@YJJosh
YJJosh merged commit e4d4d5b into mainSep 2, 2026
15 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📱 Native ChangeChanges the native fingerprint; merging blocks production OTAs until a new store build ships.size:XXL1,000+ effective changed lines (test files excluded in mixed PRs).vouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@YJJosh@none23@maslinedwin@aoright@gbarros-dev@Bil0000@Rishet11@StiensWout@AugusDogus@tarik02@gsimone@t3dotgg@chrisdeeming@inayayousfi@RakshithBhat03@dbalders@maria-rcks@UtkarshUsername@SunkenInTime@lgwacker
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

feat(fork): promote v0.0.36 Dulli rebuild - #41

Merged
YJJosh merged 396 commits into
mainfrom
promote/t3dulli-v0.0.36
Sep 2, 2026
Merged

feat(fork): promote v0.0.36 Dulli rebuild#41
YJJosh merged 396 commits into
mainfrom
promote/t3dulli-v0.0.36

Conversation

@YJJosh

Copy link
Copy Markdown
Owner

What Changed

This promotes the reviewed T3 Dulli rebuild based on upstream stable v0.0.36.

  • Preserves the Dulli desktop/mobile identity, installation paths, update repository, signing continuity, Android package, and @yjosh/t3 CLI.
  • Integrates Pi 0.84.4 as a first-class provider with profiles, usage, task controls, reasoning, tools, background terminals, durable child transcripts, subagents, and workflows.
  • Restores Workler-backed workspace creation while retaining upstream Start from origin behavior.
  • Restores the dedicated Fork features settings section and Dulli workspace/branch defaults.
  • Keeps fork release automation isolated in .github/workflows/fork-desktop-release.yml; upstream publishers, relay deployment, EAS, and store workflows remain disabled.
  • Rebuilds the web/desktop Agents inspector around one workflow roster item, a phase tree, per-agent model labels, and live chat-style agent transcripts.

Promotion note: this head records the previous main as a merge parent while preserving the rebuilt tree exactly. Merge with a merge commit, not squash or rebase. The previous fork main is also preserved at archive/pre-v0.0.36-dulli-rebuild.

Why

The previous fork main predated upstream stable v0.0.36 and carried provider, workspace, and release implementations that no longer matched the canonical runtime. A normal content merge would reintroduce obsolete architecture. This promotion keeps the reviewed rebuild as the exact resulting tree while preserving both histories.

UI Changes

Fork settings

Before: fork controls mixed into GeneralAfter: dedicated fork section and defaults
Fork settings beforeFork settings after

Workflow details

Before: one aggregate model labelAfter: model shown on each workflow agent
Workflow detail beforeWorkflow detail after

Verification

  • Focused server tests passed for Pi projection/replay, runtime ingestion, task controls, settings persistence, Workler behavior, release helpers, and publisher isolation.
  • Focused web/client/contracts tests passed for agent transcripts, workflows, settings, trait scoping, composer behavior, and runtime folding.
  • Web, server, client-runtime, and contracts typechecks passed.
  • Targeted lint, formatting, and diff checks passed.
  • Playwright verified workflow navigation, per-agent models, persisted child conversations, prompt deduplication, responsive layouts, and fork settings with no new console errors.
  • The release path was exercised by v0.0.36-pi.2, including desktop matrices, updater manifests, signatures, Android identity/signing, GitHub assets, and npm publication. Follow-up UI commits remain unreleased.
  • Live mobile verification remains pending because this host has no available device or emulator; the current inspector redesign does not change mobile behavior.

Checklist

  • This PR is focused on one concern: promoting the clean Dulli rebuild.
  • I explained what changed and why.
  • I included before/after screenshots for UI changes.
  • No new motion or animation requires a video.

Implemented with GPT-5.6 Sol using the pi coding-agent harness.

none23and others added 30 commits August 18, 2026 09:37
…in GitHubPullRequestCli (pingdotgg#7385)
Signed-off-by: aoright <102943475+aoright@users.noreply.github.com>
Co-authored-by: shivam <91240327+shivamhwp@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
…t full speed (pingdotgg#7460)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…nt (pingdotgg#6563)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…tgg#6286)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: GPT-5.6 <noreply@openai.com>
@chatgpt-codex-connector

chatgpt-codex-connectorBot commented Sep 1, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

ReviewStatusCommitReview trigger
📝 Code ReviewCompleted2026-09-02T19:35:00.711115Zf3cf060Manual request
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@github-actionsgithub-actionsBot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XXL 1,000+ effective changed lines (test files excluded in mixed PRs). 📱 Native Change Changes the native fingerprint; merging blocks production OTAs until a new store build ships. labels Sep 1, 2026
@github-actions

github-actionsBot commented Sep 1, 2026

Copy link
Copy Markdown

Thread transfer impact

✅ Thread transfer remains within every enforced ceiling.

ProviderMetricMain baselineThis PRImpactPR ceiling
CodexTotal thread wire11.5 KiB13.3 KiB+1.8 KiB (+15.2%)15.1 KiB
CodexThread snapshot wire5.6 KiB6.9 KiB+1.3 KiB (+23.3%)7.3 KiB
CodexLive turn WebSocket wire5.9 KiB6.4 KiB+459 B (+7.6%)7.8 KiB
CodexLive turn WebSocket decoded51.4 KiB55.5 KiB+4.1 KiB (+8.0%)66.4 KiB
CodexLive turn messages169−7 (−43.8%)21
ClaudeTotal thread wire11.5 KiB13.3 KiB+1.8 KiB (+15.4%)15.1 KiB
ClaudeThread snapshot wire5.6 KiB6.9 KiB+1.3 KiB (+23.0%)7.3 KiB
ClaudeLive turn WebSocket wire5.9 KiB6.4 KiB+491 B (+8.1%)7.8 KiB
ClaudeLive turn WebSocket decoded52.2 KiB56.4 KiB+4.1 KiB (+7.9%)66.4 KiB
ClaudeLive turn messages169−7 (−43.8%)21

Baseline: 33b5e46 · PR result: f3cf060 · Source CI: success

Scenario and decoded snapshot size

10 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.

  • Codex decoded thread snapshot: 109.4 KiB
  • Claude decoded thread snapshot: 110.1 KiB

Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed.

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

constdiscovery=yield*discoverPiModels({
agentDir: settings.agentDir||undefined,
profile: settings.profile||undefined,
}).pipe(

P1 Badge Apply the instance environment during Pi model discovery

When a Pi provider instance supplies credentials or custom-provider configuration through its Environment settings, PiDriver passes that merged environment to the version probe and spawned Pi process, but this SDK discovery runs in the server process without applying it. Consequently getAvailable() can report no models and an unauthenticated provider even though the actual Pi subprocess has valid credentials, leaving the model picker unusable for that supported configuration. Run discovery with the same per-instance environment.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadapps/server/src/usage/UsageService.ts Outdated
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed the Pi model-discovery finding in 9f1025404: provider status now passes the merged instance environment into SDK discovery, which runs in a bounded worker so extension/provider credentials never mutate the server process environment. Added a real extension-backed isolation test.

The same commit addresses the multi-instance Usage finding and the failing compatibility-boundary test. Focused verification: 52 tests passed, affected contracts/shared/server typechecks passed, targeted format/lint passed, and the server bundle build passed.

@codex review

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit:9f1025404e

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadapps/server/src/usage/UsageService.ts Outdated
Comment threadapps/server/src/usage/usageTranscriptReader.ts
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed both follow-up findings in 68b56ea32. Usage now resolves roots from the hydrated Claude, Codex, Grok, and Pi instance set with per-instance environments, while incomplete directory/file reads surface partial coverage and cannot prune cache entries from incomplete walks.

Focused verification: 60 tests passed across provider discovery, Usage resolution/reading/aggregation, and shared merging; affected typechecks and targeted format/lint passed; the server bundle build passed.

@codex review

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit:68b56ea322

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadpackages/shared/src/usageMerge.ts
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed the complete-vs-partial source ordering finding in f3cf060a1, with focused regression coverage. The previous 68b56ea32 CI run was fully green; the latest commit is a two-file shared merge/test change and its focused tests, typecheck, format, and lint pass.

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 🎉

Reviewed commit:f3cf060a1c

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@YJJosh
YJJosh merged commit e4d4d5b into mainSep 2, 2026
15 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📱 Native ChangeChanges the native fingerprint; merging blocks production OTAs until a new store build ships.size:XXL1,000+ effective changed lines (test files excluded in mixed PRs).vouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@YJJosh@none23@maslinedwin@aoright@gbarros-dev@Bil0000@Rishet11@StiensWout@AugusDogus@tarik02@gsimone@t3dotgg@chrisdeeming@inayayousfi@RakshithBhat03@dbalders@maria-rcks@UtkarshUsername@SunkenInTime@lgwacker
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

feat(fork): promote v0.0.36 Dulli rebuild - #41

Merged
YJJosh merged 396 commits into
mainfrom
promote/t3dulli-v0.0.36
Sep 2, 2026
Merged

feat(fork): promote v0.0.36 Dulli rebuild#41
YJJosh merged 396 commits into
mainfrom
promote/t3dulli-v0.0.36

Conversation

@YJJosh

Copy link
Copy Markdown
Owner

What Changed

This promotes the reviewed T3 Dulli rebuild based on upstream stable v0.0.36.

  • Preserves the Dulli desktop/mobile identity, installation paths, update repository, signing continuity, Android package, and @yjosh/t3 CLI.
  • Integrates Pi 0.84.4 as a first-class provider with profiles, usage, task controls, reasoning, tools, background terminals, durable child transcripts, subagents, and workflows.
  • Restores Workler-backed workspace creation while retaining upstream Start from origin behavior.
  • Restores the dedicated Fork features settings section and Dulli workspace/branch defaults.
  • Keeps fork release automation isolated in .github/workflows/fork-desktop-release.yml; upstream publishers, relay deployment, EAS, and store workflows remain disabled.
  • Rebuilds the web/desktop Agents inspector around one workflow roster item, a phase tree, per-agent model labels, and live chat-style agent transcripts.

Promotion note: this head records the previous main as a merge parent while preserving the rebuilt tree exactly. Merge with a merge commit, not squash or rebase. The previous fork main is also preserved at archive/pre-v0.0.36-dulli-rebuild.

Why

The previous fork main predated upstream stable v0.0.36 and carried provider, workspace, and release implementations that no longer matched the canonical runtime. A normal content merge would reintroduce obsolete architecture. This promotion keeps the reviewed rebuild as the exact resulting tree while preserving both histories.

UI Changes

Fork settings

Before: fork controls mixed into GeneralAfter: dedicated fork section and defaults
Fork settings beforeFork settings after

Workflow details

Before: one aggregate model labelAfter: model shown on each workflow agent
Workflow detail beforeWorkflow detail after

Verification

  • Focused server tests passed for Pi projection/replay, runtime ingestion, task controls, settings persistence, Workler behavior, release helpers, and publisher isolation.
  • Focused web/client/contracts tests passed for agent transcripts, workflows, settings, trait scoping, composer behavior, and runtime folding.
  • Web, server, client-runtime, and contracts typechecks passed.
  • Targeted lint, formatting, and diff checks passed.
  • Playwright verified workflow navigation, per-agent models, persisted child conversations, prompt deduplication, responsive layouts, and fork settings with no new console errors.
  • The release path was exercised by v0.0.36-pi.2, including desktop matrices, updater manifests, signatures, Android identity/signing, GitHub assets, and npm publication. Follow-up UI commits remain unreleased.
  • Live mobile verification remains pending because this host has no available device or emulator; the current inspector redesign does not change mobile behavior.

Checklist

  • This PR is focused on one concern: promoting the clean Dulli rebuild.
  • I explained what changed and why.
  • I included before/after screenshots for UI changes.
  • No new motion or animation requires a video.

Implemented with GPT-5.6 Sol using the pi coding-agent harness.

none23and others added 30 commits August 18, 2026 09:37
…in GitHubPullRequestCli (pingdotgg#7385)
Signed-off-by: aoright <102943475+aoright@users.noreply.github.com>
Co-authored-by: shivam <91240327+shivamhwp@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
…t full speed (pingdotgg#7460)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…nt (pingdotgg#6563)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…tgg#6286)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: GPT-5.6 <noreply@openai.com>
@chatgpt-codex-connector

chatgpt-codex-connectorBot commented Sep 1, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

ReviewStatusCommitReview trigger
📝 Code ReviewCompleted2026-09-02T19:35:00.711115Zf3cf060Manual request
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@github-actionsgithub-actionsBot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XXL 1,000+ effective changed lines (test files excluded in mixed PRs). 📱 Native Change Changes the native fingerprint; merging blocks production OTAs until a new store build ships. labels Sep 1, 2026
@github-actions

github-actionsBot commented Sep 1, 2026

Copy link
Copy Markdown

Thread transfer impact

✅ Thread transfer remains within every enforced ceiling.

ProviderMetricMain baselineThis PRImpactPR ceiling
CodexTotal thread wire11.5 KiB13.3 KiB+1.8 KiB (+15.2%)15.1 KiB
CodexThread snapshot wire5.6 KiB6.9 KiB+1.3 KiB (+23.3%)7.3 KiB
CodexLive turn WebSocket wire5.9 KiB6.4 KiB+459 B (+7.6%)7.8 KiB
CodexLive turn WebSocket decoded51.4 KiB55.5 KiB+4.1 KiB (+8.0%)66.4 KiB
CodexLive turn messages169−7 (−43.8%)21
ClaudeTotal thread wire11.5 KiB13.3 KiB+1.8 KiB (+15.4%)15.1 KiB
ClaudeThread snapshot wire5.6 KiB6.9 KiB+1.3 KiB (+23.0%)7.3 KiB
ClaudeLive turn WebSocket wire5.9 KiB6.4 KiB+491 B (+8.1%)7.8 KiB
ClaudeLive turn WebSocket decoded52.2 KiB56.4 KiB+4.1 KiB (+7.9%)66.4 KiB
ClaudeLive turn messages169−7 (−43.8%)21

Baseline: 33b5e46 · PR result: f3cf060 · Source CI: success

Scenario and decoded snapshot size

10 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.

  • Codex decoded thread snapshot: 109.4 KiB
  • Claude decoded thread snapshot: 110.1 KiB

Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed.

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

constdiscovery=yield*discoverPiModels({
agentDir: settings.agentDir||undefined,
profile: settings.profile||undefined,
}).pipe(

P1 Badge Apply the instance environment during Pi model discovery

When a Pi provider instance supplies credentials or custom-provider configuration through its Environment settings, PiDriver passes that merged environment to the version probe and spawned Pi process, but this SDK discovery runs in the server process without applying it. Consequently getAvailable() can report no models and an unauthenticated provider even though the actual Pi subprocess has valid credentials, leaving the model picker unusable for that supported configuration. Run discovery with the same per-instance environment.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadapps/server/src/usage/UsageService.ts Outdated
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed the Pi model-discovery finding in 9f1025404: provider status now passes the merged instance environment into SDK discovery, which runs in a bounded worker so extension/provider credentials never mutate the server process environment. Added a real extension-backed isolation test.

The same commit addresses the multi-instance Usage finding and the failing compatibility-boundary test. Focused verification: 52 tests passed, affected contracts/shared/server typechecks passed, targeted format/lint passed, and the server bundle build passed.

@codex review

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit:9f1025404e

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadapps/server/src/usage/UsageService.ts Outdated
Comment threadapps/server/src/usage/usageTranscriptReader.ts
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed both follow-up findings in 68b56ea32. Usage now resolves roots from the hydrated Claude, Codex, Grok, and Pi instance set with per-instance environments, while incomplete directory/file reads surface partial coverage and cannot prune cache entries from incomplete walks.

Focused verification: 60 tests passed across provider discovery, Usage resolution/reading/aggregation, and shared merging; affected typechecks and targeted format/lint passed; the server bundle build passed.

@codex review

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit:68b56ea322

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadpackages/shared/src/usageMerge.ts
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed the complete-vs-partial source ordering finding in f3cf060a1, with focused regression coverage. The previous 68b56ea32 CI run was fully green; the latest commit is a two-file shared merge/test change and its focused tests, typecheck, format, and lint pass.

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 🎉

Reviewed commit:f3cf060a1c

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@YJJosh
YJJosh merged commit e4d4d5b into mainSep 2, 2026
15 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📱 Native ChangeChanges the native fingerprint; merging blocks production OTAs until a new store build ships.size:XXL1,000+ effective changed lines (test files excluded in mixed PRs).vouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@YJJosh@none23@maslinedwin@aoright@gbarros-dev@Bil0000@Rishet11@StiensWout@AugusDogus@tarik02@gsimone@t3dotgg@chrisdeeming@inayayousfi@RakshithBhat03@dbalders@maria-rcks@UtkarshUsername@SunkenInTime@lgwacker
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

feat(fork): promote v0.0.36 Dulli rebuild - #41

Merged
YJJosh merged 396 commits into
mainfrom
promote/t3dulli-v0.0.36
Sep 2, 2026
Merged

feat(fork): promote v0.0.36 Dulli rebuild#41
YJJosh merged 396 commits into
mainfrom
promote/t3dulli-v0.0.36

Conversation

@YJJosh

Copy link
Copy Markdown
Owner

What Changed

This promotes the reviewed T3 Dulli rebuild based on upstream stable v0.0.36.

  • Preserves the Dulli desktop/mobile identity, installation paths, update repository, signing continuity, Android package, and @yjosh/t3 CLI.
  • Integrates Pi 0.84.4 as a first-class provider with profiles, usage, task controls, reasoning, tools, background terminals, durable child transcripts, subagents, and workflows.
  • Restores Workler-backed workspace creation while retaining upstream Start from origin behavior.
  • Restores the dedicated Fork features settings section and Dulli workspace/branch defaults.
  • Keeps fork release automation isolated in .github/workflows/fork-desktop-release.yml; upstream publishers, relay deployment, EAS, and store workflows remain disabled.
  • Rebuilds the web/desktop Agents inspector around one workflow roster item, a phase tree, per-agent model labels, and live chat-style agent transcripts.

Promotion note: this head records the previous main as a merge parent while preserving the rebuilt tree exactly. Merge with a merge commit, not squash or rebase. The previous fork main is also preserved at archive/pre-v0.0.36-dulli-rebuild.

Why

The previous fork main predated upstream stable v0.0.36 and carried provider, workspace, and release implementations that no longer matched the canonical runtime. A normal content merge would reintroduce obsolete architecture. This promotion keeps the reviewed rebuild as the exact resulting tree while preserving both histories.

UI Changes

Fork settings

Before: fork controls mixed into GeneralAfter: dedicated fork section and defaults
Fork settings beforeFork settings after

Workflow details

Before: one aggregate model labelAfter: model shown on each workflow agent
Workflow detail beforeWorkflow detail after

Verification

  • Focused server tests passed for Pi projection/replay, runtime ingestion, task controls, settings persistence, Workler behavior, release helpers, and publisher isolation.
  • Focused web/client/contracts tests passed for agent transcripts, workflows, settings, trait scoping, composer behavior, and runtime folding.
  • Web, server, client-runtime, and contracts typechecks passed.
  • Targeted lint, formatting, and diff checks passed.
  • Playwright verified workflow navigation, per-agent models, persisted child conversations, prompt deduplication, responsive layouts, and fork settings with no new console errors.
  • The release path was exercised by v0.0.36-pi.2, including desktop matrices, updater manifests, signatures, Android identity/signing, GitHub assets, and npm publication. Follow-up UI commits remain unreleased.
  • Live mobile verification remains pending because this host has no available device or emulator; the current inspector redesign does not change mobile behavior.

Checklist

  • This PR is focused on one concern: promoting the clean Dulli rebuild.
  • I explained what changed and why.
  • I included before/after screenshots for UI changes.
  • No new motion or animation requires a video.

Implemented with GPT-5.6 Sol using the pi coding-agent harness.

none23and others added 30 commits August 18, 2026 09:37
…in GitHubPullRequestCli (pingdotgg#7385)
Signed-off-by: aoright <102943475+aoright@users.noreply.github.com>
Co-authored-by: shivam <91240327+shivamhwp@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
…t full speed (pingdotgg#7460)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…nt (pingdotgg#6563)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…tgg#6286)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: GPT-5.6 <noreply@openai.com>
@chatgpt-codex-connector

chatgpt-codex-connectorBot commented Sep 1, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

ReviewStatusCommitReview trigger
📝 Code ReviewCompleted2026-09-02T19:35:00.711115Zf3cf060Manual request
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@github-actionsgithub-actionsBot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XXL 1,000+ effective changed lines (test files excluded in mixed PRs). 📱 Native Change Changes the native fingerprint; merging blocks production OTAs until a new store build ships. labels Sep 1, 2026
@github-actions

github-actionsBot commented Sep 1, 2026

Copy link
Copy Markdown

Thread transfer impact

✅ Thread transfer remains within every enforced ceiling.

ProviderMetricMain baselineThis PRImpactPR ceiling
CodexTotal thread wire11.5 KiB13.3 KiB+1.8 KiB (+15.2%)15.1 KiB
CodexThread snapshot wire5.6 KiB6.9 KiB+1.3 KiB (+23.3%)7.3 KiB
CodexLive turn WebSocket wire5.9 KiB6.4 KiB+459 B (+7.6%)7.8 KiB
CodexLive turn WebSocket decoded51.4 KiB55.5 KiB+4.1 KiB (+8.0%)66.4 KiB
CodexLive turn messages169−7 (−43.8%)21
ClaudeTotal thread wire11.5 KiB13.3 KiB+1.8 KiB (+15.4%)15.1 KiB
ClaudeThread snapshot wire5.6 KiB6.9 KiB+1.3 KiB (+23.0%)7.3 KiB
ClaudeLive turn WebSocket wire5.9 KiB6.4 KiB+491 B (+8.1%)7.8 KiB
ClaudeLive turn WebSocket decoded52.2 KiB56.4 KiB+4.1 KiB (+7.9%)66.4 KiB
ClaudeLive turn messages169−7 (−43.8%)21

Baseline: 33b5e46 · PR result: f3cf060 · Source CI: success

Scenario and decoded snapshot size

10 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.

  • Codex decoded thread snapshot: 109.4 KiB
  • Claude decoded thread snapshot: 110.1 KiB

Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed.

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

constdiscovery=yield*discoverPiModels({
agentDir: settings.agentDir||undefined,
profile: settings.profile||undefined,
}).pipe(

P1 Badge Apply the instance environment during Pi model discovery

When a Pi provider instance supplies credentials or custom-provider configuration through its Environment settings, PiDriver passes that merged environment to the version probe and spawned Pi process, but this SDK discovery runs in the server process without applying it. Consequently getAvailable() can report no models and an unauthenticated provider even though the actual Pi subprocess has valid credentials, leaving the model picker unusable for that supported configuration. Run discovery with the same per-instance environment.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadapps/server/src/usage/UsageService.ts Outdated
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed the Pi model-discovery finding in 9f1025404: provider status now passes the merged instance environment into SDK discovery, which runs in a bounded worker so extension/provider credentials never mutate the server process environment. Added a real extension-backed isolation test.

The same commit addresses the multi-instance Usage finding and the failing compatibility-boundary test. Focused verification: 52 tests passed, affected contracts/shared/server typechecks passed, targeted format/lint passed, and the server bundle build passed.

@codex review

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit:9f1025404e

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadapps/server/src/usage/UsageService.ts Outdated
Comment threadapps/server/src/usage/usageTranscriptReader.ts
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed both follow-up findings in 68b56ea32. Usage now resolves roots from the hydrated Claude, Codex, Grok, and Pi instance set with per-instance environments, while incomplete directory/file reads surface partial coverage and cannot prune cache entries from incomplete walks.

Focused verification: 60 tests passed across provider discovery, Usage resolution/reading/aggregation, and shared merging; affected typechecks and targeted format/lint passed; the server bundle build passed.

@codex review

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit:68b56ea322

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadpackages/shared/src/usageMerge.ts
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed the complete-vs-partial source ordering finding in f3cf060a1, with focused regression coverage. The previous 68b56ea32 CI run was fully green; the latest commit is a two-file shared merge/test change and its focused tests, typecheck, format, and lint pass.

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 🎉

Reviewed commit:f3cf060a1c

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@YJJosh
YJJosh merged commit e4d4d5b into mainSep 2, 2026
15 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📱 Native ChangeChanges the native fingerprint; merging blocks production OTAs until a new store build ships.size:XXL1,000+ effective changed lines (test files excluded in mixed PRs).vouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@YJJosh@none23@maslinedwin@aoright@gbarros-dev@Bil0000@Rishet11@StiensWout@AugusDogus@tarik02@gsimone@t3dotgg@chrisdeeming@inayayousfi@RakshithBhat03@dbalders@maria-rcks@UtkarshUsername@SunkenInTime@lgwacker
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

feat(fork): promote v0.0.36 Dulli rebuild - #41

Merged
YJJosh merged 396 commits into
mainfrom
promote/t3dulli-v0.0.36
Sep 2, 2026
Merged

feat(fork): promote v0.0.36 Dulli rebuild#41
YJJosh merged 396 commits into
mainfrom
promote/t3dulli-v0.0.36

Conversation

@YJJosh

Copy link
Copy Markdown
Owner

What Changed

This promotes the reviewed T3 Dulli rebuild based on upstream stable v0.0.36.

  • Preserves the Dulli desktop/mobile identity, installation paths, update repository, signing continuity, Android package, and @yjosh/t3 CLI.
  • Integrates Pi 0.84.4 as a first-class provider with profiles, usage, task controls, reasoning, tools, background terminals, durable child transcripts, subagents, and workflows.
  • Restores Workler-backed workspace creation while retaining upstream Start from origin behavior.
  • Restores the dedicated Fork features settings section and Dulli workspace/branch defaults.
  • Keeps fork release automation isolated in .github/workflows/fork-desktop-release.yml; upstream publishers, relay deployment, EAS, and store workflows remain disabled.
  • Rebuilds the web/desktop Agents inspector around one workflow roster item, a phase tree, per-agent model labels, and live chat-style agent transcripts.

Promotion note: this head records the previous main as a merge parent while preserving the rebuilt tree exactly. Merge with a merge commit, not squash or rebase. The previous fork main is also preserved at archive/pre-v0.0.36-dulli-rebuild.

Why

The previous fork main predated upstream stable v0.0.36 and carried provider, workspace, and release implementations that no longer matched the canonical runtime. A normal content merge would reintroduce obsolete architecture. This promotion keeps the reviewed rebuild as the exact resulting tree while preserving both histories.

UI Changes

Fork settings

Before: fork controls mixed into GeneralAfter: dedicated fork section and defaults
Fork settings beforeFork settings after

Workflow details

Before: one aggregate model labelAfter: model shown on each workflow agent
Workflow detail beforeWorkflow detail after

Verification

  • Focused server tests passed for Pi projection/replay, runtime ingestion, task controls, settings persistence, Workler behavior, release helpers, and publisher isolation.
  • Focused web/client/contracts tests passed for agent transcripts, workflows, settings, trait scoping, composer behavior, and runtime folding.
  • Web, server, client-runtime, and contracts typechecks passed.
  • Targeted lint, formatting, and diff checks passed.
  • Playwright verified workflow navigation, per-agent models, persisted child conversations, prompt deduplication, responsive layouts, and fork settings with no new console errors.
  • The release path was exercised by v0.0.36-pi.2, including desktop matrices, updater manifests, signatures, Android identity/signing, GitHub assets, and npm publication. Follow-up UI commits remain unreleased.
  • Live mobile verification remains pending because this host has no available device or emulator; the current inspector redesign does not change mobile behavior.

Checklist

  • This PR is focused on one concern: promoting the clean Dulli rebuild.
  • I explained what changed and why.
  • I included before/after screenshots for UI changes.
  • No new motion or animation requires a video.

Implemented with GPT-5.6 Sol using the pi coding-agent harness.

none23and others added 30 commits August 18, 2026 09:37
…in GitHubPullRequestCli (pingdotgg#7385)
Signed-off-by: aoright <102943475+aoright@users.noreply.github.com>
Co-authored-by: shivam <91240327+shivamhwp@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
…t full speed (pingdotgg#7460)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…nt (pingdotgg#6563)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…tgg#6286)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: GPT-5.6 <noreply@openai.com>
@chatgpt-codex-connector

chatgpt-codex-connectorBot commented Sep 1, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

ReviewStatusCommitReview trigger
📝 Code ReviewCompleted2026-09-02T19:35:00.711115Zf3cf060Manual request
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@github-actionsgithub-actionsBot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XXL 1,000+ effective changed lines (test files excluded in mixed PRs). 📱 Native Change Changes the native fingerprint; merging blocks production OTAs until a new store build ships. labels Sep 1, 2026
@github-actions

github-actionsBot commented Sep 1, 2026

Copy link
Copy Markdown

Thread transfer impact

✅ Thread transfer remains within every enforced ceiling.

ProviderMetricMain baselineThis PRImpactPR ceiling
CodexTotal thread wire11.5 KiB13.3 KiB+1.8 KiB (+15.2%)15.1 KiB
CodexThread snapshot wire5.6 KiB6.9 KiB+1.3 KiB (+23.3%)7.3 KiB
CodexLive turn WebSocket wire5.9 KiB6.4 KiB+459 B (+7.6%)7.8 KiB
CodexLive turn WebSocket decoded51.4 KiB55.5 KiB+4.1 KiB (+8.0%)66.4 KiB
CodexLive turn messages169−7 (−43.8%)21
ClaudeTotal thread wire11.5 KiB13.3 KiB+1.8 KiB (+15.4%)15.1 KiB
ClaudeThread snapshot wire5.6 KiB6.9 KiB+1.3 KiB (+23.0%)7.3 KiB
ClaudeLive turn WebSocket wire5.9 KiB6.4 KiB+491 B (+8.1%)7.8 KiB
ClaudeLive turn WebSocket decoded52.2 KiB56.4 KiB+4.1 KiB (+7.9%)66.4 KiB
ClaudeLive turn messages169−7 (−43.8%)21

Baseline: 33b5e46 · PR result: f3cf060 · Source CI: success

Scenario and decoded snapshot size

10 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.

  • Codex decoded thread snapshot: 109.4 KiB
  • Claude decoded thread snapshot: 110.1 KiB

Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed.

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

constdiscovery=yield*discoverPiModels({
agentDir: settings.agentDir||undefined,
profile: settings.profile||undefined,
}).pipe(

P1 Badge Apply the instance environment during Pi model discovery

When a Pi provider instance supplies credentials or custom-provider configuration through its Environment settings, PiDriver passes that merged environment to the version probe and spawned Pi process, but this SDK discovery runs in the server process without applying it. Consequently getAvailable() can report no models and an unauthenticated provider even though the actual Pi subprocess has valid credentials, leaving the model picker unusable for that supported configuration. Run discovery with the same per-instance environment.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadapps/server/src/usage/UsageService.ts Outdated
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed the Pi model-discovery finding in 9f1025404: provider status now passes the merged instance environment into SDK discovery, which runs in a bounded worker so extension/provider credentials never mutate the server process environment. Added a real extension-backed isolation test.

The same commit addresses the multi-instance Usage finding and the failing compatibility-boundary test. Focused verification: 52 tests passed, affected contracts/shared/server typechecks passed, targeted format/lint passed, and the server bundle build passed.

@codex review

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit:9f1025404e

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadapps/server/src/usage/UsageService.ts Outdated
Comment threadapps/server/src/usage/usageTranscriptReader.ts
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed both follow-up findings in 68b56ea32. Usage now resolves roots from the hydrated Claude, Codex, Grok, and Pi instance set with per-instance environments, while incomplete directory/file reads surface partial coverage and cannot prune cache entries from incomplete walks.

Focused verification: 60 tests passed across provider discovery, Usage resolution/reading/aggregation, and shared merging; affected typechecks and targeted format/lint passed; the server bundle build passed.

@codex review

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit:68b56ea322

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadpackages/shared/src/usageMerge.ts
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed the complete-vs-partial source ordering finding in f3cf060a1, with focused regression coverage. The previous 68b56ea32 CI run was fully green; the latest commit is a two-file shared merge/test change and its focused tests, typecheck, format, and lint pass.

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 🎉

Reviewed commit:f3cf060a1c

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@YJJosh
YJJosh merged commit e4d4d5b into mainSep 2, 2026
15 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📱 Native ChangeChanges the native fingerprint; merging blocks production OTAs until a new store build ships.size:XXL1,000+ effective changed lines (test files excluded in mixed PRs).vouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@YJJosh@none23@maslinedwin@aoright@gbarros-dev@Bil0000@Rishet11@StiensWout@AugusDogus@tarik02@gsimone@t3dotgg@chrisdeeming@inayayousfi@RakshithBhat03@dbalders@maria-rcks@UtkarshUsername@SunkenInTime@lgwacker
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

feat(fork): promote v0.0.36 Dulli rebuild - #41

Merged
YJJosh merged 396 commits into
mainfrom
promote/t3dulli-v0.0.36
Sep 2, 2026
Merged

feat(fork): promote v0.0.36 Dulli rebuild#41
YJJosh merged 396 commits into
mainfrom
promote/t3dulli-v0.0.36

Conversation

@YJJosh

Copy link
Copy Markdown
Owner

What Changed

This promotes the reviewed T3 Dulli rebuild based on upstream stable v0.0.36.

  • Preserves the Dulli desktop/mobile identity, installation paths, update repository, signing continuity, Android package, and @yjosh/t3 CLI.
  • Integrates Pi 0.84.4 as a first-class provider with profiles, usage, task controls, reasoning, tools, background terminals, durable child transcripts, subagents, and workflows.
  • Restores Workler-backed workspace creation while retaining upstream Start from origin behavior.
  • Restores the dedicated Fork features settings section and Dulli workspace/branch defaults.
  • Keeps fork release automation isolated in .github/workflows/fork-desktop-release.yml; upstream publishers, relay deployment, EAS, and store workflows remain disabled.
  • Rebuilds the web/desktop Agents inspector around one workflow roster item, a phase tree, per-agent model labels, and live chat-style agent transcripts.

Promotion note: this head records the previous main as a merge parent while preserving the rebuilt tree exactly. Merge with a merge commit, not squash or rebase. The previous fork main is also preserved at archive/pre-v0.0.36-dulli-rebuild.

Why

The previous fork main predated upstream stable v0.0.36 and carried provider, workspace, and release implementations that no longer matched the canonical runtime. A normal content merge would reintroduce obsolete architecture. This promotion keeps the reviewed rebuild as the exact resulting tree while preserving both histories.

UI Changes

Fork settings

Before: fork controls mixed into GeneralAfter: dedicated fork section and defaults
Fork settings beforeFork settings after

Workflow details

Before: one aggregate model labelAfter: model shown on each workflow agent
Workflow detail beforeWorkflow detail after

Verification

  • Focused server tests passed for Pi projection/replay, runtime ingestion, task controls, settings persistence, Workler behavior, release helpers, and publisher isolation.
  • Focused web/client/contracts tests passed for agent transcripts, workflows, settings, trait scoping, composer behavior, and runtime folding.
  • Web, server, client-runtime, and contracts typechecks passed.
  • Targeted lint, formatting, and diff checks passed.
  • Playwright verified workflow navigation, per-agent models, persisted child conversations, prompt deduplication, responsive layouts, and fork settings with no new console errors.
  • The release path was exercised by v0.0.36-pi.2, including desktop matrices, updater manifests, signatures, Android identity/signing, GitHub assets, and npm publication. Follow-up UI commits remain unreleased.
  • Live mobile verification remains pending because this host has no available device or emulator; the current inspector redesign does not change mobile behavior.

Checklist

  • This PR is focused on one concern: promoting the clean Dulli rebuild.
  • I explained what changed and why.
  • I included before/after screenshots for UI changes.
  • No new motion or animation requires a video.

Implemented with GPT-5.6 Sol using the pi coding-agent harness.

none23and others added 30 commits August 18, 2026 09:37
…in GitHubPullRequestCli (pingdotgg#7385)
Signed-off-by: aoright <102943475+aoright@users.noreply.github.com>
Co-authored-by: shivam <91240327+shivamhwp@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
Co-authored-by: t3-code[bot] <269035359+t3-code[bot]@users.noreply.github.com>
Co-authored-by: maria <254055478+maria-rcks@users.noreply.github.com>
…t full speed (pingdotgg#7460)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…nt (pingdotgg#6563)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
…tgg#6286)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: GPT-5.6 <noreply@openai.com>
@chatgpt-codex-connector

chatgpt-codex-connectorBot commented Sep 1, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

ReviewStatusCommitReview trigger
📝 Code ReviewCompleted2026-09-02T19:35:00.711115Zf3cf060Manual request
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@github-actionsgithub-actionsBot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XXL 1,000+ effective changed lines (test files excluded in mixed PRs). 📱 Native Change Changes the native fingerprint; merging blocks production OTAs until a new store build ships. labels Sep 1, 2026
@github-actions

github-actionsBot commented Sep 1, 2026

Copy link
Copy Markdown

Thread transfer impact

✅ Thread transfer remains within every enforced ceiling.

ProviderMetricMain baselineThis PRImpactPR ceiling
CodexTotal thread wire11.5 KiB13.3 KiB+1.8 KiB (+15.2%)15.1 KiB
CodexThread snapshot wire5.6 KiB6.9 KiB+1.3 KiB (+23.3%)7.3 KiB
CodexLive turn WebSocket wire5.9 KiB6.4 KiB+459 B (+7.6%)7.8 KiB
CodexLive turn WebSocket decoded51.4 KiB55.5 KiB+4.1 KiB (+8.0%)66.4 KiB
CodexLive turn messages169−7 (−43.8%)21
ClaudeTotal thread wire11.5 KiB13.3 KiB+1.8 KiB (+15.4%)15.1 KiB
ClaudeThread snapshot wire5.6 KiB6.9 KiB+1.3 KiB (+23.0%)7.3 KiB
ClaudeLive turn WebSocket wire5.9 KiB6.4 KiB+491 B (+8.1%)7.8 KiB
ClaudeLive turn WebSocket decoded52.2 KiB56.4 KiB+4.1 KiB (+7.9%)66.4 KiB
ClaudeLive turn messages169−7 (−43.8%)21

Baseline: 33b5e46 · PR result: f3cf060 · Source CI: success

Scenario and decoded snapshot size

10 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.

  • Codex decoded thread snapshot: 109.4 KiB
  • Claude decoded thread snapshot: 110.1 KiB

Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed.

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

constdiscovery=yield*discoverPiModels({
agentDir: settings.agentDir||undefined,
profile: settings.profile||undefined,
}).pipe(

P1 Badge Apply the instance environment during Pi model discovery

When a Pi provider instance supplies credentials or custom-provider configuration through its Environment settings, PiDriver passes that merged environment to the version probe and spawned Pi process, but this SDK discovery runs in the server process without applying it. Consequently getAvailable() can report no models and an unauthenticated provider even though the actual Pi subprocess has valid credentials, leaving the model picker unusable for that supported configuration. Run discovery with the same per-instance environment.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadapps/server/src/usage/UsageService.ts Outdated
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed the Pi model-discovery finding in 9f1025404: provider status now passes the merged instance environment into SDK discovery, which runs in a bounded worker so extension/provider credentials never mutate the server process environment. Added a real extension-backed isolation test.

The same commit addresses the multi-instance Usage finding and the failing compatibility-boundary test. Focused verification: 52 tests passed, affected contracts/shared/server typechecks passed, targeted format/lint passed, and the server bundle build passed.

@codex review

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit:9f1025404e

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadapps/server/src/usage/UsageService.ts Outdated
Comment threadapps/server/src/usage/usageTranscriptReader.ts
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed both follow-up findings in 68b56ea32. Usage now resolves roots from the hydrated Claude, Codex, Grok, and Pi instance set with per-instance environments, while incomplete directory/file reads surface partial coverage and cannot prune cache entries from incomplete walks.

Focused verification: 60 tests passed across provider discovery, Usage resolution/reading/aggregation, and shared merging; affected typechecks and targeted format/lint passed; the server bundle build passed.

@codex review

@chatgpt-codex-connectorchatgpt-codex-connectorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit:68b56ea322

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment threadpackages/shared/src/usageMerge.ts
@YJJosh

Copy link
Copy Markdown
OwnerAuthor

Addressed the complete-vs-partial source ordering finding in f3cf060a1, with focused regression coverage. The previous 68b56ea32 CI run was fully green; the latest commit is a two-file shared merge/test change and its focused tests, typecheck, format, and lint pass.

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 🎉

Reviewed commit:f3cf060a1c

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@YJJosh
YJJosh merged commit e4d4d5b into mainSep 2, 2026
15 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📱 Native ChangeChanges the native fingerprint; merging blocks production OTAs until a new store build ships.size:XXL1,000+ effective changed lines (test files excluded in mixed PRs).vouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@YJJosh@none23@maslinedwin@aoright@gbarros-dev@Bil0000@Rishet11@StiensWout@AugusDogus@tarik02@gsimone@t3dotgg@chrisdeeming@inayayousfi@RakshithBhat03@dbalders@maria-rcks@UtkarshUsername@SunkenInTime@lgwacker