Skip to content

fix(provider): resolve repo skills per workspace - #188

Merged
donjor merged 1 commit into
hyprwsfrom
t3code/fix-missing-repo-skills
Aug 28, 2026
Merged

donjor merged 1 commit into
hyprwsfrom
t3code/fix-missing-repo-skills

Conversation

@donjor-agent

@donjor-agent donjor-agent Bot commented Aug 28, 2026 •

Copy link
Copy Markdown

Repo-local skills and slash commands now resolve against the active project or worktree for Codex and Claude.

Scenario: Codex

before:

Codex reports no matching repo-local skill

now:

image image

Scenario: Claude

before:

Claude reports no matching repo-local skill

now:

image image

Scenario: Project switching

before: provider discovery reused startup-directory results.

now: each project or worktree supplies its own working directory and cache key; assignee verification is pending.

Mechanism

  • Add one authenticated workspace-skills RPC shared by web, contracts, and server.
  • Resolve project and worktree paths on the server before provider discovery.
  • Query Codex app-server skills per working directory.
  • Cache Claude discovery per working directory.

Refs #182. Remaining condition: the PR assignee verifies Codex, Claude, and cross-project isolation before issue closure.

Built by Codex on GPT-5.6-sol (high).

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes
@donjor

donjor commented Aug 28, 2026

Copy link
Copy Markdown

Known limitation

image

New skills aren't loaded; unsure what trigger is
works in cli
image

non-blocking

@donjor-agent

donjor-agent Bot commented Aug 28, 2026

Copy link
Copy Markdown
Author

🤖 codex/openai gpt-5.6-sol (high)

Diagnosis: provider discovery is live; the composer query is stale.

  • workspaceSkills has a 30-second stale window and revalidates only on mount, with no polling or invalidation signal.
  • A New thread draft in the same project keeps the same query key, so creating t3code-test-skill while that view stays mounted sends no second discovery request.
  • Standalone Claude succeeds because a fresh CLI process rescans the working directory.
  • On T3's next request, Claude scans disk directly and Codex starts a fresh app server and calls skills/list, so provider caching is not the blocker.
  • Current refresh: reload the client, or navigate away and back after the 30-second stale window.
  • Follow-up: invalidate from workspace file changes; Codex exposes skills/changed, while Claude needs equivalent filesystem invalidation.

Non-blocking for this PR.

@donjor
donjor marked this pull request as ready for review August 28, 2026 08:27
@donjor
donjor merged commit 4bfe730 into hyprws Aug 28, 2026
11 of 25 checks passed
@donjor
donjor deleted the t3code/fix-missing-repo-skills branch August 28, 2026 08:27
donjor added a commit that referenced this pull request Aug 29, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Aug 29, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Aug 30, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Aug 30, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Aug 30, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Sep 2, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Sep 2, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Sep 2, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Sep 2, 2026
… commit

## What Changed

Record `fix(provider): resolve repo skills per workspace (#188)` as a partial retirement in `docs/internals/fork-delta.md`. The superseded scope goes in Retired. The remainder stays in Kept.

## Why

The unblock walk onto `v0.0.39-nightly.20260902.1261` reduced that commit from 546 insertions across 17 files to 35 insertions across 2 server files.

```diff
- providers.workspaceSkills RPC, contract schemas, client atom family, chat-view preference, Codex pair
+ cwd-keyed Claude capabilities probe cache at capacity 16
+ slashCommands merged alongside skills in upstream's snapshotForCwd
```

Upstream `bc918e7` (`pingdotgg#9210`) supplies per-workspace provider snapshots: `snapshotForCwd` on every driver, `refreshWorkspaceSnapshot` in the registry, `workspaceSnapshots` on `ServerProvider`, and the client resolvers. That is what supersedes the dropped scope.

Upstream's `snapshotForCwd` merges `skills` alone. Its capabilities probe cache stays capacity 1, keyed on binary plus resolved HOME. The remainder covers exactly that gap.

A subject in both Retired and Kept is how the ledger spells a partial, so the commit stays in the stack.

**Checks**

- `vp run fork:delta --check`: ok, 220 fork commits tagged.
- `vp run fork:upstream-refs docs/internals/fork-delta.md`: unchanged at 8 pre-existing live references. The new Retired row code-spans its subject and adds none. The 8 predate this branch.

`#492` stays open. Its first `Done when` is a user-visible claim, that a project's `.claude/commands` appear in the Claude menu for a worktree thread. No client pass has been run, so this cannot close it.

Refs #492
Refs #481

