coulomb-social/INTENT.md

92 lines
6.1 KiB
Markdown
Raw Normal View History

---
repo: coulomb-social
updated: "2026-08-10"
status: active
---
# INTENT — coulomb-social
## Project Name
`coulomb-social`
## One-Line Intent
`coulomb-social` reimplements the **coulomb.social** co-creation platform — currently stuck on bubble.io — as a first-class application on the Railiance / NetKingdom / HelixForge stack, so product evolution can move at agentic coding speed instead of low-code stall.
## Purpose
coulomb.social is Coulomb's co-creation marketplace: people and teams find each other around shared projects and complementary capabilities. The live product still runs on bubble.io. That path is **stalled**: low-code velocity no longer matches the rest of the Coulomb fleet, content and UI are hard to evolve with agents, and the platform cannot meet the business-app service contract (tenancy, backup, cost attribution, image provenance).
This repository is the **owning home** for the rebuild:
1. **Parity capture** — inventory and export everything that matters in the bubble.io app (UI surfaces, workflows, data types, content, integrations).
2. **Cut decisions** — decide rebuild-as-is vs reduced v1 with an explicit human gate.
3. **Implementation** — deliver a standalone service on the proven business delivery lane (`vergabe-teilnahme` evidence), under the business-app service contract.
4. **Cutover** — serve the rebuild on **`app.coulomb.social`** in parallel with Bubble on apex `coulomb.social`; retire Bubble only when data, self-registration, and content parity are ready.
Binky Hedgehog GmbH is **client #1** of its own platform (DR-2 B). The app is not a Core Hub extension; it is a normal client-facing business application.
## Core Idea
> Exit bubble.io by duplicating the product surface into an agentic, code-owned stack — not by bolting more low-code onto a stalled base.
The rebuild is deliberately **product-faithful first**: UI and content parity matter so the community does not experience a feature cliff at cutover. Scope reductions, if any, are explicit decisions (CSOC-WP-0001-T03), not accidental omissions.
## Platform Shape (decided)
| Concern | Decision |
|---------|----------|
| Shape | Standalone service — own repo, own DB, own release values (DR-2 B) |
| Tenancy | Instance-per-client deployment; tenant-keyed data model from migration one (DR-1 C) |
| Identity | NetKingdom OIDC (KeyCape) + user-engine (ADR-0001); proven on app host |
| Public hosts | **`app.coulomb.social`** = rebuild; **`coulomb.social`** = Bubble until cutover |
| Delivery lane | commit-SHA images → `forgejo.coulomb.social/coulomb/coulomb-social``railiance-apps` → railiance01 |
| Content direction | Space content as **markdown**, versioned with **Forgejo** (CSOC-WP-0004); bulk Bubble migration later |
| Contract | `the-custodian` `canon/standards/business-app-service-contract_v0.1.md` §§16 |
## What Success Looks Like
1. Full inventory of the bubble.io product (pages, workflows, data, integrations) is recorded in this repo.
2. Exportable data is mapped to a relational, tenant-keyed model and rehearsal-imported at least once.
3. A human-gated feature cut (rebuild-as-is vs reduced v1) is decided and recorded.
4. v1 implementation satisfies the business-app service contract before serving members.
5. Members and content can cut over from bubble.io without relying on the low-code platform for further development.
## Design Principles
1. **Own the product in code** — UI, domain model, and content pipelines live in git so agents can change them safely.
2. **Parity before cleverness** — match the existing product surface before inventing net-new platform features.
3. **Contract first** — tenancy keying, backup/restore path, ops-hub registration, and cost attribution keys are not afterthoughts.
4. **Reuse the delivery lane** — follow `vergabe-teilnahme` patterns for build, image, and railiance-apps release; do not invent a second path.
5. **Stack boundaries** — Railiance owns runtime hosting, NetKingdom owns platform identity/secrets direction, HelixForge owns capability vocabulary; this repo owns the coulomb.social product.
## Scope Summary
**In:** product rebuild, bubble exit assessment, data migration, UI/content parity, app-local auth, railiance delivery packaging.
**Out:** owning Railiance/NetKingdom/HelixForge platform code; remaining on bubble.io as the long-term development surface; Core Hub embedding.
## Related Documents
- `GOAL.md` — operator bootstrap note for this repo
- `SCOPE.md` — in/out boundaries and orientation
- `workplans/CSOC-WP-0002-netkingdom-user-management-reestablish.md`**finished**: identity shell on app.coulomb.social
- `workplans/CSOC-WP-0003-self-registration-and-assurance.md`**finished**: Case A + Create account entry; Case B residuals `CSOC-IN-0001`/`0002`
- `workplans/CSOC-WP-0004-app-shell-and-space-content.md`**finished**: app home, spaces, Forgejo markdown, operator runbook
- `docs/adr/ADR-0001-netkingdom-identity.md` — accepted identity decision
- `docs/adr/ADR-0002-space-content-forgejo-markdown.md` — space content as markdown in Forgejo
- `docs/deploy.md` — deploy + spaces operator runbook
- `workplans/CSOC-WP-0001-bubble-io-exit-assessment.md` — Bubble inventory/migration **after** product foundation
- `workplans/CSOC-WP-0005-resource-demand-and-cost-evidence.md`**finished**: demand/SLO/labor evidence for resource-control
- `docs/resource-evidence/` — workload demand forecasts, observations, labor
- `docs/capability/` — product capability/feature model; stage-1 cutover must set
- `docs/decisions/2026-08-12-feature-cut-stage-1.md` — partial rebuild for productive transfer
- `docs/architecture/ArchitectureBlueprint.md` — content plane, NetKingdom, assets (discussion)
- `docs/architecture/spike-checklist.md` — evaluation spikes for store choice
- `docs/architecture/2026-08-12-content-substrate-exploration.md` — markdown SoR, markitect-tool, shard-wiki eval
- `the-custodian/docs/coulomb-social-rebuild-seed.md` — original workplan seed (CUST-WP-0058-T08)
- `the-custodian/canon/standards/business-app-service-contract_v0.1.md`
- NetKingdom: IAM Profile, user-engine boundary, KeyCape/Keycloak modes
- Reference delivery lane: `vergabe-teilnahme`