peopleanalyst

← Portfolio

Performixperformix.app

↻ brief 22d ago
Performix landing — the persona × situation chooser (“see it in your situation”) over a live CAMS binding-constraint diagnosis.

Performix landing — the persona × situation chooser (“see it in your situation”) over a live CAMS binding-constraint diagnosis.

The missing layer for managing performance — Performix brings measurement science to leadership decisions, controlling the conditions that drive a team's performance, not the people (ERP runs operations, HRIS runs payroll; nothing runs performance — Performix is the system that does). The mechanism: scores teams on Capability / Alignment / Motivation / Support (CAMS), names the binding constraint, and renders one accountable action per team. Psychometric-first: the diagnostic engine is real measurement, not a language model. The foundation underneath — constructs, measures, evidence weights — is built by AI-assisted ingest of peer-reviewed I/O psychology and organizational behavior literature, which is the precondition for the product, not a gloss on top of it; AI is a consumer of that foundation, never the engine. Same instrument, three doors: sales-performance variance, AI-transformation readiness, post-acquisition integration. MVP 1 live; pre-chasm.

Microstory
Customer
Leaders accountable for team performance across many contexts — the live beachheads (sales-performance variance, AI-transformation readiness, post-acquisition integration) plus a growing **use-case catalog** (R&D/engineering, customer service, and the O*NET walk-down: *"your context is #not-the-same — so we researched it"*), and individual people-leaders who want coaching but bounce off "performance analytics" — all on one instrument.
Problem · external
Performance varies between teams and across time; the dashboards, engagement scores, and HRIS records on hand do not name *what is blocking this team right now*, so leaders act on the wrong thing or do not act at all.
Problem · internal
Employees can see the social, managerial, and structural conditions blocking the work better than any external instrument can — and feel that what they could safely say would change nothing, so they stay quiet, and the signal that would have moved the needle never reaches the leader who could act on it.
Problem · philosophical
Capability alone does not produce realized performance. Alignment, motivation, and support are conjunctive conditions; averaging them into a single sentiment score or a laundry-list of best-practices is how organizations spend years addressing the dimension that was already strongest.
Guide
Performix is the **missing layer for managing performance** — it brings *measurement science to leadership decisions*, and controls the *conditions* of performance (the CAMS environment around a team), not the people. ERP runs operations and HRIS runs payroll; nothing runs performance — Performix is the system that does. The **mechanism** is a protected-feedback **diagnostic** that scores teams on Capability / Alignment / Motivation / Support (CAMS) and names the **one binding constraint** — then follows through instead of stopping at the finding. When the constraint is **Capability**, it opens the **assessment program (the C of CAMS)**: whether the team *covers the role's requirement basket* — team-Capability as a portfolio property (who covers what, where the gaps and single-points-of-failure are), not an average of résumés — plus the **develop-in-place** moves to close each gap (**Get2Great**). It runs continuously between full diagnostics via a **pulse tier**, packages per-leader as a **Coaching Door** (self-vs-team behavioral shadow + grounded coaching), and fields items **adaptively** (IRT/CAT — half the questions, same precision). The diagnostic is precomputed from a **research substrate of real psychometrics** — IRT adaptive selection, MaxDiff with balanced incomplete block designs, Monte Carlo with EVPI/EVSI, Wilson confidence intervals — **not generated on demand from a language model**; psychometric-first, with AI a first-class *consumer* of the substrate (schema mapping, evidence extraction, item-candidate generation, ETL), never the engine. Everything composes from vendored typed contracts of the People Analytics Toolbox (+ principia research priors, canonicai job schema), never re-implemented.
Plan
(1) Pick a team and answer protected CAMS items — a full diagnostic, a light recurring **pulse**, or an **adaptive** session; (2) Performix names the binding constraint — the dimension that's starving, the safe themes, the published-evidence behind it, one accountable action; (3) when it's Capability, see the team's **basket coverage** + gaps + single-points-of-failure and the **develop-or-hire** moves with projected lift; (4) act on one constraint, watch the pulse, re-measure.
Success
Leadership stops solving the wrong problem — and gets a practical follow-through, not just "Capability is your gap" but exactly where the team is thin and what to do about it. Each team carries a current diagnosis with one accountable action; longitudinal pulse + re-measure tells the leader whether the move actually closed the constraint.
Failure avoided
Another engagement survey that averages everything into uselessness, another dashboard that shows ten metrics and recommends nothing, another AI tool that scores individuals and creates retaliation risk. Protected feedback as substrate, not setting, is the guardrail.
The problem