Fork-Domain: fork-meta
Fork-Tier: qol
Fork-Upstreamable: no
Co-authored-by: donjor <38745786+donjor@users.noreply.github.com>
donjor added a commit that referenced this pull request Sep 4, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Sep 4, 2026
… commit

## What Changed

Record `fix(provider): resolve repo skills per workspace (#188)` as a partial retirement in `docs/internals/fork-delta.md`. The superseded scope goes in Retired. The remainder stays in Kept.

## Why

The unblock walk onto `v0.0.39-nightly.20260902.1261` reduced that commit from 546 insertions across 17 files to 35 insertions across 2 server files.

```diff
- providers.workspaceSkills RPC, contract schemas, client atom family, chat-view preference, Codex pair
+ cwd-keyed Claude capabilities probe cache at capacity 16
+ slashCommands merged alongside skills in upstream's snapshotForCwd
```

Upstream `bc918e7` (`pingdotgg#9210`) supplies per-workspace provider snapshots: `snapshotForCwd` on every driver, `refreshWorkspaceSnapshot` in the registry, `workspaceSnapshots` on `ServerProvider`, and the client resolvers. That is what supersedes the dropped scope.

Upstream's `snapshotForCwd` merges `skills` alone. Its capabilities probe cache stays capacity 1, keyed on binary plus resolved HOME. The remainder covers exactly that gap.

A subject in both Retired and Kept is how the ledger spells a partial, so the commit stays in the stack.

**Checks**

- `vp run fork:delta --check`: ok, 220 fork commits tagged.
- `vp run fork:upstream-refs docs/internals/fork-delta.md`: unchanged at 8 pre-existing live references. The new Retired row code-spans its subject and adds none. The 8 predate this branch.

`#492` stays open. Its first `Done when` is a user-visible claim, that a project's `.claude/commands` appear in the Claude menu for a worktree thread. No client pass has been run, so this cannot close it.

Refs #492
Refs #481

Fork-Domain: fork-meta
Fork-Tier: qol
Fork-Upstreamable: no
Co-authored-by: donjor <38745786+donjor@users.noreply.github.com>
donjor added a commit that referenced this pull request Sep 4, 2026
… commit

## What Changed

Record `fix(provider): resolve repo skills per workspace (#188)` as a partial retirement in `docs/internals/fork-delta.md`. The superseded scope goes in Retired. The remainder stays in Kept.

## Why

The unblock walk onto `v0.0.39-nightly.20260902.1261` reduced that commit from 546 insertions across 17 files to 35 insertions across 2 server files.

```diff
- providers.workspaceSkills RPC, contract schemas, client atom family, chat-view preference, Codex pair
+ cwd-keyed Claude capabilities probe cache at capacity 16
+ slashCommands merged alongside skills in upstream's snapshotForCwd
```

Upstream `bc918e7` (`pingdotgg#9210`) supplies per-workspace provider snapshots: `snapshotForCwd` on every driver, `refreshWorkspaceSnapshot` in the registry, `workspaceSnapshots` on `ServerProvider`, and the client resolvers. That is what supersedes the dropped scope.

Upstream's `snapshotForCwd` merges `skills` alone. Its capabilities probe cache stays capacity 1, keyed on binary plus resolved HOME. The remainder covers exactly that gap.

A subject in both Retired and Kept is how the ledger spells a partial, so the commit stays in the stack.

**Checks**

- `vp run fork:delta --check`: ok, 220 fork commits tagged.
- `vp run fork:upstream-refs docs/internals/fork-delta.md`: unchanged at 8 pre-existing live references. The new Retired row code-spans its subject and adds none. The 8 predate this branch.

`#492` stays open. Its first `Done when` is a user-visible claim, that a project's `.claude/commands` appear in the Claude menu for a worktree thread. No client pass has been run, so this cannot close it.

Refs #492
Refs #481

Fork-Domain: fork-meta
Fork-Tier: qol
Fork-Upstreamable: no
Co-authored-by: donjor <38745786+donjor@users.noreply.github.com>
donjor added a commit that referenced this pull request Sep 6, 2026
… commit

## What Changed

Record `fix(provider): resolve repo skills per workspace (#188)` as a partial retirement in `docs/internals/fork-delta.md`. The superseded scope goes in Retired. The remainder stays in Kept.

## Why

The unblock walk onto `v0.0.39-nightly.20260902.1261` reduced that commit from 546 insertions across 17 files to 35 insertions across 2 server files.

```diff
- providers.workspaceSkills RPC, contract schemas, client atom family, chat-view preference, Codex pair
+ cwd-keyed Claude capabilities probe cache at capacity 16
+ slashCommands merged alongside skills in upstream's snapshotForCwd
```

