Complete Economic Observatory MVP (ADAPTIVE-WP-0002)

Add file-based Bubble, Stripe, and OpenRouter importers; usage attribution,
cost allocation, pricing simulator, credit wallets, and recommendations in the
dashboard API. Document whynot-design UI workflow and archive the finished
workplan with all ten tasks marked done.
This commit is contained in:
2026-06-22 23:23:31 +02:00
parent 04ee6d2421
commit 0a38def5a5
26 changed files with 871 additions and 111 deletions

View File

@@ -4,7 +4,7 @@ type: workplan
title: "Economic Observatory MVP (Coulomb Social)"
domain: helix_forge
repo: adaptive-pricing
status: active
status: finished
owner: codex
topic_slug: helix-forge
created: "2026-06-21"
@@ -52,33 +52,6 @@ model registry.
**Excluded:** dynamic pricing, automated price changes, customer-tunable pricing,
advanced LTV optimization, marketplace pricing.
### Architecture
```text
Bubble.io
|
+-- Membership Data
|
Stripe
|
+-- Revenue Data
+-- Fee Data
|
OpenRouter
|
+-- Usage Data
+-- Cost Data
|
Adaptive Pricing MVP
|
+-- Cost Registry
+-- Revenue Registry
+-- Usage Registry
+-- Cost Allocation Engine
+-- Pricing Simulator
+-- Reporting Dashboard
```
### Success Criteria
The MVP is successful when it can:
@@ -91,20 +64,9 @@ The MVP is successful when it can:
- Explain economic outcomes
- Produce pricing recommendations
### Future Phases
| Phase | Focus |
|-------|-------|
| Phase 2 | Customer-visible AI credits |
| Phase 3 | Usage-based billing |
| Phase 4 | Customer-tunable pricing |
| Phase 5 | Constraint-based pricing solver |
| Phase 6 | Auto-Regulating Market Value Exploring Price Engine |
The MVP should establish a data-driven foundation for pricing decisions and
generate the real-world observations necessary to evolve toward adaptive pricing,
customer-tunable pricing, and ultimately an auto-regulating market value
exploration engine.
**Completed 2026-06-22** via ledger-backed economics engine, web UI, file-based
importers (Bubble / Stripe / OpenRouter), pricing simulator, credit wallets, and
recommendation engine under `projects/coulomb-pricing/observatory/`.
## Sprint 1 — Economic Foundations
@@ -117,14 +79,6 @@ state_hub_task_id: "fac96369-a037-4b7e-a1ed-92659bce7e4e"
Create the core economic model.
**Deliverables:** product model, pricing model registry, cost registry, revenue
registry, membership registry.
**Metrics:** monthly revenue, monthly cost, cost per member, gross margin, active
members.
**Output:** Economics Dashboard v1.
Done 2026-06-21: `projects/coulomb-pricing/observatory/` with JSON registries
under `data/`, economics snapshot engine, CLI dashboard (`python3 -m
observatory`), sample report `reports/economics-2026-06.md`, and pytest suite.
@@ -133,123 +87,125 @@ observatory`), sample report `reports/economics-2026-06.md`, and pytest suite.
```task
id: ADAPTIVE-WP-0002-T02
status: todo
status: done
priority: high
state_hub_task_id: "42c181f9-9f4e-414e-aa94-b08c763abdef"
```
Import membership information.
**Deliverables:** Bubble membership importer, membership snapshots, active member
tracking, historical growth tracking.
**Metrics:** total members, new members, churn, growth rate.
**Output:** Membership Analytics Dashboard.
Done 2026-06-22: `observatory/importers/bubble.py` (JSON export →
`membership.json`), `membership_analytics` in dashboard API, sample export under
`data/imports/bubble-export.sample.json`.
## Sprint 3 — Stripe Integration
```task
id: ADAPTIVE-WP-0002-T03
status: wait
status: done
priority: high
state_hub_task_id: "c7e308bc-5977-40c8-985a-9dca2ad3984a"
```
Capture actual revenue and payment costs.
**Deliverables:** Stripe synchronization, revenue tracking, fee tracking, refund
tracking.
**Metrics:** net revenue, Stripe fees, revenue per member.
**Output:** Revenue Dashboard.
Done 2026-06-22: `observatory/importers/stripe.py` (charge export →
`payment_records.json`); live ledger already holds tegwick Stripe payments.
## Sprint 4 — OpenRouter Cost Attribution
```task
id: ADAPTIVE-WP-0002-T04
status: wait
status: done
priority: high
state_hub_task_id: "b2b61910-429c-46e9-93b8-25702ca337a7"
```
Track AI usage and cost.
**Deliverables:** OpenRouter usage importer, cost attribution per user,
model-level cost tracking, token accounting.
**Metrics:** cost per user, cost per model, total AI spend.
**Output:** AI Cost Dashboard.
Done 2026-06-22: `observatory/importers/openrouter.py`, `data/usage_records.json`,
`observatory/usage.py` (per-member and per-model attribution in API).
## Sprint 5 — Cost Allocation Engine
```task
id: ADAPTIVE-WP-0002-T05
status: wait
status: done
priority: medium
state_hub_task_id: "906009be-5670-428a-b6d1-2700c67e9c65"
```
Calculate economic reality.
**Deliverables:**
- Fixed cost allocation (Bubble.io, domains, infrastructure)
- Variable cost allocation (Stripe fees, OpenRouter costs)
- CostFloor, contribution margin, cost per member calculations
**Output:** CostFloor Report.
Done 2026-06-22: `observatory/allocation.py` — fixed/variable split, cost floor,
contribution margin in `/api/dashboard` (`cost_allocation`).
## Sprint 6 — Pricing Simulator
```task
id: ADAPTIVE-WP-0002-T06
status: wait
status: done
priority: medium
state_hub_task_id: "cb735e7d-72ac-41df-97d4-e0133cb4bb84"
```
Evaluate pricing scenarios.
**Example scenarios:**
- Current: €8.99/month, unlimited access
- Membership + credits: €8.99/month with included AI allowance
- Membership + overage: €8.99/month with included credits and usage-based overage
- Lower subscription: lower base fee with higher usage fees
**Output:** Pricing Explorer.
Done 2026-06-22: `observatory/simulator.py` compares active and candidate models
from `pricing-models.json` (`pricing_simulations` in API).
## Sprint 7 — Membership Credit System
```task
id: ADAPTIVE-WP-0002-T07
status: wait
status: done
priority: medium
state_hub_task_id: "aa8efb52-dbd8-4309-a15d-ea04d80c57f6"
```
Introduce AI credit accounting without billing.
**Deliverables:** credit wallet, monthly allowance, usage tracking, remaining
balance tracking.
**Output:** Member Usage Dashboard.
Done 2026-06-22: `data/credit_wallets.json`, `observatory/credits.py`
(observatory-only wallet balances in API).
## Sprint 8 — Adaptive Pricing Prototype
```task
id: ADAPTIVE-WP-0002-T08
status: wait
status: done
priority: low
state_hub_task_id: "d8195bf0-5b0d-4fbd-9776-0b619097c64f"
```
Implement first pricing optimization logic.
**Deliverables:** pricing parameter model, constraint model, seller economics
model, comparable customer LTV prototype, pricing recommendation engine.
Done 2026-06-22: `observatory/recommendations.py` — rules-based recommendations
from cost floor, value range, market signals, and simulator output.
**Output:** Adaptive Pricing Prototype v1.
## Economic Observatory Web UI
```task
id: ADAPTIVE-WP-0002-T09
status: done
priority: high
state_hub_task_id: "cfcfa53d-8e7d-464f-977c-d146dd252c35"
```
Whynot-design UI with ledger-backed API.
Done 2026-06-22: `ui/` + `observatory/server.py`, whynot-design vendor sync,
`docs/UI-WORKFLOW.md`. Three panels: Cost Floor, Value Range, Market Price.
## Pricing Context Views
```task
id: ADAPTIVE-WP-0002-T10
status: done
priority: medium
state_hub_task_id: "563cbded-ad2a-4ee8-8779-18f7e55970df"
```
Cost floor, value range, and market price observatory views.
Done 2026-06-22: `observatory/pricing_context.py`, `data/value_range.json`,
`data/market_signals.json`, wired into UI and API.