people-graph
ok · v0.2.0people_graphcontracts: 2latency: 57msA consolidated monorepo of independent service spokes that downstream tools (Performix, vela, future apps) consume as services. Each spoke owns a Postgres schema, an API namespace, and a versioned contract — but they ship as one Next.js app, one deploy, one Supabase project.
They’re designed to be both independent (each spoke is invokable on its own contract) and combinable (their contracts compose into cross-spoke surfaces like the metric × segment factory).
Each card is one spoke. Reads are public; writes require a service-key header. Click a sample to see a runnable request.
people_graphcontracts: 2latency: 57mspredictioncontracts: 1latency: 60msAdaptive psychometric diagnostic engine — universal items (RIDs), study items (SIDs), pool lifecycle (D/C/B/A/PURGATORY/INFINITY), information-gain item selection.
reincarnationcontracts: 5latency: 58msList psychometric statistics across all galaxies.
GET /api/spokes/reincarnation/psychometric-feed · public read
curl -sS "https://people-analytics-toolbox.vercel.app/api/spokes/reincarnation/psychometric-feed"
diagnostic_coachingcontracts: 4latency: 59msperformance_calibrationcontracts: 4latency: 59msperformance_validitycontracts: 11latency: 58msSurvey response collection + preference modeling. Anonymity-gated aggregation across maxdiff, penny-allocation, paired-comparison, conjoint (MNL).
preference_modelercontracts: 8latency: 60msAggregated preferences for the seed survey, with per-segment breakdown.
GET /api/spokes/preference-modeler/surveys/pat3-survey-seed/preferences?bySegment=true · public read
curl -sS "https://people-analytics-toolbox.vercel.app/api/spokes/preference-modeler/surveys/pat3-survey-seed/preferences?bySegment=true"
program_evaluationcontracts: 6latency: 61mstalent_valuecontracts: 5latency: 62msassessment_librarycontracts: 5latency: 62mscareer_developmentcontracts: 8latency: 63msleadership_qualitycontracts: 5latency: 63mslinkage_modelscontracts: 11latency: 63msforecast_strengthcontracts: 7latency: 65mssurvey_orchestratorcontracts: 29latency: 66msnetwork_analysiscontracts: 5latency: 66msresearch_methodscontracts: 8latency: 66mscareer_pathingcontracts: 2latency: 67mscausal_discoverycontracts: 2latency: 68mscomp_normalizercontracts: 2latency: 70mspay_structure_retentioncontracts: 2latency: 69msjob_similaritycontracts: 3latency: 70msPII detection (24-rule catalog, risk-prioritized overlap resolution), HMAC-keyed deterministic tokenization, redaction-with-spans, min-N privacy gate, 20-strategy transform.
data_anonymizercontracts: 6latency: 92msList the 24 default PII detection rules.
GET /api/spokes/data-anonymizer/pii-rules · public read
curl -sS "https://people-analytics-toolbox.vercel.app/api/spokes/data-anonymizer/pii-rules"
HRIS canonical-field normalization + multi-membership cohort resolution + identity dedup (union-find) + recipe-derived dimensions + versioned pack publishing.
segmentation_studiocontracts: 44latency: 96msResolve the engineering-and-west cohort (returns memberIds).
POST /api/spokes/segmentation-studio/cohorts/resolve · requires service key
curl -sS -X POST "https://people-analytics-toolbox.vercel.app/api/spokes/segmentation-studio/cohorts/resolve" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $TOOLBOX_SERVICE_KEY" \
-d '{
"criteria": {
"include": [
{ "dimensionKey": "department", "operator": "in", "values": ["engineering"] },
{ "dimensionKey": "region", "operator": "in", "values": ["west"] }
]
}
}'Statistical enrichment (Wilson / normal / t / bootstrap CIs), trend classification, MetricEnvelope shape, metric × segment combinatorial factory, time-series imputation, anomaly detection.
calculuscontracts: 17latency: 95msClassify a periods array as rising / stable / falling with OLS slope.
POST /api/spokes/calculus/stats/trend · requires service key
curl -sS -X POST "https://people-analytics-toolbox.vercel.app/api/spokes/calculus/stats/trend" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $TOOLBOX_SERVICE_KEY" \
-d '{
"periods": [
{ "period": "2025-Q1", "value": 70 },
{ "period": "2025-Q2", "value": 75 },
{ "period": "2025-Q3", "value": 80 }
]
}'factor_modelscontracts: 11latency: 92msMonte Carlo simulation + VOI / EVPI / EVSI decision-tree analysis. Deterministic seeded PRNG.
forecastingcontracts: 8latency: 95msRun a 1,000-trial Monte Carlo over a single normal-distributed variable.
POST /api/spokes/forecasting/monte-carlo/run · requires service key
curl -sS -X POST "https://people-analytics-toolbox.vercel.app/api/spokes/forecasting/monte-carlo/run" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $TOOLBOX_SERVICE_KEY" \
-d '{
"tenantId": "__operator_demo__",
"trials": 1000,
"model": {
"variables": { "x": { "shape": "normal", "mean": 100, "sd": 15 } },
"expression": "x"
}
}'workforce_planningcontracts: 18latency: 95msCompensation models, band placement, percentile-based recommendation engine, audit-trailed comp cycles.
anycompcontracts: 25latency: 95msEvaluate one employee against the seeded compensation model.
POST /api/spokes/anycomp/evaluate · requires service key
curl -sS -X POST "https://people-analytics-toolbox.vercel.app/api/spokes/anycomp/evaluate" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $TOOLBOX_SERVICE_KEY" \
-d '{
"modelId": "<seed-model-id>",
"employees": [
{ "employeeId": "E1", "dimensionValues": { "job_level": "L4" }, "currentPay": { "base": 150000 } }
]
}'metrics_catalogcontracts: 4latency: 98msorg_graphcontracts: 9latency: 98mspersona_librarycontracts: 3latency: 99msgtm_studiocontracts: 10latency: 98msReserved namespace. Canonical home is meta-factory-prod; toolbox is a consumer, not a co-owner.
job_family_agentcontracts: 17latency: 99msHealth-only — canonical home for this capability is meta-factory-prod.
GET /api/spokes/job-family-agent/health · public read
curl -sS "https://people-analytics-toolbox.vercel.app/api/spokes/job-family-agent/health"
manager_effectivenesscontracts: 6latency: 101mscompany_intelligencecontracts: 6latency: 101msknowledge_graphcontracts: 6latency: 101msseocontracts: 9latency: 102msmarketing_analyticscontracts: 10latency: 102mscompetitive_intelligencecontracts: 7latency: 104msai_inboundcontracts: 8latency: 104mscontent_developmentcontracts: 8latency: 104mswage_benchmarkcontracts: 5latency: 104mswage_compliancecontracts: 31latency: 105msworker_resolutioncontracts: 2latency: 107msprincipia_connectorcontracts: 11latency: 107msglass_oxcontracts: 5latency: 107msenterprise_jobframecontracts: 30latency: 108mshris_mappercontracts: 9latency: 108msjobframe_analyticscontracts: 6latency: 110mscalculus's factory composes envelopes from multiple spokes in one POST. Each cell of the grid joins a metric, a segment ID from segmentation-studio, and a period; calculus enriches with CI / z-score / percentile / change-rate; the ranked list is metadata-driven (impact, significance, change, recency, sample-size).
curl -sS -X POST https://people-analytics-toolbox.vercel.app/api/spokes/calculus/factory/build \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $TOOLBOX_SERVICE_KEY" \
-d '{
"metricKeys": ["engagement_score","completion_rate"],
"segmentIds": ["pat5-node-engineering","pat5-node-sales"],
"periods": ["2026-Q1"],
"valuesProvider": [
{"metricKey":"engagement_score","segmentId":"pat5-node-engineering","period":"2026-Q1","value":82,"sampleSize":120,"previousValue":78},
{"metricKey":"engagement_score","segmentId":"pat5-node-sales", "period":"2026-Q1","value":74,"sampleSize":80, "previousValue":76},
{"metricKey":"completion_rate", "segmentId":"pat5-node-engineering","period":"2026-Q1","value":0.62,"sampleSize":120,"previousValue":0.55},
{"metricKey":"completion_rate", "segmentId":"pat5-node-sales", "period":"2026-Q1","value":0.58,"sampleSize":80, "previousValue":0.60}
],
"rankingStrategy": "impact"
}'/api/registryJSON inventory of every spoke and contract./api/healthRoll-up status + per-spoke latency./api/spokes/<slug>/healthSchema reachability + contract version.POST /api/mcpJSON-RPC transport for AI-native consumers. Auth: TOOLBOX_MCP_KEY_<consumer>.x-toolbox-service-key: $TOOLBOX_SERVICE_KEYRequired on POST endpoints. Authorization: Bearer also accepted (backwards-compat)./metric-marketCard workbench composing calculus + segmentation-studio (PAT-21)./anycomp-range-builderBand simulation + governance flags + Monte Carlo budget (PAT-21-FU)./decision-wizardKepner-Tregoe + VOI flow composing forecasting + calculus (PAT-22)./feedPaced, gestural mobile feed sequencing Insight Cards across all spokes (PAT-35).