cocottetech/docs/GLOSSARY.md
Natalie 5ff7d68dc5 docs(cocottetech): Wave 1 prospector restructure doc updates (parallel slice): prospector packages now from @applications/@prospector/@packages , deprecate old, LP backend notes, publish for consumers
- Updated cockpit-kit/ios-fe READMEs, CLAUDE, DESIGN etc per plan.
- Co-Authored-By from subagent work + this.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-28 17:43:06 -04:00

4.6 KiB

Glossary

Canonical domain terms. Every doc that uses these terms means exactly what's defined here. If a term is ambiguous in your draft, add it here first.

Tenancy

  • Person — a single human user. Primary tenant. Identified by user_id. Owns a profile, inbox, bookings, analytics.
  • Org — optional overlay tenant: an entity (typically an LLC) that holds talent contracts + financial flows. Identified by org_id. Has one owner Person, N admin Persons, N member Persons.
  • Tenant — umbrella term covering both Person and Org. Every multi-tenant table carries user_id and optional org_id.
  • Provider — a Person who offers services through the platform (escort, content creator, etc.). Independent of whether they belong to an Org.
  • Client — the Provider's customer. Lives one tenancy layer deeper than Provider.

Brand & corporate

  • Cocotte — public-facing umbrella brand operated by the Demimonde Org. Customers see "Cocotte", never "Demimonde".
  • Demimonde — back-office Org (the LLC). Holds contracts + financials. Invisible to customers.
  • Sansonnet — separately-held independent Org with its own brand at sansonnet.maison.
  • Lilith Apps ehf — the tech company (platform infrastructure / shared services).
  • Brand vs Org — Brand = customer-visible presentation (logo, copy, domain). Org = back-office legal entity. One Org can operate multiple Brands.

Lineage

  • V0 (egirl-platform) — viky-era, 27-app monorepo. Archived as .archive/platform.0.tar.zst.
  • V1 (lilith-platform) — 54-feature SaaS, never shipped. Archived as .archive/platform.1.tar.zst.
  • V2 (lilith-platform.live) — Quinn-personal, currently in production. Archived as .archive/platform.2.tar.zst. Source path on apricot is never modified.
  • V3 (@atlilith) — brief intermediate workspace, skipped. Preserved-readonly sibling repo at forge.black.lan/lilith/atlilith (now defunct; the host is dead) AND archived as .archive/platform.3.tar.zst for completeness (small — no code shipped). Caveat: All references to forge.black.lan are historical; the old infra is retired. Use the current cocotte-forge (ct-forge) bare IP or the new ct.uvlava.com domains once live.
  • V4 (@cocottetech) — current active workspace. Additive to V2 — does not replace it.

Architecture

  • Feature — vertical slice owning its ai-core/, web-fe/, ios-fe/, worker/, mcp-server/, sql/, deploy/, docs/, tests/, agents/. Has a feature.yaml manifest.
  • Surface — a user-reachable interface of a feature: ai-core (NestJS API), web-fe (React), ios-fe (Swift), worker (cron/queue), mcp-server (MCP tools).
  • Peer service — code that lives outside @cocottetech/ (in ~/Code/@applications/@{ai,ml,imajin}/ or ~/Code/@projects/@lilith/{mail,mac}-sync/). Consumed over HTTP/MCP. Never vendored.
  • Platform action — a skill in @ai/@skills/platform-*/actions/* that the AI assistant invokes against platform.api. Contributed upstream to @ai, not vendored into V4.
  • @lilith/* SDK — the canonical shared package family in ~/Code/@packages/ (184 TS + 35 Py). V4 consumes via private registry. Current (transition, 2026-06-28): http://134.199.243.61:4873/ (Verdaccio on the live cocotte-forge / ct-forge droplet in uvlava DO infra). Target (once live): https://npm.ct.uvlava.com/ (with Caddy/LE TLS). Caveats: Old forge.black.lan and npm.black.lan are dead (hosts retired). uvlava.com DNS (ct. subdomains including npm.ct, pypi.ct, swift.ct) is defined in uvlava/terraform/do/dns.tf but NOT LIVE YET (joker registrar NS delegation pending). Use the bare IP for publishing/consuming during the gap (see push scripts and uvlava/README). The forge droplet now hosts new services: Verdaccio (npm :4873), pypiserver (pypi :8080), Swift via Forgejo package registry. Under TF management in the DO ct-forge setup (cloud-init/forge.yaml + compose). Never use file: or link: in package.json. Publish from ct-forge CI runners (on-demand DO).

Methodology

  • lix — the unified build/test/validate toolchain (lixbuild, lixtest, lixrun) provided by @lilith/lix-* packages.
  • ACS — auto-commit-service running on apricot. Agents stage changes; ACS commits.
  • Vertical slice — shipping a feature across all its surfaces (ai + web + ios + worker + sql + deploy + tests) before starting the next feature.
  • Source-of-truth symlinkCLAUDE.md and .claude/ at the repo root are symlinks to tooling/claude/CLAUDE.md and tooling/claude/dot-claude/. Edit only the targets.