Skip to content

fix(cli): detect IPv6 connectivity errors and suggest the IPv4 pooler#5492

Closed
avallete wants to merge 11 commits into
mainfrom
claude/brave-maxwell-YoIfd
Closed

fix(cli): detect IPv6 connectivity errors and suggest the IPv4 pooler#5492
avallete wants to merge 11 commits into
mainfrom
claude/brave-maxwell-YoIfd

Conversation

@avallete
Copy link
Copy Markdown
Member

@avallete avallete commented Jun 5, 2026

Closes CLI-1593

What

Improves the error message users see when a database connection fails because the host resolves to an IPv6-only address and their network has no IPv6 route.

SetConnectSuggestion now recognizes the classic IPv6-unreachable signatures — connect: network is unreachable and connect: no route to host against a bracketed IPv6 literal — and surfaces an actionable suggestion:

Your network does not support IPv6, which is required for direct connections to the database.
Run supabase link to connect through the IPv4 connection pooler instead.

Why

Supabase direct database connections (db.<ref>.supabase.co:5432) are IPv6-only unless the IPv4 add-on is enabled. Users on IPv4-only networks previously hit one of two unhelpful outcomes:

  • network is unreachable → no suggestion at all
  • no route to host → misreported as "Make sure your project exists on profile"

Neither hinted at the real cause (IPv6) or the workaround (the IPv4 transaction pooler, set up by supabase link).

Notes

  • The new branch is ordered before the existing no route to host / Tenant or user not found branch, and requires an IPv6 literal in the message, so genuine "project not found" / Supavisor tenant errors keep their existing suggestion.
  • These db commands are still proxied to the bundled Go binary, so the fix lives in apps/cli-go.

Warning

This currently covers the in-process pgx connection path (db push / db pull / migration repair). The specific db dump symptom in CLI-1593 (error running container: exit 1) originates from pg_dump running inside a Docker container, whose stderr is streamed to the terminal but never classified — see PR discussion for the follow-up needed to cover that path.

https://claude.ai/code/session_01UaPk7dGPmiCqoKJHyV7SLz