Upstream `bc918e7` (`pingdotgg#9210`) supplies per-workspace provider snapshots: `snapshotForCwd` on every driver, `refreshWorkspaceSnapshot` in the registry, `workspaceSnapshots` on `ServerProvider`, and the client resolvers. That is what supersedes the dropped scope.

Upstream's `snapshotForCwd` merges `skills` alone. Its capabilities probe cache stays capacity 1, keyed on binary plus resolved HOME. The remainder covers exactly that gap.

A subject in both Retired and Kept is how the ledger spells a partial, so the commit stays in the stack.

**Checks**

- `vp run fork:delta --check`: ok, 220 fork commits tagged.
- `vp run fork:upstream-refs docs/internals/fork-delta.md`: unchanged at 8 pre-existing live references. The new Retired row code-spans its subject and adds none. The 8 predate this branch.

`#492` stays open. Its first `Done when` is a user-visible claim, that a project's `.claude/commands` appear in the Claude menu for a worktree thread. No client pass has been run, so this cannot close it.

Refs #492
Refs #481

Fork-Domain: fork-meta
Fork-Tier: qol
Fork-Upstreamable: no
Co-authored-by: donjor <38745786+donjor@users.noreply.github.com>
donjor added a commit that referenced this pull request Sep 6, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Sep 20, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Sep 20, 2026
`vp run fork:delta --check` stayed green while the ledger named commits the stack no longer carries. Three silent paths, all closed here.

Stacked on `907/thread-ordering-ledger`. Review and land that first.

## 1. Kept but absent

`scripts/fork-delta.ts` reported one direction only:

```ts
...retired.map((commit) => ({ short: commit.short, subject: commit.subject, problem: "retired but present" })),
```

`retired but present` failed. `kept but absent` did not exist, so a Kept row could name a missing commit forever. The mirror now fails the check.

## 2. A skip with no Retired row

`unblock-rehearse` read a `retire` verdict out of the walk record and ran `git rebase --skip`. The ledger never learned. The skip is now refused unless `docs/internals/fork-delta.md` carries the Retired row. A human writes that row; the tool never infers it from the record.

## 3. A backticked subject matched nothing

Lookup was exact string match on the raw table cell, so a subject the ledger writes as a code span silently resolved to `none`:

```diff
- fix(provider): resolve repo skills per workspace (#188)   decision: none
+ fix(provider): resolve repo skills per workspace (#188)   decision: partial
```

Rows are now keyed by bare text, stripping one pair of surrounding backticks on both sides of the lookup. Inner or unpaired backticks stay part of the subject.

## What this does not do

The issue proposed a fourth guard on the budget `commits` cell. It was implemented, and it refused a commit that did nothing wrong:

```
1203fbe chore(fork): size the backend-attach ceiling to the landed squash
  lowers backend-attach commits 4 -> 1
```

`#752` landed as a squash: eight fork commits became one, so the cell fell while bytes and lines rose. Nothing was retired. Squash is the fork's normal landing path, so every landed branch lowers a `commits` cell. The guard is withdrawn.

## The one finding the mirror caught

```
ledger docs(fork): fork sync runbook for the auto-rebase model: kept but absent
```

The runbook is alive; its commit is not. `69d684ecf0` folded it into the documentation consolidation and took a new subject, so the Kept row pointed at nothing. The row now names the commit that carries the content.

## Verification

```diff
+ vp run fork:delta --check          ok: 222 fork commits tagged
+ vp test run scripts/fork-delta.test.ts scripts/fork-sync.test.ts   217 passed
+ vp exec tsc --noEmit -p scripts    clean on touched files
```

`fork-meta` ceilings raised to the measured stack, carried on the commit that edits the budget.

Refs #916.

Held for the fork-sync walk. Do not merge while the walk is open.

Model: claude-opus-5 (high), harness claude-code.

https://claude.ai/code/session_012duArYgsDfEoAPcp9ZUXdr

## Fork trailers

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no
Fork-Budget: raise fork-meta commits 63 -> 64, fork-meta added 76740 -> 76883 and fork-meta deleted 6192 -> 6200; absorbs the thread-ordering ledger rewrite and the fork delta guard work on this branch
Co-authored-by: donjor <38745786+donjor@users.noreply.github.com>
donjor added a commit that referenced this pull request Sep 21, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Sep 21, 2026
`vp run fork:delta --check` stayed green while the ledger named commits the stack no longer carries. Three silent paths, all closed here.

Stacked on `907/thread-ordering-ledger`. Review and land that first.

## 1. Kept but absent

