{
  "name": "timeback-analytics-alpha",
  "title": "TimeBack Analytics Alpha",
  "version": "2026.06.16-a1",
  "generatedAt": "2026-06-16T14:26:05Z",
  "canonicalUrl": "https://platform3-andymontgomery-9773s-projects.vercel.app/analytics/alpha/skill_pack",
  "canonicalPath": "/analytics/alpha/skill_pack",
  "implementationUrl": "https://platform3-andymontgomery-9773s-projects.vercel.app/analytics/alpha/implementation/api",
  "docs": {
    "architecture": "https://platform3-andymontgomery-9773s-projects.vercel.app/analytics/alpha/architecture",
    "dataDictionary": "https://platform3-andymontgomery-9773s-projects.vercel.app/analytics/alpha/data_dictionary",
    "customerWebsite": "https://platform3-andymontgomery-9773s-projects.vercel.app/analytics/alpha/customer_website",
    "implementation": "https://platform3-andymontgomery-9773s-projects.vercel.app/analytics/alpha/implementation/api",
    "surfaceQc": "https://platform3-andymontgomery-9773s-projects.vercel.app/analytics/alpha/surface_qc",
    "integration": "https://platform3-andymontgomery-9773s-projects.vercel.app/analytics/alpha/integration",
    "eventsDataDictionary": "https://platform3-andymontgomery-9773s-projects.vercel.app/events/alpha/data_dictionary",
    "resultsDataDictionary": "https://platform3-andymontgomery-9773s-projects.vercel.app/results/alpha/data_dictionary",
    "curriculumDataDictionary": "https://platform3-andymontgomery-9773s-projects.vercel.app/curriculum/alpha/data_dictionary",
    "peopleDataDictionary": "https://platform3-andymontgomery-9773s-projects.vercel.app/people_and_orgs/alpha/data_dictionary"
  },
  "install": {
    "primary": "/analytics/alpha/skill_pack/pack/SKILL.md",
    "claudeCodeDirectory": "~/.claude/skills/timeback-analytics-alpha",
    "codexDirectory": "~/.codex/skills/timeback-analytics-alpha",
    "verifyCommand": "node checks/verify-skill-pack.mjs --write-evidence",
    "files": [
      "/analytics/alpha/skill_pack/pack/SKILL.md",
      "/analytics/alpha/skill_pack/pack/references/canonical-surface.md",
      "/analytics/alpha/skill_pack/pack/references/report-recipes.md",
      "/analytics/alpha/skill_pack/pack/references/worked-example.md",
      "/analytics/alpha/skill_pack/pack/references/runnable-check.md",
      "/analytics/alpha/skill_pack/pack/references/leak-check.md",
      "/analytics/alpha/skill_pack/pack/references/source-shaped-import.md",
      "/analytics/alpha/skill_pack/pack/references/response-samples.md",
      "/analytics/alpha/skill_pack/pack/checks/expected.json",
      "/analytics/alpha/skill_pack/pack/checks/verify-skill-pack.mjs",
      "/analytics/alpha/skill_pack/pack/agents/openai.yaml",
      "/analytics/alpha/skill_pack/pack/agents/claude-code.md",
      "/analytics/alpha/skill_pack/pack/agents/codex-cli.md",
      "/analytics/alpha/skill_pack/pack/agents/perplexity-computer.md"
    ]
  },
  "endpointCatalog": [
    "POST /dev/mint",
    "GET /alpha/analytics/v1/event-time-facts",
    "GET /alpha/analytics/v1/time-windows",
    "GET /alpha/analytics/v1/school-day-minutes",
    "GET /alpha/analytics/v1/xp-rollups",
    "GET /alpha/analytics/v1/accuracy-rollups",
    "GET /alpha/analytics/v1/mastery-deltas",
    "GET /alpha/analytics/v1/map-growth-rollups",
    "GET /alpha/analytics/v1/completion-rollups",
    "GET /alpha/analytics/v1/source-imports",
    "GET /alpha/analytics/v1/norms",
    "GET /alpha/analytics/v1/norms/table",
    "GET /alpha/analytics/v1/norms/rit",
    "GET /alpha/analytics/v1/norms/percentile",
    "GET /alpha/analytics/v1/rit-to-grade",
    "GET /alpha/analytics/v1/rit-to-grade/table",
    "GET /alpha/analytics/v1/r90",
    "GET /alpha/analytics/v1/r90/table",
    "GET /alpha/analytics/v1/school-days-remaining",
    "GET /alpha/analytics/v1/grade-level-status",
    "POST /alpha/analytics/v1/source-imports/timeback-xp-time-accuracy",
    "POST /alpha/analytics/v1/source-imports/timeback-map",
    "POST /alpha/analytics/v1/source-imports/timeback-grade-mastery",
    "POST /alpha/analytics/v1/source-imports/timeback-completion",
    "POST /alpha/analytics/v1/source-imports/migration-reconcile"
  ],
  "regenerates": [
    "Learning Report time commitment panel",
    "Learning Report XP panel",
    "Learning Report accuracy panel",
    "Learning Report mastery-change panel",
    "Learning Report MAP RIT/Growth X panel",
    "Learning Report completion panel",
    "GOALS percentile/RIT, R90 grade-position, and school-days-remaining panels",
    "closed-loop metric checks for minutes, XP, mastery, RIT/Growth X, completion, and source-shaped imports"
  ],
  "binaryLeakCheck": {
    "result": "pass",
    "noSurfaceOwnedLogic": [
      "no private norms tables",
      "no private R90 tables",
      "no MAP sitting dedupe",
      "no growth-window switch statements",
      "no term parsing",
      "no accuracy formulas",
      "no mastery or decay math",
      "no school-day calendar intersection",
      "no school-days-remaining counting",
      "no XP award formulas",
      "no completion tree walking",
      "no raw Events/Results database reads"
    ]
  },
  "verifier": {
    "command": "node pack/checks/verify-skill-pack.mjs --write-evidence",
    "defaultBaseUrl": "https://platform3-andymontgomery-9773s-projects.vercel.app/analytics/alpha/implementation/api",
    "configPath": "pack/checks/expected.json",
    "answerKeyUrl": "https://platform3-andymontgomery-9773s-projects.vercel.app/analytics/alpha/integration/convergence.json",
    "proves": "Calls the live Analytics Alpha surface and compares returned demo facts to the approved live integration convergence answer key. checks/expected.json supplies selectors, row ids, endpoint perimeter, and optional source-import proof config only. The XP alias check requires xp_goal_percent to equal the live answer key's xp_completion_percent, so stale local expected values fail. The default verifier is read-only; set ANALYTICS_RUN_IMPORT=1 for the optional source-shaped import smoke. The latest verifier evidence is published at /analytics/alpha/skill_pack/pack/evidence/verification-latest.json."
  }
}
