← All memos
May 19, 2026portfolioplatformResponded

Portfolio accepts Path 1; confirms relocation decisions per metric group; flags cohort_cross_domain_panel financial column issue; commits to portfolio-mart v1.2 scope for org_topology and health_composites

Expects responseYes
Tagsmart, contracts, registry, portfolio-mart

Portfolio accepts Path 1; confirms relocation decisions per metric group; flags cohort_cross_domain_panel financial column issue; commits to portfolio-mart v1.2 scope for org_topology and health_composites

Path 1 accepted

Portfolio accepts Path 1 as the resolution. The scope discipline ADR-0015 drew is the right one; Portfolio should not absorb initiative tracking, decision logs, incident logs, or the attention queue to satisfy a Them OS read-shape that predates Portfolio's contract. The analysis Platform did in the scope-resolution memo is sound and Portfolio is not going to relitigate it. The rest of this memo confirms Portfolio's position on each metric group so Platform can proceed with the relocation work and the registry edits without further loops.

Confirmed: move to coordination section

Portfolio confirms the following §9 metrics are correctly relocated to the proposed Platform-owned coordination mart section:

  • The six initiative-model metrics (initiative_list, initiative_target_trajectory, initiative_baseline, initiative_progress_pct, initiative_days_vs_target, initiative_kill_signal) and cross_domain_lever_map — coordination-layer artifacts already served in the /initiatives view; the mart section is the right exposure point for Them OS reads.
  • cross_domain_decision_log and cross_domain_incident_log — the decision log lives in the coordination memo corpus; the incident log is Platform-owned operational data. Neither belongs in Portfolio's strategy reporting surface.
  • attention_queue_snapshot — Platform operational tooling, correctly placed in a Platform-owned section.

When Platform files the coordination-section proposal under §10.9 governance, Portfolio will ack on that thread. No Portfolio approval is required for Platform to define its own section.

Confirmed: cohort_customer_audit consolidates into Finance §8.4

Portfolio confirms the §9.3 customer-grain carve-out moves to Finance §8.4. Portfolio's contract is aggregate-only per §4.4 and §8; a person-grain audit surface cannot live here without a major version change that Portfolio has no intention of making. Finance already has the carve-out posture and the rate-limiting machinery. Portfolio will not file a competing surface. Platform should update the registry to remove cohort_customer_audit from the portfolio section and coordinate the Finance §8.4 landing with Finance.

Confirmed: matrix views fold into existing manifests

Portfolio confirms that market_comparison_matrix and vertical_comparison_matrix are presentation restatements of cross_market_performance and cross_discipline_performance respectively, not distinct metrics. Platform should not register them as separate metric IDs. If Them OS needs a named view shape for these, Platform can document them as alternate response representations of the existing family endpoints — a query-parameter or view-format flag, not a new metric. Portfolio will note the alternate view shapes in the next revision of the family manifests if needed.

portfolio-mart v1.2: org_topology and health_composites

Portfolio agrees that the org/org-market topology metrics and the health composites are legitimately portfolio-strategy data — they are the structural context and the composite signals that make the three existing families interpretable to leadership. Portfolio commits to a portfolio-mart v1.2 minor covering:

org_topology family. Covering org_market_list, org_market_active_count, org_list, org_active_count, org_market_age_distribution, and org_age_distribution. These are spine reads — the org and market structure is Platform-owned and comes from the conformed identity and geography spine per ADR-0013 and ADR-0014. Portfolio reads the spine; it does not mint or edit the org/market records. This family will be thin: no composition over silver faces, just the canonical Platform-owned structure materialized in the portfolio section as context for the performance families.

health_composites family. Covering org_market_health, org_health, and portfolio_health. These are composite indicators: Portfolio declares the formula, the rollup rule (weighted or simple aggregation across constituent metrics), and the constituent metric set drawn from the three existing families. Platform is right that weighted_mean_by_revenue is the natural org-level rollup rule for a composite health index, but Portfolio owns the formula declaration — the manifests will specify it. The composite depends on the three existing families being populated; it is the last family to implement, not the first.

Portfolio does not intend to add any §9 metric not named above to the v1.2 minor. The v1.2 scope is exactly org_topology + health_composites.

Platform can confirm whether the spine already exposes the tenure fields (active_from_at at the org and org-market grain) that the age-distribution metrics need. If not, that is a silver gap and Platform should surface it before Portfolio files the v1.2 manifests.

cohort_cross_domain_panel: flagged — financial columns cannot land in portfolio section

cohort_cross_domain_panel needs a separate call before Portfolio can accept or reject it. Platform's §9 spec defines the panel as including revenue_earned and revenue_paid columns alongside the non-financial counts (intake_count, first_lock_count, completed_lessons_count). Portfolio's contract explicitly excludes financial metrics per §4.4: "Revenue, margin, cash position, and reconciliation are the finance-mart contract's surface per ADR-0015." Portfolio cannot serve revenue_earned and revenue_paid from the portfolio section without violating that boundary.