`scripts/fork-delta.ts` reported one direction only:

```ts
...retired.map((commit) => ({ short: commit.short, subject: commit.subject, problem: "retired but present" })),
```

`retired but present` failed. `kept but absent` did not exist, so a Kept row could name a missing commit forever. The mirror now fails the check.

## 2. A skip with no Retired row

`unblock-rehearse` read a `retire` verdict out of the walk record and ran `git rebase --skip`. The ledger never learned. The skip is now refused unless `docs/internals/fork-delta.md` carries the Retired row. A human writes that row; the tool never infers it from the record.

## 3. A backticked subject matched nothing

Lookup was exact string match on the raw table cell, so a subject the ledger writes as a code span silently resolved to `none`:

```diff
- fix(provider): resolve repo skills per workspace (#188)   decision: none
+ fix(provider): resolve repo skills per workspace (#188)   decision: partial
```

Rows are now keyed by bare text, stripping one pair of surrounding backticks on both sides of the lookup. Inner or unpaired backticks stay part of the subject.

## What this does not do

The issue proposed a fourth guard on the budget `commits` cell. It was implemented, and it refused a commit that did nothing wrong:

```
1203fbe chore(fork): size the backend-attach ceiling to the landed squash
  lowers backend-attach commits 4 -> 1
```

`#752` landed as a squash: eight fork commits became one, so the cell fell while bytes and lines rose. Nothing was retired. Squash is the fork's normal landing path, so every landed branch lowers a `commits` cell. The guard is withdrawn.

## The one finding the mirror caught

```
ledger docs(fork): fork sync runbook for the auto-rebase model: kept but absent
```

The runbook is alive; its commit is not. `69d684ecf0` folded it into the documentation consolidation and took a new subject, so the Kept row pointed at nothing. The row now names the commit that carries the content.

## Verification

```diff
+ vp run fork:delta --check          ok: 222 fork commits tagged
+ vp test run scripts/fork-delta.test.ts scripts/fork-sync.test.ts   217 passed
+ vp exec tsc --noEmit -p scripts    clean on touched files
```

`fork-meta` ceilings raised to the measured stack, carried on the commit that edits the budget.

Refs #916.

Held for the fork-sync walk. Do not merge while the walk is open.

Model: claude-opus-5 (high), harness claude-code.

https://claude.ai/code/session_012duArYgsDfEoAPcp9ZUXdr

## Fork trailers

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no
Fork-Budget: raise fork-meta commits 63 -> 64, fork-meta added 76740 -> 76883 and fork-meta deleted 6192 -> 6200; absorbs the thread-ordering ledger rewrite and the fork delta guard work on this branch
Co-authored-by: donjor <38745786+donjor@users.noreply.github.com>
donjor added a commit that referenced this pull request Sep 23, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Sep 23, 2026
`vp run fork:delta --check` stayed green while the ledger named commits the stack no longer carries. Three silent paths, all closed here.

Stacked on `907/thread-ordering-ledger`. Review and land that first.

## 1. Kept but absent

`scripts/fork-delta.ts` reported one direction only:

```ts
...retired.map((commit) => ({ short: commit.short, subject: commit.subject, problem: "retired but present" })),
```

`retired but present` failed. `kept but absent` did not exist, so a Kept row could name a missing commit forever. The mirror now fails the check.

## 2. A skip with no Retired row

`unblock-rehearse` read a `retire` verdict out of the walk record and ran `git rebase --skip`. The ledger never learned. The skip is now refused unless `docs/internals/fork-delta.md` carries the Retired row. A human writes that row; the tool never infers it from the record.

## 3. A backticked subject matched nothing

Lookup was exact string match on the raw table cell, so a subject the ledger writes as a code span silently resolved to `none`:

```diff
- fix(provider): resolve repo skills per workspace (#188)   decision: none
+ fix(provider): resolve repo skills per workspace (#188)   decision: partial
```

Rows are now keyed by bare text, stripping one pair of surrounding backticks on both sides of the lookup. Inner or unpaired backticks stay part of the subject.

## What this does not do

The issue proposed a fourth guard on the budget `commits` cell. It was implemented, and it refused a commit that did nothing wrong:

```
1203fbe chore(fork): size the backend-attach ceiling to the landed squash
  lowers backend-attach commits 4 -> 1
```

`#752` landed as a squash: eight fork commits became one, so the cell fell while bytes and lines rose. Nothing was retired. Squash is the fork's normal landing path, so every landed branch lowers a `commits` cell. The guard is withdrawn.

## The one finding the mirror caught

```
ledger docs(fork): fork sync runbook for the auto-rebase model: kept but absent
```

