docs: Stack Auth → Hexclave rebrand plan#1468
Conversation
Captures the v6 rebrand plan: dual-support strategy for wire identifiers (HTTP headers, cookies, JWT issuers, Bearer prefix, OAuth state), SDK alias re-exports, npm dual-publish via rewrite-then-republish, Swift split into separate StackAuth/Hexclave packages, env var taxonomy, verification matrix, and 2-PR rollout.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
…n rebrand plan Addresses review gaps in the Hexclave rename plan: - Storage keys: add the missed localStorage keys `_STACK_AUTH.lastUsed`, `stack:session-replay:v1:*`, `__stack-dev-tool-state`, and `stack-devtool-trigger-position`, with per-key compat risk notes. - Query parameters: new Tier 0 category — `stack_response_mode`, the four `stack_cross_domain_*` handoff params, and `stack-init-id` are wire-compat-sensitive and were previously uncovered. - Custom DOM events: `stack-platform-change` / `stack-framework-change`. - Dev tool: dev-tool-core.ts is its own brand surface (storage keys, header-emit site, DOM identifiers, brand strings).
- Tier 1: internal-only symbols (SDK interfaces, StackAssertionError) renamed outright with no alias; user-facing symbols keep aliases - Tier 2: @hexclave/* starts at 1.0.0, lockstep versioning; add npm deprecate + runtime warn for old packages; drop @hexclave/init - Env vars: all categories dual-read (incl. operator/internal); NEXT_PUBLIC_STACK_PORT_PREFIX renamed outright - Emails: noreply moves to sent-with-hexclave.com sending domain - CHIPS test cookies out of scope (unused feature) - Rollout split into 3 PRs: invisible compat layer, visible rebrand, far-future fallback removal
- Add "PR 1 implementation guide" section resolving every open item with concrete file:line references and chosen approach per work-area - Correction: Bearer stackauth_ prefix is SDK-internal, never parsed by the backend (was wrongly listed as a backend wire identifier) - Request headers: normalize at the existing empty proxy.tsx:114 hook (no readDualHeader helper, no per-route schema edits) - Env vars: hybrid dual-read (central getEnvVariable transform + two client files + per-site tail) - Symbol.for: four symbols, not three; only one needs dual-attach - Query params: add the two nested cross-domain params
Grep confirms x-stack-auth has zero references in apps/backend and packages/stack-shared. It is produced by the deprecated getAuthHeaders()/ useAuthHeaders() SDK methods and consumed by the SDK tokenStore parser (client-app-impl.ts) — the Stack backend never parses it. Reframed from "backend read-only wire identifier" to "SDK-internal legacy identifier", corrected the false "no current writer" claim, and resolved the open verification item.
Summary
Adds the v6 rebrand plan (RENAME-TO-HEXCLAVE.md) covering every renameable identifier across the codebase and how each one is handled.
Highlights:
Bearer stackauth_*prefix, allstack-*cookies (auth + OAuth state + low-risk UI), 3 JWT issuer variants, mobile OAuth URL scheme, MCP tool name, config filename. Each old form stays readable indefinitely; new form is preferred and emitted by new code.Stack*class/component/hook/type gets aHexclave*alias via re-exports inpackages/template; codegen propagates to react/stack/js. Swift SDK split into two separate SPM packages (frozenStackAuth+ newHexclave).@stackframe/*packages dual-published as@hexclave/*via a rewrite-then-republish step appended to.github/workflows/npm-publish.yaml.@stackframe/emailsvirtual module, dashboard sandboxwindow.Stack*globals + iframe message types, KnownErrors message templates, init wizard, dashboard setup snippets.Review focus
stack/Stack/stackframeand isn't covered.Test plan