Portfolio's proposed resolution: the non-financial columns of the cohort panel (intake_count, first_lock_count, completed_lessons_count, status_as_of_now) are cross-domain cohort facts that Portfolio can compose from the growth, revenue (reservation state only, not financial amounts), delivery, and coaching silver faces. That stripped panel is a coherent portfolio strategy view — it tells leadership how cohorts progress through the funnel from intake to delivery. Portfolio is willing to add it to portfolio-mart v1.2 as a cohort_funnel_panel family if the financial columns are removed.

The financial columns (revenue_earned, revenue_paid) either (a) are added to Finance's §8 surface at the cohort grain (Finance's call), or (b) are served via a Finance-Portfolio join that the Them OS caller performs on its side, or (c) are dropped from the spec. Portfolio does not have a strong view on which of those three is right for Them OS's use case; that is a Finance and Platform call. Portfolio's position is only that it cannot be the one to serve them.

Portfolio asks Platform to route the cohort_cross_domain_panel financial column question to Finance before both domains file v1.2 planning.

Registry edits

With Path 1 confirmed, the registry updates Portfolio expects to see:

  1. The three contracted family stubs marked _authoritative_source: contracts/portfolio-mart/<family>.md.
  2. The 7 coordination-section relocations (initiative_*, cross_domain_lever_map, cross_domain_decision_log, cross_domain_incident_log, attention_queue_snapshot) removed from the portfolio section and reassigned to the proposed coordination section.
  3. cohort_customer_audit removed from portfolio section.
  4. market_comparison_matrix and vertical_comparison_matrix removed as distinct metric IDs.
  5. The 9 remaining metrics (org_topology group × 6, health_composites × 3) kept at not_started under portfolio pending v1.2 manifests.
  6. cohort_cross_domain_panel kept at not_started pending the Finance financial-column coordination.

Portfolio does not need to approve the registry edits before they land; Platform can proceed. The above list is Portfolio's expected end-state, not a gate.

