clawdie-ai/setup
Clawdie AI 9ed3ce607c feat(multitenant): add tenant sites schema with exposure validation
Tenant records now carry an optional sites: list per the approved naming
policy (id + exposure ∈ disabled | internal | public). The registry loader
rejects a public site when platform.publishing_mode is disabled or when
platform.public_base is unset, and refuses duplicate site ids within a
tenant. Adds siteFqdn() and tenantHomeFqdn() helpers so consumers derive
'<site>.<tenant>.<base>' uniformly instead of reinventing the rule.

setup/dns.ts now emits an address record per declared internal/public
site (skipping disabled ones), so dnsmasq answers the full
'<site>.<tenant>.<internal_base>' zone that mDNS cannot serve.

This is the schema prerequisite the publish-flow design note will need;
the Astro-publish implementation can read tenant.sites instead of a CLI
argument once it lands.

---
Build: pass | Tests: pass — 1812 passed (115 files)

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-04-24 19:29:57 +02:00
..
agent-cli-check.test.ts test: add agent-cli-check and identity-restore tests 2026-04-15 05:14:52 +00:00
agent-cli-check.ts feat(harness): replace Codex controlplane runner with Aider+Pi (Sam & Claude) 2026-04-12 08:26:20 +02:00
agent-jails.ts Align jail defaults and fixtures to FreeBSD 15 2026-04-24 15:54:32 +02:00
bastille-helpers.test.ts fix(jails): use _ separator in worker jail names for readability 2026-04-15 11:28:27 +00:00
bastille-helpers.ts Align jail defaults and fixtures to FreeBSD 15 2026-04-24 15:54:32 +02:00
cms.ts Clean up controlplane naming consumers 2026-04-24 16:50:08 +02:00
controlplane.ts Clean up controlplane naming consumers 2026-04-24 16:50:08 +02:00
db.ts Propagate platform naming into runtime consumers 2026-04-24 15:44:52 +02:00
dns.test.ts feat(multitenant): add tenant sites schema with exposure validation 2026-04-24 19:29:57 +02:00
dns.ts feat(multitenant): add tenant sites schema with exposure validation 2026-04-24 19:29:57 +02:00
env-audit.test.ts Surface platform naming in startup and env audit 2026-04-24 15:59:14 +02:00
env-audit.ts feat(multitenant): wire shared.jails through runtime jail-name defaults 2026-04-24 19:13:49 +02:00
environment.test.ts test: expand coverage + fix setup/ TypeScript errors 2026-04-14 09:40:28 +00:00
environment.ts Refactor V2 identity and platform ownership model 2026-04-24 07:49:09 +02:00
forgejo.ts Clean up controlplane naming consumers 2026-04-24 16:50:08 +02:00
freebsd-locales.test.ts Enforce UTF-8 locales and expand snapshot coverage 2026-04-04 14:17:04 +00:00
freebsd-locales.ts feat(setup): add FreeBSD onboarding and baseline sync 2026-03-14 02:51:10 +01:00
freebsd-timezones.test.ts test: add freebsd-timezones and env-audit tests 2026-04-15 05:12:49 +00:00
freebsd-timezones.ts feat: add timezone menu selection to onboarding 2026-03-24 16:52:51 +00:00
git.ts Propagate platform naming into runtime consumers 2026-04-24 15:44:52 +02:00
groups.ts feat(db): migrate SQLite to Postgres OPS_DB (Sam & Claude) 2026-04-11 12:21:27 +02:00
hostd.ts feat(multitenant): split platform runtime from tenant identity 2026-04-23 09:11:27 +02:00
hosts.test.ts Clean up controlplane naming consumers 2026-04-24 16:50:08 +02:00
hosts.ts Clean up controlplane naming consumers 2026-04-24 16:50:08 +02:00
identity-restore.test.ts Refactor V2 identity and platform ownership model 2026-04-24 07:49:09 +02:00
identity-restore.ts feat: identity-restore installer step + Supabase-backed identity files 2026-03-28 13:45:25 +00:00
index.ts feat(multitenant): add dns.conf generator driven by tenant registry 2026-04-24 19:11:37 +02:00
install.ts refactor(multitenant): align setup verification with platform runtime 2026-04-23 10:20:30 +02:00
jail-provision.ts Align jail defaults and fixtures to FreeBSD 15 2026-04-24 15:54:32 +02:00
jails.ts Align jail defaults and fixtures to FreeBSD 15 2026-04-24 15:54:32 +02:00
llama-cpp.ts Propagate platform naming into runtime consumers 2026-04-24 15:44:52 +02:00
mounts.ts fix(preflight): default mounts config and flag root-only steps 2026-03-15 00:37:43 +01:00
ollama.ts Propagate platform naming into runtime consumers 2026-04-24 15:44:52 +02:00
onboarding.test.ts refactor(payments): simplify Stripe integration 2026-03-14 13:58:32 +01:00
onboarding.ts Propagate platform naming into runtime consumers 2026-04-24 15:44:52 +02:00
packages.test.ts test: add setup and upstream module unit tests 2026-04-15 05:32:50 +00:00
packages.ts fix(build): exclude test files from tsc production build 2026-04-15 16:23:13 +00:00
pf.ts feat(setup): implement pf/db/jails/hostd + safer sudo flow (Sam & Codex) 2026-04-03 09:36:40 +00:00
pi-config.ts Add just pi-config and direct runner 2026-04-18 19:10:39 +00:00
platform.test.ts Setup: reduce prompts (AUTO boot), add env-audit, drop headless/desktop split (Sam & Codex) 2026-04-03 08:49:07 +00:00
platform.ts fix(setup): pre-chown runtime dirs and resolve npm path for root installs 2026-04-16 08:26:35 +00:00
preflight.test.md docs(preflight): add test suite summary 2026-03-14 23:21:28 +00:00
preflight.test.ts Propagate platform naming into runtime consumers 2026-04-24 15:44:52 +02:00
preflight.ts Propagate platform naming into runtime consumers 2026-04-24 15:44:52 +02:00
profile.test.ts feat(setup): add FreeBSD onboarding and baseline sync 2026-03-14 02:51:10 +01:00
profile.ts feat(setup): implement pf/db/jails/hostd + safer sudo flow (Sam & Codex) 2026-04-03 09:36:40 +00:00
register.test.ts Fix mock pools for new Postgres ops 2026-04-11 10:38:55 +00:00
register.ts feat(db): migrate SQLite to Postgres OPS_DB (Sam & Claude) 2026-04-11 12:21:27 +02:00
sanoid.ts refactor(multitenant): make tenant and platform identity explicit 2026-04-23 21:41:42 +02:00
secrets.test.ts Refactor V2 identity and platform ownership model 2026-04-24 07:49:09 +02:00
secrets.ts Refactor V2 identity and platform ownership model 2026-04-24 07:49:09 +02:00
service.test.ts feat(multitenant): split platform runtime from tenant identity 2026-04-23 09:11:27 +02:00
service.ts Refactor V2 identity and platform ownership model 2026-04-24 07:49:09 +02:00
skills-init.ts refactor(multitenant): make tenant and platform identity explicit 2026-04-23 21:41:42 +02:00
skills-memory.ts refactor(multitenant): make tenant and platform identity explicit 2026-04-23 21:41:42 +02:00
status.test.ts test: add setup and upstream module unit tests 2026-04-15 05:32:50 +00:00
status.ts Fix build imports and setup branding 2026-03-07 22:03:41 +01:00
tailscale.test.ts test: add setup and upstream module unit tests 2026-04-15 05:32:50 +00:00
tailscale.ts Enable Tailscale jail auto-join (Sam & Codex) 2026-04-04 15:40:47 +00:00
telegram-auth.test.ts test: add status, registry, and telegram-auth test suites 2026-04-15 05:45:35 +00:00
telegram-auth.ts Replace WhatsApp setup with Telegram auth 2026-03-07 23:08:14 +01:00
upstream.ts test: expand coverage + fix setup/ TypeScript errors 2026-04-14 09:40:28 +00:00
verify-agent-jails.test.ts Refactor V2 identity and platform ownership model 2026-04-24 07:49:09 +02:00
verify-agent-jails.ts refactor(multitenant): make tenant and platform identity explicit 2026-04-23 21:41:42 +02:00
verify.test.ts refactor(multitenant): align setup verification with platform runtime 2026-04-23 10:20:30 +02:00
verify.ts refactor(multitenant): make tenant and platform identity explicit 2026-04-23 21:41:42 +02:00