Organizations cannot improve what employees cannot safely say. Performance is not produced by capability alone; capability becomes realized performance only when alignment, motivation, and support are also present. Most products miss this — they treat performance data as a transaction record (HRIS posture) or a dashboard (BI posture) or a sentiment score (engagement-survey posture). None of those instruments the question that actually matters: what is blocking team performance right now, and what is one accountable action that would unblock it? The richer signal — protected, comparative, longitudinal, distribution-aware, small-N-honest, mechanism-grounded — gets averaged into uselessness or lost in privacy theater. The standard alternative is worse: ship a fixed laundry-list survey that always recommends the same flavor of intervention regardless of which condition is actually starving the system.

What I built

MVP 1 — Protected Team Performance Diagnostic — live. A manager picks a team, answers a small set of protected items selected adaptively from the four CAMS dimensions, and the system renders one binding-constraint card per team: which dimension is starving, the safe comment themes, the recommended action, the follow-up pulse plan. Eight capabilities staged: protected-feedback (the min-N + redaction primitive every other capability passes through), survey-collector-adapter, segmentation-adapter, cams-diagnostic, performance-science-library (cited findings backing every evidence pill), insight-player (the user's home), action-loop, and job-spec-authoring (the C-dimension precondition: capability cannot be scored against generic competence, only against the specific basket of work). CAMS canonical spec, subconstruct boundaries, binding-constraint rule, and code contract live in `docs/CAMS.md`. Underneath: a precompute-and-playback architecture — metrics are calculated upstream by segment and stored as first-class Insight / InsightChart / Smart List records; the player retrieves and replays, never re-computes at render. A separate marketing surface (`performix-site`, live at performix.app) carries the three beachhead doors; the in-app product surface (this repo) carries the diagnostic and the player. Safe AI Insight Interpreter sits at the interpretation layer, never the headline — summarizes patterns, drafts leadership communications, flags weak evidence, respects min-N and role-based visibility. Consumer of the People Analytics Toolbox over typed Zod contracts (Reincarnation, data-anonymizer, segmentation-studio, calculus, preference-modeler) and of CanonicAI's `job_family_agent` for job-spec authoring; first external MCP consumer of the toolbox as of 2026-05-11 (PFX-30).

What's novel
  • 01AI is the precondition for the foundation, not a gloss on top of the product. Pre-LLM you could not economically read, extract, and structure the I/O psychology, organizational behavior, and management literature at scale; that synthesis is what builds the constructs, validated measures, and evidence weights underneath every diagnostic. The honest claim is the inverse of most category copy: the foundation is the product; AI made the foundation tractable. Crucially, AI is the *consumer* of that foundation, never the diagnostic engine — the engine itself is real psychometrics (IRT adaptive selection, MaxDiff with balanced incomplete block designs, Monte Carlo with EVPI/EVSI, Wilson confidence intervals), because a language model cannot measure whether a team's binding constraint is Capability or Alignment. Every evidence pill in the player traces back through Source → Finding → Construct → Survey Item → Score → Insight → Recommendation.
  • 02A system of learning, not a questionnaire. The diagnostic starts at the minimum load-bearing instrument (CAMS, four dimensions, a small adaptive set of items), then probabilistically narrows what to ask next based on what the team's responses so far have revealed. Each potential deeper analytic track — confirming job specs to score capability against the right rubric, escalating to a sub-construct of Support — is gated by Value-of-Information: roughly, expected information gain × value of the underlying performance × the gap closeable by the new measurement, weighed against the cost of asking. Differentiates structurally from one-shot survey tools that always recommend the same flavor of thing regardless of what they have already heard.
  • 03Protected feedback as a foundational primitive, not a privacy setting. Min-N enforcement, small-cell suppression, comment redaction, identity-risk scoring, role-based visibility, deterministic HMAC tokenization, and safe aggregation all live in the gate every Insight passes through before it reaches storage. Below the floor, the answer is blocked — not averaged into uselessness. The player never has access to anything that has not already passed the gate.
  • 04CAMS as the binding-constraint diagnostic — not a dashboard of metrics. Capability / Alignment / Motivation / Support are conjunctive; whichever is lowest is the constraint; that is what to act on. The output is one card per team naming the dimension that is currently starving the system, with a recommended action and a follow-up pulse against the same items. Capability alone never produces realized performance.
  • 05One primitive, three uses, for embedded feedback. A single `FeedbackInstrument` widget rates a doc section (corpus quality), rates a team on a CAMS statement, and rates an intervention's fit (action-loop follow-up). No separate survey-form routes anywhere in the product; feedback is inherent to the documents the user is already working with, and the widget stays mounted with the picked choice highlighted after answering.
  • 06Precompute-and-playback architecture, not BI. Insights, InsightCharts, and Smart Lists are first-class records computed once on a schedule and stored; the player and library retrieve and replay; nothing recomputes at render. The framing is musical — the iTunes of analytics — with the player as the user's home and the library as the secondary catalog. Where any surface starts computing metrics in response to a user request, that is a bug.
  • 07Consumer of the People Analytics Toolbox over typed contracts. Performix vendors only the Zod schemas and endpoint registries for Reincarnation (adaptive psychometric engine), data-anonymizer (suppression gate), segmentation-studio (HRIS canonical-field normalization), calculus (small-N enrichment), preference-modeler (response collection), and CanonicAI's `job_family_agent` (universal job schema). The algorithms stay where they live; Performix swaps a mock adapter for an HTTP / MCP adapter via env-var flip with no UI code change. First-of-fleet test of the foundation-not-product positioning the toolbox is built around.
  • 08Concierge above a store, the cross-over tier. Performix is to the People Analytics Toolbox what AnyComp.AI is to the Compensation Toolbox — the executive-oriented, run-it-for-you product that categorically crosses over the deconstructed professional toolbox. The toolbox is the kit for the people-analytics professional, deconstructed into micro-services; Performix is the executive insight, delivered as a finished diagnostic rather than parts to assemble.
  • 09Same instrument, three doors. Sales-performance variance for CROs / VP Sales / RevOps / PE operating partners; AI-transformation readiness for Chief AI Officers / COOs / CHROs / Chief Transformation Officers; post-acquisition integration for Chief Integration Officers / PE operating partners / corp dev. The underlying product is identical across all three beachheads; only the front-door message, the populations sampled, and the comparative cuts in the executive briefing change. The engagement-buyer counterpart of these same three beachheads is described on the consulting page.
Recent ships
  1. 2026-06-15**The CAMS diagnostic runs REAL psychometrics in prod (PFX-7 + PFX-30 confirmed):** /diagnose resolves the live toolbox reincarnation spoke via the HTTP adapter (per-step adaptive CAT + engine stop, reincarnation 1.3.0); the long-standing "wired end-to-end (mock)" label was stale and is corrected. Mock stays only as a local-dev/safety-net fallback. The remaining block on a live pilot is a named partner team (PFX-12, commercial — not engineering).
  2. 2026-06-15**GTM surface renders at scale from pa-site feeds (HO-060, performix-site):** the marketing site now consumes pa-site's situations/v1 + brandscripts/v1 feeds — /pitch chooser, /use-cases catalog, landing hero, and the new per-persona **argument layer** (/for, /for/[persona]) render the full persona × situation × vertical set (14 situations in 5 groups, 10 persona brandscripts) with **zero per-profile authoring**; new situations/personas appear with no code change. Retired the hardcoded pitch catalog + interim local decks. Reusable feed-client packages declared in performix-site's profile.
  3. 2026-06-13**PFX-126 — the C of CAMS made real:** team-Capability **basket-coverage** surface (/capability) — coverage index, gaps, single-points-of-failure, per-criterion decomposition — plus the **develop-in-place** plan (develop / hire / build-bench with projected lift; the Get2Great loop), and a /diagnose → /capability handoff when Capability is the binding constraint.
  4. 2026-06-13**Capability & Job-Assessment cross-portfolio architecture** (docs/CAPABILITY-ASSESSMENT-ARCHITECTURE.md) + handoffs to principia (criterion taxonomy + moderated validity priors), canonicai (O*NET descriptors + criterion section), toolbox (assessment spoke + reincarnation predictor banks + KSAO no-fork), PA-site, vela. Competency repatriated to canonicai; vela cleaned of ~18M stray meta-factory content (Penwright disentangled).
  5. 2026-06-12**PFX-108 — Coaching Door MVP** (/leader): self-vs-team **behavioral shadow**, leadership NAV, trust radar, **grounded coaching brief** (AI cites the leader's own data or stays silent), min-N onboarding as the activation path, posted per-seat price.
  6. 2026-06-12**PFX-106 Pulse/Snapshot continuous-mode tier** (/pulse) · **PFX-107 Adaptive surveys** (/adaptive, IRT/CAT stop-rule) · **PFX-117 leadership-360** research layer (principia instruments, per-perspective privacy) · **PFX-110 global search** (/search) · **PFX-121 Clerk-aware prod smoke** · **PFX-118 O*NET coverage map** (the use-case generator's first step).
  7. 2026-06-11Use-case program (**#not-the-same** + O*NET walk-down doctrine), chrome-honesty pass, 191 real citations on the diagnostic, **PFX-123** /learn hub + 22 public book profiles (performix-site).
In progress
  • ·The assessment program (C of CAMS) — flip mock→real as donors land: principia criterion-taxonomy + moderated predictor→criterion validity priors (HO-034); canonicai O*NET basket + per-job criterion instance (HO-035); toolbox reincarnation predictor item banks + JobFrame KSAO "one taxonomy, no fork" (HO-036/HO-042). Then the live re-measure loop (today the develop-in-place lift is projected).
  • ·PFX-124 — finish the Clerk-aware prod smoke (live prod Clerk key + pre-provisioned smoke user) + add /pulse · /leader · /capability · /adaptive · /search to the smoke content checks.
  • ·PFX-108 follow-ons — the LLM coach adapter (env-flip from the grounded deterministic generator); PFX-125 multi-rater collection flow (subordinate/peer rating via the embedded primitive, per-perspective min-N).
  • ·Toolbox-spoke vigilance — each consumed spoke (reincarnation, preference-modeler, data-anonymizer, segmentation-studio, calculus, job_family_agent) flips mock→real by env-var when it deploys, with no surface change; watch for contract drift on re-vendor.
Packageable components
ComponentStageReuse
FeedbackInstrument (embedded-feedback primitive)
src/components/feedback/
productionNon-displacing one-primitive-three-uses surface vendored from vela compass with light-mode tokens; backs CAMS items, pulse items, leader self-ratings, doc-section rating, intervention-fit rating. Cross-portfolio reusable under the light-token discipline.
capability-assessment (team-Capability)
src/capabilities/capability-assessment/
MVP (mock-until-real)The ownable primitive: team-Capability as **basket coverage** (importance-weighted index, gaps, single-points-of-failure, per-criterion decomposition) + the **develop-in-place** plan. Consumes principia/canonicai/reincarnation via contract; the C of CAMS.
pulse-tier (continuous-mode CAMS)
src/capabilities/pulse-tier/
MVPCadence enrollment + lens overlays (trust-radar / belonging / charter-health as CAMS framings) + per-dimension pulse-over-time trend. Reuses the embedded primitive + shared response path.
leader-coach (Coaching Door)
src/capabilities/leader-coach/
MVPSelf-vs-team shadow + Leadership NAV + grounded coaching brief (AI-as-consumer, cites-or-stays-silent). The vendor-contract→mock→env-flip consumption pattern is itself the reusable artifact.
leadership-360 (principia instruments consumer)
src/capabilities/leadership-360/
MVPVendors principia's /api/v1/instruments with rater_perspective; **per-perspective privacy** rule (self/supervisor identified; subordinate/peer min-N gated) encoded in pure functions.
Insight-card renderer primitives
src/capabilities/insight-player/
buildPerformix is the portfolio's renderer authority for quantitative-finding cards (PA-site first external consumer). Theme-tokenized for paper-and-ink alongside the executive-light surface.
HRISOnboarding wizard
src/components/hris-onboarding/
production7-step roster ingest against the toolbox workforce-datasets proxy; server proxy never exposes the toolbox service key to the browser.
Architecture

Performix is a **consumer**, not a fork. Every analytical capability that does real work — reincarnation's adaptive psychometric engine, data-anonymizer's suppression gate, segmentation-studio's HRIS normalization, calculus's small-N enrichment, preference-modeler's response collection, job_family_agent's universal job schema, principia's research priors + instruments — lives in another repo and is vendored here only as a typed Zod contract under `src/lib/<service>/contract.ts`. Each capability lives at `src/capabilities/<name>/{contracts,core,adapters,ui,tests}/` and resolves to a mock adapter by default, an HTTP/MCP adapter when the corresponding env var is set, with no UI change between (the leadership-360 / capability-assessment build proved the pattern end-to-end). **The core CAMS diagnostic is no longer mock: `cams-diagnostic`/reincarnation runs the REAL HTTP path in production** (PFX-7 + PFX-30); the still-mock surfaces are the donors not yet deployed (capability-assessment's principia/canonicai validity priors, the LLM coach adapter). The **surface family** the consumer sees: `/diagnose` (binding-constraint diagnostic) → `/pulse` (continuous mode) → `/capability` (the C: basket coverage + develop-in-place) → `/leader` (per-leader Coaching Door) → `/adaptive` (CAT) → `/search` (engagement-model mode #1) → the **Insight Player** + reports. Runtime is **precompute-and-playback** — metrics calculated upstream by segment, stored as `Insight` / `InsightChart` / `Smart List` records, retrieved and never re-computed at render — emitted as a **portable Insight Card** that plays in-app, in email/slides, and (roadmap) an iTunes-like mobile queue. UI discipline: **one primitive, three uses** for embedded feedback (no separate survey forms), **light-surface only** for the consumer player (P233 operator-console discipline governs admin tiers). Drizzle is `schemaFilter`-scoped to the `performix` schema in a shared devplane Supabase project so migrations cannot cross-contaminate.

Outcome

MVP 1 live. Scope locked at `docs/VISION.md` (canonical 2026-05-10; tiebreak source: PRD V2). Settled-CAMS diagnosis → tier-3 Insight shipped end-to-end on 2026-05-13. Eight capabilities staged; CAMS-diagnostic wired end-to-end against a mocked Reincarnation adapter; HTTP adapter flips on per spoke as the toolbox services land in production. Three beachheads on the GTM roadmap — sales-performance variance first wedge, AI-transformation readiness second, post-acquisition integration third. The product roadmap stages behind the diagnostic: MVP 1 Diagnostic (now) → Performance Science Library → Capability Modeling → Adaptive Measurement → V1 Platform, with mobile-native delivery as a defensibility surface (the public articulation of all of this lives on the `/explain` routes of the marketing surface). The engagement-buyer counterpart of those three beachheads is live on `peopleanalyst.com/consulting` (Section 11) as of 2026-05-22; the product-buyer marketing surface is live at performix.app (the separate `performix-site` repo). Solo build, partnered: Mike owns performance science, CAMS, measurement constructs, and customer-use-case validation; Alvan owns system architecture, data platform, and technical execution. Pre-chasm posture — no design-partner logos to display until earned; the working artifact and the substantive technical illustration are the reassurance.

Performix exists because the question that actually matters for enterprise performance is not *who is rated what* but *what is blocking the team's performance right now, and what is one accountable action that would unblock it.* Capability alone never produces realized performance; alignment, motivation, and support are conjunctive conditions, and CAMS is the model that holds them as such. The protected-feedback foundation is what makes the model legible — employees can observe the social, managerial, and structural conditions blocking performance better than any external instrument can measure them, and the only way to surface that signal is to make it safe to say out loud. The defensible AI bet is not assistant gloss; it is the literature ingest — peer-reviewed I/O psychology and organizational behavior literature read at chapter-respecting fidelity, structured into constructs, measures, and evidence weights that pre-LLM you could not economically synthesize. The runtime is a precompute-and-playback architecture borrowed from music players — the player is the user's home, the library is the secondary catalog, and the discipline is never to recompute at render. The diagnostic itself is adaptive — start at the minimum load-bearing instrument, narrow probabilistically based on what the team's responses reveal, gate deeper analytic tracks by Value-of-Information rather than running a fixed laundry list. Three beachheads sit on top of the same instrument: sales-performance variance (the first wedge — buyers already pay for sales tools and the executive question lands cleanly), AI-transformation readiness (the most timely and the most crowded — wedge is *instrument, not framework*), and post-acquisition integration (the most distinctive and the highest-stakes — protected feedback matters more than usual when trust in surveys is low). A separate marketing surface (`performix-site`) carries the three doors; this entry describes the product behind them. The engagement-buyer counterpart of the same three beachheads is live now on the consulting page.

Architecture

CAMS diagnostic loop — ~12 protected items, one binding-constraint card per team.

A manager picks a team and answers about twelve protected items — four CAMS dimensions, three items apiece. The system scores all four dimensions, applies the binding-constraint rule (the lowest is what the system is starving on), and renders one card per team. The card names the dimension, surfaces redacted comment themes, recommends one accountable action, and schedules a follow-up pulse against the same items. Capability, Alignment, Motivation, Support are conjunctive — capability alone never produces realized performance — and the output is not a dashboard of metrics, it is one card.

Privacy layer — the gate every Insight passes through.

Protected feedback is a foundational primitive in Performix, not a privacy setting. The gate enforces min-N, k-cell suppression, comment redaction, identity-risk scoring, role-based visibility, and deterministic HMAC tokenization, and every Insight is suppression-checked before reaching storage. Below the floor, the answer is blocked — not averaged into uselessness. The matters because privacy theater fails the moment a cohort rollup leaks one person's response; the contract is what keeps the signal safe to surface in the first place.

Toolbox-MCP integration — vendored Zod contracts, first external MCP consumer (PFX-30, 2026-05-11).

Performix vendors typed Zod contracts for reincarnation, data-anonymizer, segmentation-studio, and calculus from the People Analytics Toolbox and calls them over MCP transport. It does not re-implement the algorithms; CONTRACT_VERSION is pinned per spoke and re-vendored only on major bumps. PFX-30 (2026-05-11) was the first external MCP consumer of the toolbox — the cleanness test for the foundation-not-product claim the toolbox is built on.

Insight Player — precompute-and-playback, never recompute at render.

Insights, InsightCharts, and Smart Lists are computed upstream by segment × metric × period and stored as first-class records. The player retrieves and replays; it never recomputes at render. The framing is musical — lists, collections, the now-playing experience — with the library as secondary discovery. The Safe AI Insight Interpreter sits at the interpretation layer (never the headline): it summarizes patterns, drafts leadership communications, flags weak evidence, and respects min-N and role-based visibility. Where any surface starts computing metrics in response to a user request, that is a bug — not a feature.