← AstroMatrix Reports — all pages AstroMatrix Orientation Map Orientation 2026-09-11 4 repos · 3 lanes · 147 issues Where everything is, and where it's going Nothing here is new information — it's the existing docs, arranged. The confusion has one cause: three separate tracking systems run in parallel, each with its own source of truth, and the roadmap lives in a fourth place that isn't called a roadmap. Read §1 and §3 and you have the whole picture. §1 The three lanes Every doc in the project belongs to exactly one of these. They are deliberately separate — a technical defect, a thing to build, and a customer who didn't get an answer are different jobs with different owners. Mixing them is what makes the folder look chaotic. Fires Technical defects "What's broken, and has it actually been fixed?" Source of truth docs/SUPPORT-fire-manager-report-2026-08-26.md 147 numbered issues. Index table at the top, detail sections below. Derived — never hand-edit SUPPORT-fire-NODE.md SUPPORT-fire-FLUTTER.md SUPPORT-fire-PROCESS.md Regenerated from the master. Fix the master, regenerate. How to work it SUPPORT-fire-manager-PROCEDURE.md Product What to build next "What should we do, in what order, and why that order?" The forward list docs/product/FEATURE-LIST.md Ranked items + every direct user request, weighted by repeat count. The actual roadmap docs/product/competitive-position-2026-09.md §7 The 3-horizon plan. This is the roadmap — it just isn't named like one. Index for the folder docs/product/README.md Support The inbox "Did we drop a customer, and what are they telling us?" Queue & volume docs/SUPPORT-status-report.md Updated in place — never a new file per session. Non-technical complaints docs/SUPPORT-ux-experience-issues.md Navigation, moved features, tone. Not bugs — deliberately separate. How to work it SUPPORT-manager-procedure.md Two more workstreams that aren't any of the above Legacy migration Porting the .NET API onto Node. A real, active workstream that was missing from the docs index entirely until today. docs/MIGRATION-*.md — 6 docs Infra & disaster recovery Windows/Ubuntu failover phases, incident history, open security items. docs/INFRA-resilience-roadmap.md The numbers baseline Cross-cutting, and the one to read before quoting any figure. Part 1 is a list of numbers that were previously wrong and are still repeated elsewhere. docs/FINDINGS-2026-09-11.md §2 Which repo holds what The product lane spans two repositories, which is the second-biggest source of "I can't find it". Strategy docs live in the Flutter repo; feature and competitive docs live in the Node repo. | Repo | Holds | State right now | astromatrix-nodejs | Backend. All fire, support, product, migration and infra docs. | 4 commits unpushed | astromatrix-flutter | The app. The strategy layer: q4-growth-plan, strategy-reference, built-but-disconnected, acquisition-channels, product-strategy, user-knowledge-audit | 3 files uncommitted — two of them are Horizon 0 work | astromatrix-public | The website. Store/legal pages. | 5 files uncommitted, incl. the Terms fix | astromatrix-engine | Go calculation engine. | Clean | astromatrix | Legacy .NET. Only edit when Node genuinely can't do the fix. | Being migrated away from §3 The roadmap From competitive-position-2026-09.md §7. Three horizons, each item naming the asset it builds on. The numbering is a real sequence — Horizon 0 is a precondition for pricing anything in Horizon 1, not a warm-up. Horizon 0 This month No new systems. Copy, prices and links only. 0.1Replace the store's plan copy. Delete "50GB storage", "Advanced analytics", "Priority 24/7 support". One file — products_config.json. The median buyer decides on day zero, on this screen, and it currently describes a file-hosting company. 0.2Fix the lifetime SKU — reprice to 3–4× annual, or retire it. 41% of purchases. The single largest structural cap on LTV. No existing user loses anything. 0.3Delete the two false upgrade bullets. "Created by real astrologers" is free-tier-true; "hundreds of pages" is no longer safely true. 0.4Link the store, and give reports a route. Reports have no route at all — modal-only inside 6 screens. The store has one inbound link. A funnel whose exit is unreachable can't be priced or measured. 0.5Decide the language gate before pushing ISSUE-39. Shipping ungated permanently forecloses charging for localisation. Horizon 1 The quarter Relationships and time-to-value. 1.1–1.3 are the core bet. 1.1Relationship transits — "what's happening between you two this week". The angle nobody else can match. The engine already treats composite as natal; not an engine build. 1.2A one-word verdict on every pair, backed by the 12 facets underneath. We compute more and conclude less. A dashboard can't be retold; one word gets screenshotted. 1.3Relationship types — friend, family, colleague, partner. 9 of 12 facets are already relationship-neutral. Only the packaging is romantic. 1.4Invite-from-chart flow. 155,361 accounts already hold another person's chart. Largest dormant asset in the product. 1.5Shareable pair card — "Us", not "me". We share only self-charts today. 1.6Fix the cold-arrival landing. 93.2% of share-link visitors bounce under 10s. Do this before 1.5 sends more traffic. 1.7Public-figures database. The fields exist and hold zero rows. Cheapest viral surface in the category; a content job, not engineering. 1.8Promote the synastry wheel above Progressed in the chart dropdown. A practitioner chart currently outranks the one chart a normal person came for. 1.9Surface the comparison to the 72.2% who never make one. Pre-filter and cap — it's O(n²). 1.10Resolve MessagesScreen — foundation or delete. Don't build a second messaging surface beside an unreachable one. 1.11Contextual reading button on the relationship surface. Cheapest link in the app. Also ranked #1 on the FEATURE-LIST. 1.12Refresh the video library. Owned channel, stale content. Production, not engineering. 1.13Per-user event measurement, properly scoped. Blocks all pricing work — and it is not a one-liner. See §5. Horizon 2 The year New models. 2.1The Coach / Oracle session layer. Full spec already written. The answer to our only real competitive weakness. 2.2The Oracle as a shareable weekly card. 2.3Practitioner marketplace. Largest revenue model in the category, built on an asset competitors can't replicate: 4,011 Astrologers converting at 54%. 2.4Audio — contingent on a hire. The stack already ships. Don't schedule until 1.7 says whether presented content lands. The one sequencing rule Fix the revenue shape and ship additive value before subtracting anything. There is no case for scoping a new limit until 0.1–0.4 have shipped and been measured — until then we don't know what this product converts at when its entrance is findable and its paywall describes the actual product. The store rating already moved ~3.78 → ~3.44 on a change that added something. §4 The one number the roadmap rests on 460,694 accounts; 5.37% have ever paid. One variable dominates everything else, monotonically — how many charts the account holds. Visit frequency spans only ~2.5×, and behavioural segment membership collapses to ~1.00× once charts-held is controlled for. Ever-paid rate by charts held Verified against production, 2026-09-07. 460,694 accounts. 1 chart 1.58% · 300,710 2–3 5.92% · 102,069 4–7 13.94% · 37,709 8–15 34.29% · 11,440 16+ 54.24% · 8,766 A 34× spread, and it points at two different jobs. The 1 → 2 chart step (1.58% → 5.92%) is the largest lever over the largest population — 300,710 accounts. Separately, ~11,500 accounts hold 8+ charts and have never paid: the highest-intent unconverted pool in the base. That is a conversion play, not an ARPU play — an earlier brief said the segment was near-saturated, and that was the inflated number. §5 State of the board 33 Open Not started. Includes chart-accuracy reports and a security item. 53 In progress / partial Several are "fixed, committed, not pushed" — done in the tree, not live. 60 Resolved Plus one waiting on an external reply (ISSUE-4). 149 Next free issue № Re-check this immediately before filing — concurrent sessions move it. Work that exists but isn't live This is the gap most worth closing this week, because several items are already written. Four commits sit unpushed in astromatrix-nodejs — including the ISSUE-143 tarot recovery (31,507 rows, 8,866 users unblocked) and the ISSUE-144 account-deletion data purge, both compliance-relevant. The Flutter tree holds uncommitted edits to products_config.json and gated_content_widget.dart — those are Horizon 0.1 and 0.3. The website tree holds the Terms of Use fix (ISSUE-148), which gates the pending store-metadata submission. Note that pushing auto-deploys and restarts production here, so these are decisions, not chores. §6 Traps — things the docs still get wrong These are the reasons two documents can disagree and both look authoritative. Each is known and written down somewhere; collected here so you don't have to rediscover them. 01 Everything in docs/analytics/ is pre-correction Those files still quote conversion inflated ~2.8× and volumes understated 14–44×, plus a retracted "tarot converts worst" framing. five-user-modes.md was corrected; the analytics files were not. FINDINGS-2026-09-11.md Part 1 lists every number to un-believe. 02 Sample levels are not fleet levels The usage-stats sample covers 16.6% of accounts and skews engaged. Use it to compare segments; never quote a level from it. node scripts/_analytics.js verify re-derives the headline numbers from production in ~2.5 minutes. 03 The reach percentages are due a re-pull Reports 7.8%, store 0.2%, harmonizer 2.8% — all quoted throughout the FEATURE-LIST, and all exactly the kind of level that moved. The ISSUE-77 instrumentation fix shipped on both platforms 2026-09-09, so a clean post-09-09 measurement is now possible and hasn't been taken. 04 Per-user measurement is mispriced as trivial It's named as the blocker for most of the monetisation work, and the original "one-liner" estimate was wrong. sendCounter writes to Prometheus — aggregate-only. A uid label across 460,694 accounts is a cardinality explosion. This is an event-store design task. 05 Usage of a hidden feature is not a measure of demand Reports have no route; the harmonizer has one link; astrocartography's route isn't registered; 8,352 journal prompts were built and never surfaced. Low numbers on any of these mean nothing until they're reachable. §7 Where to start FINDINGS-2026-09-11.mdTwenty minutes. The verified baseline and the list of retracted numbers. Everything else assumes it. competitive-position-2026-09.md §7The roadmap itself — the three horizons above, with the reasoning attached to each item. FEATURE-LIST.mdThe ranked list and, in the second half, every direct user request with its repeat count. This is where a new ask gets filed. The fire report's index tableJust the table at the top — 147 rows with a status each. Skip the detail sections unless a specific issue matters. docs/README.md and docs/product/README.mdThe two folder indexes. Both were stale and were brought current today — every file on disk now appears in one of them. Fixed while assembling this, 2026-09-11: two different issues had both been filed as ISSUE-144 — the account-deletion data remnants, and the 404ing Terms of Use URL. The second was renumbered to ISSUE-148 across the master and derived docs, since ISSUE-144 is anchored in routes/user.js and in commit 1823e6e. The two folder indexes were also missing 12 files between them — FINDINGS, both role-procedure docs, the entire 6-doc MIGRATION family, and the three product docs written today. All now listed. Not covered here: this is a map, not a review. It takes each doc's own claims at face value except where a claim was already contradicted by another doc in the set.