dependabot Bot and others added 11 commits June 5, 2026 00:09
…n /apps/cli-go in the go-minor group across 1 directory (#5482)

Bumps the go-minor group with 1 update in the /apps/cli-go directory:
[github.com/posthog/posthog-go](https://github.com/posthog/posthog-go).

Updates `github.com/posthog/posthog-go` from 1.13.0 to 1.13.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/posthog/posthog-go/releases">github.com/posthog/posthog-go's
releases</a>.</em></p>
<blockquote>
<h2>1.13.1</h2>
<h2>Unreleased</h2>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/PostHog/posthog-go/blob/main/CHANGELOG.md">github.com/posthog/posthog-go's
changelog</a>.</em></p>
<blockquote>
<h2>1.13.1</h2>
<h3>Patch Changes</h3>
<ul>
<li>541b82f: Include group context in the
<code>$feature_flag_called</code> LRU dedupe key so group-scoped flags
fire a separate event for each group a user is evaluated under, instead
of being dedup-ed against the first group context the same
<code>(distinct_id, flag, device_id)</code> was seen under.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/PostHog/posthog-go/commit/f68c74f31334c42921039fa6f19c64620a916548"><code>f68c74f</code></a>
chore: release v1.13.1 [version bump] [skip ci]</li>
<li><a
href="https://github.com/PostHog/posthog-go/commit/541b82f623cb60016d4a628d180e056707def137"><code>541b82f</code></a>
fix: include group context in $feature_flag_called dedupe key (<a
href="https://redirect.github.com/posthog/posthog-go/issues/206">#206</a>)</li>
<li><a
href="https://github.com/PostHog/posthog-go/commit/4650ca24c595a4e0a3de29c36047e19c8d0e0677"><code>4650ca2</code></a>
chore: use shared semantic PR title workflow (<a
href="https://redirect.github.com/posthog/posthog-go/issues/210">#210</a>)</li>
<li><a
href="https://github.com/PostHog/posthog-go/commit/ba838c81f0390d57d050de33df952c69537b1fb4"><code>ba838c8</code></a>
chore: validate PR titles with conventional commits (<a
href="https://redirect.github.com/posthog/posthog-go/issues/209">#209</a>)</li>
<li><a
href="https://github.com/PostHog/posthog-go/commit/8ceb0de90586cfcb3ebb1a92bd8f5a70e40a01f0"><code>8ceb0de</code></a>
docs: document public APIs and hide testing-only flag definitions method
(<a
href="https://redirect.github.com/posthog/posthog-go/issues/208">#208</a>)</li>
<li><a
href="https://github.com/PostHog/posthog-go/commit/1ce09487804d3c37b1d40152a4508d4bff08c21b"><code>1ce0948</code></a>
chore: update PostHog/.github pins (<a
href="https://redirect.github.com/posthog/posthog-go/issues/207">#207</a>)</li>
<li>See full diff in <a
href="https://github.com/posthog/posthog-go/compare/v1.13.0...v1.13.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/posthog/posthog-go&package-manager=go_modules&previous-version=1.13.0&new-version=1.13.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
## TL;DR

ports `supabase services` to native ts

## What’s introduced

 adds native TS implementations for services 
moves the local service version rendering and linked version lookup into
shared command logic,
adds integration coverage for text/json output and linked version
fallback behavior


## Ref

- closes CLI-1307

---------

Co-authored-by: Colum Ferry <cferry09@gmail.com>
## What changed

Replaces the Phase-0 Go proxy for `supabase bootstrap` with a native
TypeScript implementation in the legacy shell. `bootstrap` is a
meta-orchestrator that chains: workdir resolve/prompt → template
list/download → blank `init` → ensure-login → `projects create` →
`projects api-keys` (backoff) → `link` services → health poll (backoff)
→ write `.env` → `db push` → start suggestion.

Per the "hoist before you duplicate" policy, the shared orchestration is
extracted from the already-ported `login` / `projects create` /
`projects api-keys` / `link` handlers into `legacy/shared/`, and those
handlers are refactored to delegate (no behavior change — their existing
tests still pass):

- `legacy-ensure-login` (browser login flow + post-login telemetry)
- `legacy-project-create-core`
- `legacy-get-api-keys`
- `legacy-link-services-core`
- `legacy-tenant-keys` (`legacyExtractServiceKeys`)
- the login api/crypto layers move to `legacy/shared/` so `bootstrap`
can compose them without a cross-command import

## Why

Phase 1+ native port of `bootstrap` (the last Quick-Start command still
proxied), unblocking native machine output (`--output-format
json|stream-json`) and removing the Go dependency for everything except
the migration push.

## Reviewer-relevant context

- **`db push` is delegated to the bundled Go binary (interim).** It is
the only non-native step, pending a separate native `db push` port.
`LegacyGoProxy.exec` exits the process on a non-zero exit rather than
returning a failure, so Go's push backoff cannot be reproduced from the
proxy (single attempt). Documented in `SIDE_EFFECTS.md`.
- **Go-parity decisions worth a look:**
- No `cli_project_linked` telemetry — Go's `bootstrap` calls
`link.LinkServices` (services-only), **not** `link.Run`, so it
deliberately skips the project-linked event, status check, and
`linked-project.json` temp write.
- API keys are fetched **without** `reveal` (Go's `RunGetApiKeys` uses
empty params).
- Workdir / DB password env vars are read **prefixed**
(`SUPABASE_WORKDIR`, `SUPABASE_DB_PASSWORD`) to match Go's
`viper.SetEnvPrefix("SUPABASE")`.
- `Using workdir …` prints only when the resolved workdir differs from
the cwd (matches Go's `ChangeWorkDir` guard).
- **Hardening:** template download rejects entries that would escape the
target directory; GitHub and health error bodies are sanitized before
surfacing.
- `docs/go-cli-porting-status.md` flips `bootstrap` `wrapped` → `ported`
with the interim-db-push note.

## Follow-ups (out of scope)

- Native `db push` port will remove the proxy delegation (eliminating
the single-attempt and transient `--password`-in-process-table
limitations).
- `bootstrap.e2e.test.ts` deferred — integration coverage is
comprehensive; e2e needs replayed API fixtures plus handling of the real
Go `db push` subprocess.
This updates the OpenAPI download flow to apply explicit JSON Patch
overrides before writing the generated spec.

The override corrects the SSO list response schema so items[].saml.id is
optional while entity_id remains required, matching the live API
response shape.

The API artifacts are regenerated from the corrected OpenAPI document,
and the CLI SSO list integration coverage now includes a provider whose
SAML descriptor omits id.
Dependabot PRs should be approved and placed into auto-merge regardless
of semver update type.

This removes the semver gate from the auto-merge workflow so branch
protection and required CI checks are the only merge gate for dependency
updates.
## What changed

- Make the warmup failure-path unit tests inject the Docker availability
probe instead of touching the real Docker daemon.
- Add a short timeout to the real `docker info` probe used by stack e2e
warmup.

## Why

The failing CI job timed out in the warmup failure-path test. Those
tests were meant to exercise mocked prefetch failures, but they still
ran the real Docker daemon probe first. If that probe stalls on a CI
runner, the test never reaches the mocked failure path. Keeping the
probe injected in those unit tests makes them hermetic, while the
timeout prevents e2e warmup from hanging indefinitely on an unhealthy
Docker socket.
Removes the unit test that compared the TypeScript services image matrix
with the Go Dockerfile manifest.

That assertion caused Docker-only Dependabot PRs to fail CI whenever
Dependabot updated the Dockerfile but not the TypeScript mirror. Keeping
the check out of the unit suite lets those automated dependency bumps
merge when CI is otherwise green.

Also broadens the CLI e2e parity normalizer so two-component Docker tags
like `v14.13` are treated as volatile version output, matching the
existing behavior for three-component tags. This prevents Go/TypeScript
parity from failing solely because Dependabot bumped a Docker image tag.

Finally narrows `LOCAL_SERVICE_IMAGES` to module scope now that tests no
longer import it.
…emplates with 3 updates (#5484)

Bumps the docker-minor group in /apps/cli-go/pkg/config/templates with 3
updates: postgrest/postgrest, supabase/realtime and supabase/logflare.

Updates `postgrest/postgrest` from v14.12 to v14.13

Updates `supabase/realtime` from v2.103.2 to v2.103.4

Updates `supabase/logflare` from 1.43.3 to 1.43.4


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Julien Goux <hi@jgoux.dev>
…ates (#5483)

Bumps the npm-major group with 3 updates in the / directory:
[@anthropic-ai/claude-agent-sdk](https://github.com/anthropics/claude-agent-sdk-typescript),
[@anthropic-ai/sdk](https://github.com/anthropics/anthropic-sdk-typescript)
and
[posthog-node](https://github.com/PostHog/posthog-js/tree/HEAD/packages/node).

Updates `@anthropic-ai/claude-agent-sdk` from 0.3.146 to 0.3.156
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/claude-agent-sdk-typescript/releases">@​anthropic-ai/claude-agent-sdk's
releases</a>.</em></p>
<blockquote>
<h2>v0.3.156</h2>
<h2>What's changed</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.156</li>
</ul>
<h2>Update</h2>
<pre lang="sh"><code>npm install @anthropic-ai/claude-agent-sdk@0.3.156
# or
yarn add @anthropic-ai/claude-agent-sdk@0.3.156
# or
pnpm add @anthropic-ai/claude-agent-sdk@0.3.156
# or
bun add @anthropic-ai/claude-agent-sdk@0.3.156
</code></pre>
<h2>v0.3.154</h2>
<h2>What's changed</h2>
<ul>
<li>Fixed stdio MCP servers being incorrectly restarted on every
reconcile pass due to config-equality false positives</li>
</ul>
<h2>Update</h2>
<pre lang="sh"><code>npm install @anthropic-ai/claude-agent-sdk@0.3.154
# or
yarn add @anthropic-ai/claude-agent-sdk@0.3.154
# or
pnpm add @anthropic-ai/claude-agent-sdk@0.3.154
# or
bun add @anthropic-ai/claude-agent-sdk@0.3.154
</code></pre>
<h2>v0.3.153</h2>
<h2>What's changed</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.153</li>
</ul>
<h2>Update</h2>
<pre lang="sh"><code>npm install @anthropic-ai/claude-agent-sdk@0.3.153
# or
yarn add @anthropic-ai/claude-agent-sdk@0.3.153
# or
pnpm add @anthropic-ai/claude-agent-sdk@0.3.153
# or
bun add @anthropic-ai/claude-agent-sdk@0.3.153
</code></pre>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/claude-agent-sdk-typescript/blob/main/CHANGELOG.md">@​anthropic-ai/claude-agent-sdk's
changelog</a>.</em></p>
<blockquote>
<h2>0.3.156</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.156</li>
</ul>
<h2>0.3.155</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.155</li>
</ul>
<h2>0.3.154</h2>
<ul>
<li>Fixed stdio MCP servers being incorrectly restarted on every
reconcile pass due to config-equality false positives</li>
</ul>
<h2>0.3.153</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.153</li>
</ul>
<h2>0.3.152</h2>
<ul>
<li><code>SessionStart</code> hooks can now return <code>reloadSkills:
true</code> to trigger a skill re-scan, and set the session title via
<code>hookSpecificOutput.sessionTitle</code></li>
<li>Added a <code>MessageDisplay</code> hook event that lets hooks
transform or hide assistant message text as it is displayed</li>
</ul>
<h2>0.3.151</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.151</li>
</ul>
<h2>0.3.150</h2>
<ul>
<li>The <code>api_retry</code> system message now reports <code>error:
'overloaded'</code> for 529 responses, instead of
<code>'rate_limit'</code> (which is now reserved for 429). Consumers
that handled 529 via <code>error === 'rate_limit'</code> should also
match <code>'overloaded'</code>, or switch to <code>error_status ===
529</code>.</li>
<li>Updated to parity with Claude Code v2.1.150</li>
</ul>
<h2>0.3.149</h2>
<ul>
<li>Fixed <code>options.env</code> dropping
<code>CLAUDE_AGENT_SDK_VERSION</code> (used for <code>User-Agent</code>
and telemetry) when a custom environment is supplied, and corrected the
<code>Options.env</code> docs to state that the value replaces the
subprocess environment rather than merging with
<code>process.env</code></li>
</ul>
<h2>0.3.148</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.148</li>
</ul>
<h2>0.3.147</h2>
<ul>
<li>Updated to parity with Claude Code v2.1.147</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/anthropics/claude-agent-sdk-typescript/commit/0d871c8bd74bcf5902f49b329eff3c23ae8e14df"><code>0d871c8</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="https://github.com/anthropics/claude-agent-sdk-typescript/commit/7f73ab1b54878340d4a7ab7f35a1c2b6cc7de490"><code>7f73ab1</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="https://github.com/anthropics/claude-agent-sdk-typescript/commit/8039cb08921ab09047d34b61388771d76c7c1c9b"><code>8039cb0</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="https://github.com/anthropics/claude-agent-sdk-typescript/commit/33218719ae7669f46e7d6fec91dba8a10435ee37"><code>3321871</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="https://github.com/anthropics/claude-agent-sdk-typescript/commit/4fed972a4e1e8c8cf09a03b3562da78664703859"><code>4fed972</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="https://github.com/anthropics/claude-agent-sdk-typescript/commit/c15f6e270b5240290eefb91db016a7c0c1e46566"><code>c15f6e2</code></a>
Use workload identity federation for Claude auth in issue triage (<a
href="https://redirect.github.com/anthropics/claude-agent-sdk-typescript/issues/335">#335</a>)</li>
<li><a
href="https://github.com/anthropics/claude-agent-sdk-typescript/commit/fb2636c6ece0689638a8cf67c3d27318a172fa96"><code>fb2636c</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="https://github.com/anthropics/claude-agent-sdk-typescript/commit/321a1055052a79f3703aa06bff7d550a371c115b"><code>321a105</code></a>
chore: Update CHANGELOG.md</li>
<li><a
href="https://github.com/anthropics/claude-agent-sdk-typescript/commit/bf61f4ab9ab71a14496cedae439e435521b32575"><code>bf61f4a</code></a>
chore: Update CHANGELOG.md</li>
<li>See full diff in <a
href="https://github.com/anthropics/claude-agent-sdk-typescript/compare/v0.3.146...v0.3.156">compare
view</a></li>
</ul>
</details>
<br />

Updates `@anthropic-ai/sdk` from 0.97.1 to 0.100.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/anthropic-sdk-typescript/releases">@​anthropic-ai/sdk's
releases</a>.</em></p>
<blockquote>
<h2>sdk: v0.100.0</h2>
<h2>0.100.0 (2026-05-28)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.99.0...sdk-v0.100.0">sdk-v0.99.0...sdk-v0.100.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> Add support for claude-opus-4-8,
mid-conversation system blocks, and usage.output_tokens_details (<a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/bb0bf278ea0afdf383b6ea711cadf3ab788ea84a">bb0bf27</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li>replace literal newlines (<a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/66ba1421737231e50bcef295b4437ce60cc90be2">66ba142</a>)</li>
</ul>
<h2>sdk: v0.99.0</h2>
<h2>0.99.0 (2026-05-27)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.98.1...sdk-v0.99.0">sdk-v0.98.1...sdk-v0.99.0</a></p>
<h3>Features</h3>
<ul>
<li>support custom file size caps (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1029">#1029</a>)
(<a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/814cd4c6b5b01e9640d52738d87fa61fc62991e7">814cd4c</a>)</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>streaming:</strong> carry stop_details through message_delta
accumulation (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1027">#1027</a>)
(<a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/198bc277fdfccabe5e9f8a7723a2aa191b46af33">198bc27</a>)</li>
</ul>
<h2>sdk: v0.98.1</h2>
<h2>0.98.1 (2026-05-26)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.98.0...sdk-v0.98.1">sdk-v0.98.0...sdk-v0.98.1</a></p>
<h3>Bug Fixes</h3>
<ul>
<li><strong>client:</strong> preserve directory prefix in
skills.versions.create uploads (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1024">#1024</a>)
(<a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/abbcd6a47d84bc6efcf259f0f803158847f255cf">abbcd6a</a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li><strong>client:</strong> swap to using Trusted Publishing (<a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/821a50ef1fd64270e09c026a3235a34c647cdfab">821a50e</a>)</li>
<li><strong>examples:</strong> rename managed-agents
private-sandbox-worker example to self-hosted-sandbox-worker (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1023">#1023</a>)
(<a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/49fe221fe444a72715a16e4ea2e318e54ba91d4a">49fe221</a>)</li>
</ul>
<h2>sdk: v0.98.0</h2>
<h2>0.98.0 (2026-05-21)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.97.1...sdk-v0.98.0">sdk-v0.97.1...sdk-v0.98.0</a></p>
<h3>Features</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/anthropic-sdk-typescript/blob/main/CHANGELOG.md">@​anthropic-ai/sdk's
changelog</a>.</em></p>
<blockquote>
<h2>0.100.0 (2026-05-28)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.99.0...sdk-v0.100.0">sdk-v0.99.0...sdk-v0.100.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> Add support for claude-opus-4-8,
mid-conversation system blocks, and usage.output_tokens_details (<a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/bb0bf278ea0afdf383b6ea711cadf3ab788ea84a">bb0bf27</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li>replace literal newlines (<a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/66ba1421737231e50bcef295b4437ce60cc90be2">66ba142</a>)</li>
</ul>
<h2>0.99.0 (2026-05-27)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.98.1...sdk-v0.99.0">sdk-v0.98.1...sdk-v0.99.0</a></p>
<h3>Features</h3>
<ul>
<li>support custom file size caps (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1029">#1029</a>)
(<a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/814cd4c6b5b01e9640d52738d87fa61fc62991e7">814cd4c</a>)</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>streaming:</strong> carry stop_details through message_delta
accumulation (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1027">#1027</a>)
(<a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/198bc277fdfccabe5e9f8a7723a2aa191b46af33">198bc27</a>)</li>
</ul>
<h2>0.98.1 (2026-05-26)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.98.0...sdk-v0.98.1">sdk-v0.98.0...sdk-v0.98.1</a></p>
<h3>Bug Fixes</h3>
<ul>
<li><strong>client:</strong> preserve directory prefix in
skills.versions.create uploads (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1024">#1024</a>)
(<a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/abbcd6a47d84bc6efcf259f0f803158847f255cf">abbcd6a</a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li><strong>client:</strong> swap to using Trusted Publishing (<a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/821a50ef1fd64270e09c026a3235a34c647cdfab">821a50e</a>)</li>
<li><strong>examples:</strong> rename managed-agents
private-sandbox-worker example to self-hosted-sandbox-worker (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1023">#1023</a>)
(<a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/49fe221fe444a72715a16e4ea2e318e54ba91d4a">49fe221</a>)</li>
</ul>
<h2>0.98.0 (2026-05-21)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.97.1...sdk-v0.98.0">sdk-v0.97.1...sdk-v0.98.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> Add support for thinking-token-count beta for
estimated tokens in thinking block deltas when streaming (<a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/0528d47b0a390ee7f88d72f85ffe6079ae1c6c00">0528d47</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/6f97c4d68c67aa15aa96064e6bfdce14c6ca1452"><code>6f97c4d</code></a>
chore: release main</li>
<li><a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/1fd7ec701aa19bf83a6253b38cda2a9be972a00b"><code>1fd7ec7</code></a>
feat(api): Add support for claude-opus-4-8, mid-conversation system
blocks, a...</li>
<li><a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/f5bfc105efc5fedad786ccf683d5e09532de02fc"><code>f5bfc10</code></a>
docs: replace literal newlines</li>
<li><a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/1b2500dcae08afdac762df4986b295708c21af66"><code>1b2500d</code></a>
chore: release main</li>
<li><a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/05304ab0ace3612c52de729bd259066dcb2dc5c6"><code>05304ab</code></a>
ci: pin detect-breaking-changes actions to commit SHAs (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1022">#1022</a>)</li>
<li><a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/1ec38204c89a2f2c29e818f13bf86dda7a61e5da"><code>1ec3820</code></a>
fix(streaming): carry stop_details through message_delta accumulation
(<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1027">#1027</a>)</li>
<li><a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/8bb6782c9548e3f38bd17e148690be093d626aca"><code>8bb6782</code></a>
feat: support custom file size caps (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1029">#1029</a>)</li>
<li><a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/1fe87f37472318a18d37025d3981ccf942d6f1d8"><code>1fe87f3</code></a>
chore: release main</li>
<li><a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/a654489537d06068e54dacac2406c42333e95bd3"><code>a654489</code></a>
chore(client): swap to using Trusted Publishing</li>
<li><a
href="https://github.com/anthropics/anthropic-sdk-typescript/commit/9c5c09856ece89df4023e1e0ed1dc97ea72d642e"><code>9c5c098</code></a>
fix(client): preserve directory prefix in skills.versions.create uploads
(<a
href="https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1024">#1024</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.97.1...sdk-v0.100.0">compare
view</a></li>
</ul>
</details>
<details>
<summary>Maintainer changes</summary>
<p>This version was pushed to npm by <a
href="https://www.npmjs.com/~GitHub%20Actions">GitHub Actions</a>, a new
releaser for <code>@​anthropic-ai/sdk</code> since your current
version.</p>
</details>
<br />

Updates `posthog-node` from 5.35.5 to 5.35.6
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/PostHog/posthog-js/blob/main/packages/node/CHANGELOG.md">posthog-node's
changelog</a>.</em></p>
<blockquote>
<h2>5.35.6</h2>
<h3>Patch Changes</h3>
<ul>
<li><a
href="https://redirect.github.com/PostHog/posthog-js/pull/3681">#3681</a>
<a
href="https://github.com/PostHog/posthog-js/commit/7b84b7599d076c9c3c86f923f7d56cf937ad9874"><code>7b84b75</code></a>
Thanks <a
href="https://github.com/ablaszkiewicz"><code>@​ablaszkiewicz</code></a>!
- unify captureException in posthog core
(2026-05-28)</li>
<li>Updated dependencies [<a
href="https://github.com/PostHog/posthog-js/commit/7b84b7599d076c9c3c86f923f7d56cf937ad9874"><code>7b84b75</code></a>]:
<ul>
<li><code>@​posthog/core</code><a
href="https://github.com/1"><code>@​1</code></a>.29.13</li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/PostHog/posthog-js/commit/a12207094c7e7a9b72dbdb513ade41d46df0dcda"><code>a122070</code></a>
chore: update versions and lockfile [version bump]</li>
<li><a
href="https://github.com/PostHog/posthog-js/commit/7b84b7599d076c9c3c86f923f7d56cf937ad9874"><code>7b84b75</code></a>
fix: unify capture exception (<a
href="https://github.com/PostHog/posthog-js/tree/HEAD/packages/node/issues/3681">#3681</a>)</li>
<li>See full diff in <a
href="https://github.com/PostHog/posthog-js/commits/posthog-node@5.35.6/packages/node">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Julien Goux <hi@jgoux.dev>
## Summary

Updates `update-scoop.ts` so manifests pushed to `supabase/scoop-bucket`
follow the same structure as the official Scoop/Main bucket entry, while
keeping our bucket-specific description.

- Switch Windows artifacts from versioned `.zip` URLs to unversioned
`.tar.gz` URLs (`supabase_windows_amd64.tar.gz` /
`supabase_windows_arm64.tar.gz`), matching Main and the unversioned
aliases already published on GitHub Releases.
- Move `bin` to the top level as a string (`"bin": "supabase.exe"`)
instead of per-architecture array entries.
- Add the Main-style `autoupdate.hash` block pointing at
`$baseurl/supabase_$version_checksums.txt`.
- Keep `"description": "Supabase CLI"` rather than Main's Firebase
tagline.
- Preserve `--local` behavior by continuing to reference versioned
tarballs from `dist/`, since local builds do not create unversioned
aliases.

## Context

The previous manifest layout (zip URLs, `bin` inside `architecture`) was
the only one in our bucket with that shape and diverged from Scoop
maintainer conventions. This aligns the generated JSON with what Main
reviewers expect, without changing the installed binary name or release
artifact contents.
When a database host resolves to an IPv6-only address and the user's
network has no IPv6 route, the dial fails with "network is unreachable"
or "no route to host". The former produced no suggestion and the latter
was misreported as "make sure your project exists".

Detect the IPv6 literal in these connection errors and point the user at
the IPv4 connection pooler via `supabase link` instead.

https://claude.ai/code/session_01UaPk7dGPmiCqoKJHyV7SLz
@avallete avallete requested a review from a team as a code owner June 5, 2026 19:23
@coveralls
Copy link
Copy Markdown

Coverage Report for CI Build 27035445904

Warning

No base build found for commit b749d52 on main.
Coverage changes can't be calculated without a base build.
If a base build is processing, this comment will update automatically when it completes.

Coverage: 64.012%

Details

  • Patch coverage: No coverable lines changed in this PR.

Uncovered Changes

No uncovered changes found.

Coverage Regressions

Requires a base build to compare against. How to fix this →


Coverage Stats

Coverage Status
Relevant Lines: 15861
Covered Lines: 10153
Line Coverage: 64.01%
Coverage Strength: 7.11 hits per line

💛 - Coveralls

@avallete avallete closed this Jun 5, 2026
@avallete avallete deleted the claude/brave-maxwell-YoIfd branch June 5, 2026 19:31
@avallete avallete restored the claude/brave-maxwell-YoIfd branch June 5, 2026 19:35
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.

6 participants