Summary
Align Pebble product URLs and ROADMAP “product origin” language with live Nebutra infrastructure. Platform topology is SoT; pebble.nebutra.com / *.pebble.nebutra.com in ROADMAP are aspirational and currently lack DNS.
Index (updated): docs/reference/infra-index.md
(If not yet on main, use the file in-tree.)
Live platform topology
Cloudflare (edge :443)
→ Vercel (Git-native frontend: landing, docs)
→ ECS 106.15.4.31 (origin: app / auth / api / sso / router / forge)
| Host |
Role |
Port |
docs.nebutra.com |
Docs (Vercel) |
443 |
api.nebutra.com |
API (CF → ECS) |
443 |
status.nebutra.com |
Status |
443 |
app.nebutra.com |
App RP |
443 |
auth.nebutra.com |
Login / session |
443 |
sso.nebutra.com |
OIDC issuer (no path prefix, do not casually migrate) |
443 |
www.nebutra.com / landing |
Brand |
443 |
pebble.nebutra.com |
No DNS today; optional later brand CNAME only |
— |
| Staging pebble subdomain |
None — use env/secrets/projects |
— |
Auth constraints (platform)
- Session held on
auth.nebutra.com
app.nebutra.com is RP; unauthenticated → auth…/sign-in?returnTo=…
AUTH_COOKIE_DOMAIN=.nebutra.com; both ends BETTER_AUTH_SECRET must match
sso.nebutra.com = OIDC issuer URL only (never add path)
Recommended mapping (Pebble)
| Capability |
Stop using (drift) |
Prefer |
| Docs / help |
https://pebble.nebutra.com/docs |
https://docs.nebutra.com/… |
| Feedback / diagnostics |
product-host paths |
https://api.nebutra.com/… (same host for token + upload) |
| Status |
status.pebble.nebutra.com |
https://status.nebutra.com |
| Staging |
staging.pebble.nebutra.com |
env / project isolation, not a host |
| Optional brand |
full pebble origin stack |
CNAME pebble.nebutra.com → CF only |
Do not build a parallel api.pebble / status.pebble / staging.pebble stack for v1.
API path decision (needs platform pick)
- Flat:
api.nebutra.com/v1/feedback, /diagnostics/*, or
- Prefixed:
api.nebutra.com/pebble/v1/…
Local / SSH ports (unchanged)
| Service |
Port |
Local pebble-runtime |
17777 (127.0.0.1) |
pebble serve / pairing |
6768 |
| SSH |
22 |
| Public product surface |
443 (80 → 443) |
ssh -L 17777:127.0.0.1:17777 user@host
ssh -L 6768:127.0.0.1:6768 user@host
Client hardcodes to replace
feature-wall-tiles.ts / feature-wall-workflows.ts → docs base
telemetry.ts → privacy URL
SidebarSettingsHelpMenu.tsx → docs URL
updater-changelog-selection.ts → changelog host
package.json homepage
Prefer build-time config: DOCS_ORIGIN, API_ORIGIN, STATUS_ORIGIN.
Acceptance
Non-goals
- Redesigning Better Auth / OIDC issuer URL
- Exposing ECS origin IP publicly
- Orca pairing / LAN (separate product issue)
Summary
Align Pebble product URLs and ROADMAP “product origin” language with live Nebutra infrastructure. Platform topology is SoT;
pebble.nebutra.com/*.pebble.nebutra.comin ROADMAP are aspirational and currently lack DNS.Index (updated):
docs/reference/infra-index.md(If not yet on
main, use the file in-tree.)Live platform topology
docs.nebutra.comapi.nebutra.comstatus.nebutra.comapp.nebutra.comauth.nebutra.comsso.nebutra.comwww.nebutra.com/ landingpebble.nebutra.comAuth constraints (platform)
auth.nebutra.comapp.nebutra.comis RP; unauthenticated →auth…/sign-in?returnTo=…AUTH_COOKIE_DOMAIN=.nebutra.com; both endsBETTER_AUTH_SECRETmust matchsso.nebutra.com= OIDC issuer URL only (never add path)Recommended mapping (Pebble)
https://pebble.nebutra.com/docshttps://docs.nebutra.com/…https://api.nebutra.com/…(same host for token + upload)status.pebble.nebutra.comhttps://status.nebutra.comstaging.pebble.nebutra.compebble.nebutra.com→ CF onlyDo not build a parallel
api.pebble/status.pebble/staging.pebblestack for v1.API path decision (needs platform pick)
api.nebutra.com/v1/feedback,/diagnostics/*, orapi.nebutra.com/pebble/v1/…Local / SSH ports (unchanged)
pebble-runtime127.0.0.1)pebble serve/ pairingClient hardcodes to replace
feature-wall-tiles.ts/feature-wall-workflows.ts→ docs basetelemetry.ts→ privacy URLSidebarSettingsHelpMenu.tsx→ docs URLupdater-changelog-selection.ts→ changelog hostpackage.jsonhomepagePrefer build-time config:
DOCS_ORIGIN,API_ORIGIN,STATUS_ORIGIN.Acceptance
docs/reference/infra-index.mdreflects platform SoT (topology, auth, ports, mapping)/pebble)api.nebutra.comwithout POST redirectsNon-goals