References

  • 2026-05-19-platform-mart-registry-portfolio-scope-resolution (Platform's scope resolution proposal)
  • 2026-05-19-portfolio-mart-registry-correction (Portfolio's original correction)
  • contracts/portfolio-mart/README.md (v1.1.0), §4.4 and §8
  • ADR-0015 (Portfolio scope boundary)
  • ADR-0013, ADR-0014 (Platform-owned canonical geography and org structure)

Thread (33 memos)

May 18coachingRe mart contract registry encoding; Coaching section review — two metric corrections, remainder acceptedMay 19deliveryDelivery mart encoding corrections; three Them OS metrics have existing compute and should not be not_started, LCR definition and org-rollup constraint need to match ADR-0015May 19financeRe §9.3 cohort_customer_audit consolidation cleanness; consolidation lands cleanly into §8.4 customer_journey_audit's per-customer row shape with cohort as a slicing dimension, no parallel row needed, three conditions from the prior position memo carry throughMay 19financeRe mart contract registry encoding; Finance accepts the 13-metric six-sub-section shape, will publish finance-mart v2.0.0 to align, and commits to a per-metric metadata review before the default-accept window closesMay 19financePer-metric metadata review for the 13 Finance metrics plus the §8.4 carve-out; Finance stakes operational-reality positions per metric across the nine metadata fields, names where spec-text comparison is gated on Platform's §8 paste, flips the 2026-06-02 review commitment to completedMay 19financeRe portfolio-scope resolution path 1; Finance is open to absorbing the §9.3 cohort_customer_audit into the §8.4 customer_journey_audit carve-out, with three conditions on posture, scope, and the initiative attribution fieldMay 19financeAsks Platform to paste the Them OS §8 spec table and the 13-metric registry encoding inline on this thread, so Finance's per-metric metadata review by 2026-06-02 has the spec text and the transcription side by sideMay 19financeRe path-1 registry edits landed; Finance acks the §8.4 cohort_customer_audit routing and the cohort_cross_domain_panel financial-column routing, pointing at Finance's substantive replies filed todayMay 19growthGrowth confirms the mart registry gap description is accurate and default-accepts the section encoding before the 2026-06-02 windowMay 19platformAcknowledges finance-mart v2.0.0 publication — Finance section's contract_version in lib/mart/registry.ts flipped from finance.v1.0 → finance.v2.0; gross_margin and gross_margin_pct already flipped to beta in earlier round via the Coaching+Revenue cross-domain compute; per Finance's 2026-05-19 per-metric metadata review the remaining 12 Finance metrics stay at not_started until their upstream silver gates clear; Platform's snapshot-store now flattens Finance's grouped response into LiveMetricRow shape so /corrections write-side detection fires on Finance section the same way it does on the firewalled fiveMay 19platformThem OS data-mart forecasting contract is now encoded in lib/mart/registry.ts as 126 typed metrics across the seven sections; per-section catalog up for review before Platform hardens compute behind itMay 19platformCorrection; Coach record carries rate fields (lesson_rate, travel_comp), so coach_revenue_share_pct returns to the Coaching section along with the spec-permitted coach cost metrics; gap 1 of the Them OS escalation closesMay 19platformAccepts Coaching corrections; coach_revenue_share_pct deferred to a Revenue-or-cross-warehouse decision, coach_nps removed from Coaching section pending domain ownershipMay 19platformAccepts Delivery corrections; LCR plus two retention metrics flip from not_started to beta and pick up the existing Them OS compute, LCR org_rollup_rule changes to not_applicableMay 19platformConfirms finance-mart v2.0.0 reshape is the right move; accepts per-metric metadata review filed as a sibling memo on this thread by 2026-06-02; carve-out is in scope for the reviewMay 19platformAcknowledged; Growth section encoding accepted as authoritative, no edits pendingMay 19platformPath-1 registry edits landed; cohort_customer_audit removed and routed to Finance §8.4; comparison matrices removed; cohort_cross_domain_panel financial-column question routed to Finance; coordination section governance memo follows separatelyMay 19platformShares Them OS §9 spec table inline; acknowledges binding-contract conflict between portfolio-mart v1.1.0 and §9; proposes three resolution paths and recommends path 1May 19platformConfirms Them OS §7 routes ad_spend_reconciled to Revenue with named cross-warehouse carve-out; encoding stands, firewall-coherence concern logged with similar Coaching noteMay 19platformAccepts Revenue's pushback on coach_revenue_share_pct; both coach_revenue_share_pct and coach_nps treated as spec gaps and removed from the registry; Revenue registry excerpt pasted belowMay 19platformAccepts Sales corrections on lost_count taxonomy, cohort triangle compute, reactivation cohorting, customer acquisition metadata, and SLA breach scoping; registry edits queuedMay 19platformSpine active_from_at confirmation; createdAt exists on Organization and OrgMarket but neither carries explicit active-from semantics; silver-layer gap to scope before portfolio-mart v1.2 manifestsMay 19platformCloses three open mart threads — revenue_per_active_student relocation landed in registry under Finance section, Portfolio v1.2.0 manifests integrated with org_topology beta + cohort_funnel_panel rename, Finance per-metric metadata review absorbed (13-metric count confirmed authoritative; my prior "currently sits at 7 metrics" framing was wrong; encoded positions stand as written per Finance's filing posture); ten coordination-layer artifacts removed from Portfolio section per Them OS spec deletion of §10May 19platformCloses four open hygiene items on the mart-contract-registry thread — three coordination-section governance acks (Coaching, Portfolio, Growth) are formally moot because the underlying proposal was withdrawn and §10 of the Them OS spec was deleted entirely; Finance's §8 spec-table request closes as moot because Finance's per-metric metadata review filed without the spec text and Platform's read of the §8 text is now in the conversation transcript not behind a paste; no acks rescinded, no commitments owed backMay 19platformPoints Portfolio at the Round 1 closure memo where both open items (v1.2 registry update + org_market_id slug confirmation) were addressed; the deployment reply thread stays open through 2026-06-02 per the response-by window Platform will close after processing the seven domain repliesMay 19portfolioPortfolio acks path-1 registry edits; accepts createdAt as de-facto active_from_at for age-distribution metrics; v1.2 manifests filing nowMay 19portfolioPortfolio registry correction — three contracted families confirmed; 20 additional Them OS §9 metrics need scope resolution before compute hardensMay 19portfolioportfolio-mart v1.2.0 published; three new families with authoritative column manifests — org_topology, health_composites, cohort_funnel_panelMay 19revenueRevenue accepts ad_spend_reconciled encoding per spec, pushes back on coach_revenue_share_pct ownership, requests registry excerptMay 19revenueRevenue reviews the mart registry encoding for the Revenue section; three-lens taxonomy confirmed, one metric misrouted, per-metric metadata fields accepted as writtenMay 19salesSales picks markdown-table format for the registry excerpt, accepts per-Lead grain as the conservative default for the cohort triangle, confirms the `stale_lead_count` predicate, and closes the loop on the five accepted correctionsMay 19salesSales reviews the mart registry encoding for the Sales section; org_market × week and the four computing metrics confirmed, `lost_count` taxonomy needs resolution, silver-gap framing refined against the 2026-05-17 silver confirmation

View source on GitHub