Commit graph

33 commits

Author SHA1 Message Date
8447943dc0 Import Bubble export trees into PageOps and finish CSOC-WP-0001
Add import_content_tree management command and import_tree helper for
ADR-0004 sample trees. Document reichelag rehearsal lossiness; mark T02/T04
and the bubble exit workplan finished.
2026-08-13 12:48:55 +02:00
affed64839 Land CSOC-WP-0006 PageOps: member space/page CRUD, copy, transfer
Thin CONTENT_ROOT content plane (ADR-0003/0004) with space visual field,
product UI for Title/Abstract/Visual, page list sidebar, and tests. Update
capability model and smoke checklist; mark WP-0006 finished.
2026-08-13 12:46:39 +02:00
a0fd3cb7ea Advance Bubble export: corpus walk and ADR-0004 sample tree
Add corpus exporter (session + ES capture), record 71 spaces / 109 articles
and local reichelag markdown tree with visuals. Redacted progress only in git.
2026-08-13 12:24:13 +02:00
440719b9eb Map Bubble article/space fields from authenticated session export
Record CSOC-WP-0001-T02 progress: live ES payloads show custom.article as
Research content with nomer/abstractor/content/logo; redacted field map only.
2026-08-13 10:40:08 +02:00
d3dfdebeaf Document bubble export auth path in migration README 2026-08-13 10:18:50 +02:00
a160ad400b Add safe Bubble session export path for CSOC-WP-0001-T02
Document XDG/OpenBao credential custody (no secrets in chat) and add
Playwright inventory export using storage-state for automated read access.
2026-08-13 10:18:41 +02:00
ce65b359af Add ADR-0003 and ADR-0004 for page SoR and thin git content plane
Accept page-centric markdown SoR with dual authoring, live includes, and
lazy projections; accept thin dir+git plane with PageOps and supported
upgrades to shard-wiki and kontextual. Demote ADR-0002 Forgejo-as-SoR.
2026-08-13 10:04:46 +02:00
d953aed4dd Record architecture decisions: thin git plane, live default, upgrades
D1 thin dir+git with shard-wiki then kontextual upgrade path; D2 defer
asset-store; D3 NetKingdom authz consolidation; D4 outline explode/implode
and live-by-default includes with pin as exception.
2026-08-13 00:48:33 +02:00
c27a50e6d3 Revise ArchitectureBlueprint with full discussion synthesis
Fold page-first/transclusion, dual authoring, lazy projections, stale
replace-or-keep, and open content-plane decisions into the main draft.
2026-08-13 00:27:44 +02:00
f6c9756b26 Design stale badge with replace-or-keep for projections and includes
Extend authoring model: generate alternative current version, keep or replace.
Unify with pinned transclusions/pipelines; document markitect-tool gap and
point at cross-repo proposal.
2026-08-13 00:19:54 +02:00
e2aa4045f4 Design dual authoring modes and lazy projection fields
Document top-down and bottom-up writing, lazy title/abstractor/visual that
persist after generation, and per-field regenerate plus lock. Wire into
capability model and stage-1 notes.
2026-08-13 00:07:32 +02:00
64d4dcda7c Note page-first content with markitect transclusion as chunk model
Document markitect include/selector/region/explode primitives and map Bubble
chunks to addressable extractions rather than a priori chunk storage.
2026-08-12 23:48:25 +02:00
b773ae885f Map live Bubble coulomb.social capabilities and features
Hierarchical capability/feature tree from Bubble client packages and design
extract: spaces/pages/chunks, Abstractor/Visual/Title, social, ventures,
challenges, monetization; tagged against stage-1 rebuild cut.
2026-08-12 18:46:42 +02:00
a79a9e6e77 Add ArchitectureBlueprint and content-plane spike checklist
Document coulomb layering (NetKingdom, Railiance, PageOps, markitect-tool),
compare thin store vs shard-wiki vs kontextual-engine, and outline asset-store
extraction from kontextual BlobStorage. Include executable spike checklist.
2026-08-12 18:38:27 +02:00
27ba9206f7 Document content substrate: markdown SoR, markitect-tool, shard-wiki
Capture preferred layering (NetKingdom, Railiance, coulomb UI, markitect-tool
as markdown lib, DB as cache). Treat markitect-main as legacy; evaluate
shard-wiki as thin-slice content plane candidate.
2026-08-12 18:29:29 +02:00
bc78cd27fc Adopt stage-1 capability cut and product capability model
Persist capability/feature vocabulary, v0 model, and founder stage-1 must set
(onboarding, spaces/pages with Title/Abstract/Visual, page copy and transfer).
Mark CSOC-WP-0001-T03 done; add CSOC-WP-0006 for implementation.
2026-08-12 13:09:09 +02:00
3a74d004f0 Inventory Bubble surface and sketch migration mapping (CSOC-WP-0001)
Record public meta, Research/vw_pages routes, integrations, and content
hypothesis. Provisional Postgres+Forgejo mapping awaits Bubble export.
2026-08-12 11:10:14 +02:00
c521adc2f9 Publish CSOC-WP-0005 resource demand and cost evidence
Add low/base/high demand forecasts, service objectives with timestamped
observations, and workload operations labor for resource:tenant:coulomb:coulomb-social.
2026-08-12 11:07:03 +02:00
edfdd79208 Finish CSOC-WP-0003 and CSOC-WP-0004; residual intakes for Case B
Close self-registration workplan with Case A proven and Create account
entry implemented; park public registration enablement and identity
negatives as CSOC-IN-0001/0002. Complete app-shell workplan with T06
operator runbook (seed, bind, webhook, smoke) and smoke doc updates.
2026-08-12 10:59:25 +02:00
3f30bcd340 Add Forgejo edit/refresh sync path for space content (T05)
Keep git as source of truth: deep-link to Forgejo editor, manual refresh to
drop cache, and optional signed push webhook for automatic invalidation.
2026-08-12 03:29:26 +02:00
1cedd8f219 Render space pages from Forgejo markdown (CSOC-WP-0004-T04)
Fetch raw files from Forgejo, sanitize markdown to HTML, and show them on
space detail. Ship a public demo fixture path and seed_demo_space command.
2026-08-12 01:56:30 +02:00
be32432d39 Add Space metadata model and provisional Forgejo content ADR
Introduce tenant-scoped Space/SpaceMembership with list and detail views.
Document markdown-in-Forgejo as content SoR (ADR-0002). Run migrations on
container start so app.coulomb.social picks up the new tables.
2026-08-12 01:30:05 +02:00
f5537d8365 Serve the rebuild on app.coulomb.social; defer apex Bubble cutover
Document parallel-host strategy: Railiance on app.*, Bubble remains on
coulomb.social until data and self-registration are ready.
2026-08-09 23:20:30 +02:00
29a9ff735e Complete identity smoke path: id_token claims, registration entry, cutover docs
Prefer verified KeyCape id_token claims when /userinfo returns 401; soft-fail
userinfo. Add CSOC-WP-0003 registration entry (disabled until NetKingdom URL),
AAL step-up hooks, smoke/cutover evidence for tegwick OIDC without MFA.
2026-08-09 22:42:51 +02:00
c71fb0fda9 Document and wrap coulomb-social-env secret script
Point operators at railiance-apps create-coulomb-social-env-secret.sh
via scripts/create-env-secret.sh for production Secret assembly.
2026-08-09 02:04:33 +02:00
44439f8d8d Complete flex-auth PEP and document railiance packaging path
Local + HTTP POST /v1/check PEP with fail-closed transport errors;
shell:view enforced on /app/. Vocabulary docs for T07. Helm chart lives
in railiance-apps; Dockerfile already present for T08.
2026-08-09 02:00:12 +02:00
e80fdced13 Add Dockerfile for coulomb-social delivery-lane packaging
Non-root gunicorn image with /healthz check; railiance-apps values still open.
2026-08-09 01:57:02 +02:00
d88767f05b Wire user-engine HTTP /me for member provisioning (CSOC-WP-0002-T04)
HttpUserEngineClient uses trusted-proxy claims against live user-engine.
Offline stub when URL/secret unset. Align default tenant with KeyCape
tenant:coulomb; map OIDC tenant/principal_type/groups into the envelope.
2026-08-09 01:56:44 +02:00
76ec8cfe41 Register coulomb-social OIDC client on live KeyCape (CSOC-WP-0002-T03)
Public PKCE client on kc.coulomb.social with local and production redirect
URIs. Add register-keycape-client.sh, document env, and harden public-client
token exchange (no secret). Authorize probe verified registered vs reject.
2026-08-09 01:50:51 +02:00
01da195c13 Implement NetKingdom identity shell for coulomb.social (CSOC-WP-0002)
Django scaffold aligned with the business delivery lane: tenant-keyed
Member model without passwords, identity app as sole OIDC/session
boundary, dev-claims login, authenticated /app/ shell, ADR-0001, and
tests. T01/T02/T05/T06 done; OIDC registration, real user-engine HTTP,
flex-auth, and packaging remain open.
2026-08-09 01:45:05 +02:00
6fe263444a Extract authenticated coulomb.social design language via designlang
Session probe lands on /vw_pages (Research). Use main designlang extract
with --cookie-file — pack ignores auth. 39 artifacts under
docs/design-extract; tolerate designlang late summary crash when cores exist.
2026-08-09 01:31:00 +02:00
319dd00465 Add designlang public-shell pack; tighten auth capture checks
Ran authenticated extract against coulomb.social; session metadata
matched anonymous Bubble defaults, so treat docs/design-extract as a
public shell baseline (PROVENANCE.md). Capture script now refuses to
overwrite storage-state.json with thin anonymous sessions.
2026-08-09 01:22:15 +02:00
0bf740017e Add authenticated designlang extract path for coulomb.social
Interactive Playwright session capture (XDG storageState, mode 0600)
plus a designlang pack wrapper that never prints secrets. Document the
intended OpenBao lane tenants/binky/coulomb-social/bubble-member for
later password custody; interactive capture is the default for Bubble.
2026-08-09 01:15:06 +02:00