The runbook is alive; its commit is not. `69d684ecf0` folded it into the documentation consolidation and took a new subject, so the Kept row pointed at nothing. The row now names the commit that carries the content.

## Verification

```diff
+ vp run fork:delta --check          ok: 222 fork commits tagged
+ vp test run scripts/fork-delta.test.ts scripts/fork-sync.test.ts   217 passed
+ vp exec tsc --noEmit -p scripts    clean on touched files
```

`fork-meta` ceilings raised to the measured stack, carried on the commit that edits the budget.

Refs #916.

Held for the fork-sync walk. Do not merge while the walk is open.

Model: claude-opus-5 (high), harness claude-code.

https://claude.ai/code/session_012duArYgsDfEoAPcp9ZUXdr

## Fork trailers

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no
Fork-Budget: raise fork-meta commits 63 -> 64, fork-meta added 76740 -> 76883 and fork-meta deleted 6192 -> 6200; absorbs the thread-ordering ledger rewrite and the fork delta guard work on this branch
Co-authored-by: donjor <38745786+donjor@users.noreply.github.com>
donjor added a commit that referenced this pull request Sep 23, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Sep 23, 2026
`vp run fork:delta --check` stayed green while the ledger named commits the stack no longer carries. Three silent paths, all closed here.

Stacked on `907/thread-ordering-ledger`. Review and land that first.

## 1. Kept but absent

`scripts/fork-delta.ts` reported one direction only:

```ts
...retired.map((commit) => ({ short: commit.short, subject: commit.subject, problem: "retired but present" })),
```

`retired but present` failed. `kept but absent` did not exist, so a Kept row could name a missing commit forever. The mirror now fails the check.

## 2. A skip with no Retired row

`unblock-rehearse` read a `retire` verdict out of the walk record and ran `git rebase --skip`. The ledger never learned. The skip is now refused unless `docs/internals/fork-delta.md` carries the Retired row. A human writes that row; the tool never infers it from the record.

## 3. A backticked subject matched nothing

Lookup was exact string match on the raw table cell, so a subject the ledger writes as a code span silently resolved to `none`:

```diff
- fix(provider): resolve repo skills per workspace (#188)   decision: none
+ fix(provider): resolve repo skills per workspace (#188)   decision: partial
```

Rows are now keyed by bare text, stripping one pair of surrounding backticks on both sides of the lookup. Inner or unpaired backticks stay part of the subject.

## What this does not do

The issue proposed a fourth guard on the budget `commits` cell. It was implemented, and it refused a commit that did nothing wrong:

```
1203fbe chore(fork): size the backend-attach ceiling to the landed squash
  lowers backend-attach commits 4 -> 1
```

`#752` landed as a squash: eight fork commits became one, so the cell fell while bytes and lines rose. Nothing was retired. Squash is the fork's normal landing path, so every landed branch lowers a `commits` cell. The guard is withdrawn.

## The one finding the mirror caught

```
ledger docs(fork): fork sync runbook for the auto-rebase model: kept but absent
```

The runbook is alive; its commit is not. `69d684ecf0` folded it into the documentation consolidation and took a new subject, so the Kept row pointed at nothing. The row now names the commit that carries the content.

## Verification

```diff
+ vp run fork:delta --check          ok: 222 fork commits tagged
+ vp test run scripts/fork-delta.test.ts scripts/fork-sync.test.ts   217 passed
+ vp exec tsc --noEmit -p scripts    clean on touched files
```

`fork-meta` ceilings raised to the measured stack, carried on the commit that edits the budget.

Refs #916.

Held for the fork-sync walk. Do not merge while the walk is open.

Model: claude-opus-5 (high), harness claude-code.

https://claude.ai/code/session_012duArYgsDfEoAPcp9ZUXdr

## Fork trailers

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no
Fork-Budget: raise fork-meta commits 63 -> 64, fork-meta added 76740 -> 76883 and fork-meta deleted 6192 -> 6200; absorbs the thread-ordering ledger rewrite and the fork delta guard work on this branch
Co-authored-by: donjor <38745786+donjor@users.noreply.github.com>
donjor added a commit that referenced this pull request Sep 23, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Sep 24, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Sep 25, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Sep 27, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Sep 28, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Sep 28, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Sep 29, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Sep 29, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Sep 29, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Sep 29, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Sep 29, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Sep 30, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Sep 30, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Oct 1, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor added a commit that referenced this pull request Oct 1, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
donjor pushed a commit that referenced this pull request Oct 2, 2026
Refs #182

Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes

Co-authored-by: donjor <donjordev@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant