{
  "checked_at": "2026-06-23T22:41:49.750Z",
  "check": "timeback-analytics-alpha-skill-pack",
  "base_url": "https://platform3-andymontgomery-9773s-projects.vercel.app/analytics/alpha/implementation/api",
  "config_path": "checks/expected.json",
  "config_generated_at": "2026-06-16T14:25:12Z",
  "answer_key_url": "https://platform3-andymontgomery-9773s-projects.vercel.app/analytics/alpha/integration/convergence.json",
  "answer_key": {
    "url": "https://platform3-andymontgomery-9773s-projects.vercel.app/analytics/alpha/integration/convergence.json",
    "pinned_set_name": "analytics-alpha-integration-launch-gate-v2",
    "generated_at": "2026-06-23T22:38:44.765Z",
    "question_count": 9,
    "pass_count": 9
  },
  "tenant_id": "demo",
  "credential_path": "demo mint endpoint",
  "checkedBySurfaceCallsOnly": true,
  "static_checks": [
    {
      "name": "exists SKILL.md",
      "pass": true
    },
    {
      "name": "exists references/canonical-surface.md",
      "pass": true
    },
    {
      "name": "exists references/report-recipes.md",
      "pass": true
    },
    {
      "name": "exists references/worked-example.md",
      "pass": true
    },
    {
      "name": "exists references/runnable-check.md",
      "pass": true
    },
    {
      "name": "exists references/leak-check.md",
      "pass": true
    },
    {
      "name": "exists references/source-shaped-import.md",
      "pass": true
    },
    {
      "name": "exists references/response-samples.md",
      "pass": true
    },
    {
      "name": "exists checks/expected.json",
      "pass": true
    },
    {
      "name": "exists checks/verify-skill-pack.mjs",
      "pass": true
    },
    {
      "name": "exists agents/openai.yaml",
      "pass": true
    },
    {
      "name": "exists agents/claude-code.md",
      "pass": true
    },
    {
      "name": "exists agents/codex-cli.md",
      "pass": true
    },
    {
      "name": "exists agents/perplexity-computer.md",
      "pass": true
    },
    {
      "name": "no forbidden local data artifacts",
      "pass": true
    },
    {
      "name": "verifier has no SQL or platform-owned calculation patterns",
      "pass": true
    }
  ],
  "live_checks": [
    {
      "name": "implementation descriptor",
      "path": "(base URL)",
      "pass": true,
      "mismatches": [],
      "observed": {
        "module": "analytics",
        "surface": "alpha",
        "noOneEdTechBase": true,
        "endpoint_count": 25,
        "missing": [],
        "extra": []
      }
    },
    {
      "name": "active_inactive_waste_event_facts",
      "phase": "pre-import",
      "path": "/alpha/analytics/v1/event-time-facts?studentId=student_01HT7G3YZV7QB5N4YKQ1K0Z9A9&factKind=active_seconds&limit=100",
      "row_id": "event_time_fact_demo_student_01ht7g3yzv7qb5n4ykq1k0z9a9_active",
      "answer_key_question_id": "analytics-001-event-time-fact",
      "pass": true,
      "mismatches": [],
      "error": null,
      "response_row_count": 2,
      "response_row_ids": [
        "event_time_fact_demo_student_01ht7g3yzv7qb5n4ykq1k0z9a9_active",
        "event_time_fact_884539bafc4cded66ba5b3a2"
      ],
      "observed": {
        "source_event_id": "event_demo_closed_student_01ht7g3yzv7qb5n4ykq1k0z9a9",
        "fact_kind": "active_seconds",
        "seconds_delta": 420,
        "subject_id": "math",
        "policy_ref": "alpha.policy.analytics.time_classification.v2026-06-10",
        "quality_status": "ok",
        "id": "event_time_fact_demo_student_01ht7g3yzv7qb5n4ykq1k0z9a9_active",
        "student_id": "student_01HT7G3YZV7QB5N4YKQ1K0Z9A9",
        "computed_at": "2026-06-10T00:00:00.000Z",
        "modified_at": "2026-06-10T00:00:00.000Z"
      }
    },
    {
      "name": "minutes_per_enrolled_school_day",
      "phase": "pre-import",
      "path": "/alpha/analytics/v1/school-day-minutes?studentId=student_01HT7G3YZV7QB5N4YKQ1K0Z9A9&subjectId=math&startDate=2026-05-01&endDate=2026-06-01&limit=100",
      "row_id": "school_day_minutes_demo_student_01ht7g3yzv7qb5n4ykq1k0z9a9_math_may",
      "answer_key_question_id": "analytics-002-school-day-minutes",
      "pass": true,
      "mismatches": [],
      "error": null,
      "response_row_count": 1,
      "response_row_ids": [
        "school_day_minutes_demo_student_01ht7g3yzv7qb5n4ykq1k0z9a9_math_may"
      ],
      "observed": {
        "active_minutes": 980,
        "enrolled_school_day_count": 20,
        "minutes_per_enrolled_school_day": 49,
        "school_day_policy_ref": "alpha.policy.school_day.v2026-06-10",
        "null_reason": "none",
        "id": "school_day_minutes_demo_student_01ht7g3yzv7qb5n4ykq1k0z9a9_math_may",
        "student_id": "student_01HT7G3YZV7QB5N4YKQ1K0Z9A9",
        "subject_id": "math",
        "quality_status": "ok"
      }
    },
    {
      "name": "xp_totals_and_goal_progress",
      "phase": "pre-import",
      "path": "/alpha/analytics/v1/xp-rollups?studentId=student_01HT7G3YZV7QB5N4YKQ1K0Z9A9&subjectId=math&windowKind=term&startDate=2026-01-01&endDate=2026-06-01&limit=100",
      "row_id": "xp_rollup_demo_student_01ht7g3yzv7qb5n4ykq1k0z9a9_term",
      "answer_key_question_id": "analytics-003-xp-rollup",
      "pass": true,
      "mismatches": [],
      "error": null,
      "response_row_count": 1,
      "response_row_ids": [
        "xp_rollup_demo_student_01ht7g3yzv7qb5n4ykq1k0z9a9_term"
      ],
      "observed": {
        "xp_total": 1220,
        "xp_goal": 1500,
        "xp_remaining": 280,
        "xp_completion_percent": 81.333,
        "on_track": false,
        "positive_xp": 1240,
        "negative_xp": -20,
        "net_xp": 1220,
        "award_count": 86,
        "reversal_count": 1,
        "source_import_id": "import_demo_demo",
        "policy_ref": "alpha.policy.analytics.xp_rollup.v2026-06-10",
        "xp_goal_percent": 81.333,
        "id": "xp_rollup_demo_student_01ht7g3yzv7qb5n4ykq1k0z9a9_term",
        "student_id": "student_01HT7G3YZV7QB5N4YKQ1K0Z9A9",
        "subject_id": "math",
        "window_kind": "term",
        "daily_xp_goal": 50,
        "enrolled_school_day_count": 30,
        "quality_status": "ok"
      }
    },
    {
      "name": "mastery_delta",
      "phase": "pre-import",
      "path": "/alpha/analytics/v1/mastery-deltas?studentId=student_01HT7G3YZV7QB5N4YKQ1K0Z9A9&stateDimension=durable_mastery&startDate=2026-05-01&endDate=2026-06-01&limit=100",
      "row_id": "mastery_delta_demo_student_01ht7g3yzv7qb5n4ykq1k0z9a9",
      "answer_key_question_id": "analytics-004-mastery-delta",
      "pass": true,
      "mismatches": [],
      "error": null,
      "response_row_count": 1,
      "response_row_ids": [
        "mastery_delta_demo_student_01ht7g3yzv7qb5n4ykq1k0z9a9"
      ],
      "observed": {
        "kc_id": "kc_math_fraction_equivalence_04",
        "state_dimension": "durable_mastery",
        "previous_value": {
          "value": 0.71
        },
        "new_value": {
          "value": 0.92
        },
        "delta_value": 0.21,
        "transition_kind": "acquired",
        "policy_ref": "alpha.policy.results.mastery_state.v2026-06-10",
        "id": "mastery_delta_demo_student_01ht7g3yzv7qb5n4ykq1k0z9a9",
        "student_id": "student_01HT7G3YZV7QB5N4YKQ1K0Z9A9",
        "quality_status": "ok"
      }
    },
    {
      "name": "accuracy_rollups",
      "phase": "pre-import",
      "path": "/alpha/analytics/v1/accuracy-rollups?studentId=student_01HT7G3YZV7QB5N4YKQ1K0Z9A9&subjectId=math&windowKind=term&startDate=2026-01-01&endDate=2026-06-01&limit=100",
      "row_id": "accuracy_rollup_canonical_89ce4e22de47b487fc4150d7",
      "answer_key_question_id": "analytics-005-accuracy-rollup",
      "pass": true,
      "mismatches": [],
      "error": null,
      "response_row_count": 1,
      "response_row_ids": [
        "accuracy_rollup_canonical_89ce4e22de47b487fc4150d7"
      ],
      "observed": {
        "correct_question_count": 8,
        "total_question_count": 10,
        "incorrect_question_count": 2,
        "accuracy_percent": 80,
        "policy_ref": "alpha.policy.analytics.accuracy.v2026-06-12",
        "null_reason": "none",
        "id": "accuracy_rollup_canonical_89ce4e22de47b487fc4150d7",
        "student_id": "student_01HT7G3YZV7QB5N4YKQ1K0Z9A9",
        "subject_id": "math",
        "window_kind": "term",
        "quality_status": "ok"
      }
    },
    {
      "name": "rit_growthx_map_windows",
      "phase": "pre-import",
      "path": "/alpha/analytics/v1/map-growth-rollups?studentId=student_01HT7G3YZV7QB5N4YKQ1K0Z9A9&subjectId=math&termId=term_2026_winter&growthWindow=winter_to_winter&normsSet=2025&limit=100",
      "row_id": "map_growth_rollup_demo_student_01ht7g3yzv7qb5n4ykq1k0z9a9",
      "answer_key_question_id": "analytics-006-map-growth",
      "pass": true,
      "mismatches": [],
      "error": null,
      "response_row_count": 1,
      "response_row_ids": [
        "map_growth_rollup_demo_student_01ht7g3yzv7qb5n4ykq1k0z9a9"
      ],
      "observed": {
        "rit_score": 221,
        "start_rit": 212,
        "observed_growth": 9,
        "projected_growth": 4.5,
        "growth_x": 2,
        "conditional_growth_percentile": 43,
        "growth_percentile": 43,
        "growth_x_target": 2,
        "on_track": true,
        "sitting_count": 2,
        "retake_count": 1,
        "id": "map_growth_rollup_demo_student_01ht7g3yzv7qb5n4ykq1k0z9a9",
        "student_id": "student_01HT7G3YZV7QB5N4YKQ1K0Z9A9",
        "subject_id": "math",
        "canonical_term_id": "term_2026_winter",
        "growth_window": "winter_to_winter",
        "norms_set": "2025",
        "policy_ref": "alpha.policy.analytics.map_growth.v2026-06-10",
        "quality_status": "ok"
      }
    },
    {
      "name": "completion_percent",
      "phase": "pre-import",
      "path": "/alpha/analytics/v1/completion-rollups?studentId=student_01HT7G3YZV7QB5N4YKQ1K0Z9A9&completionScope=course&scopeId=course_math_grade_4_powerpath&limit=100",
      "row_id": "completion_rollup_demo_student_01ht7g3yzv7qb5n4ykq1k0z9a9",
      "answer_key_question_id": "analytics-007-completion",
      "pass": true,
      "mismatches": [],
      "error": null,
      "response_row_count": 1,
      "response_row_ids": [
        "completion_rollup_demo_student_01ht7g3yzv7qb5n4ykq1k0z9a9"
      ],
      "observed": {
        "completed_count": 70,
        "expected_count": 100,
        "completion_percent": 70,
        "numerator_policy_ref": "alpha.policy.analytics.course_progress.v2026-06-15",
        "denominator_policy_ref": "alpha.policy.analytics.course_progress.v2026-06-15",
        "null_reason": "none",
        "id": "completion_rollup_demo_student_01ht7g3yzv7qb5n4ykq1k0z9a9",
        "student_id": "student_01HT7G3YZV7QB5N4YKQ1K0Z9A9",
        "completion_scope": "course",
        "scope_id": "course_math_grade_4_powerpath",
        "subject_id": "math",
        "grade_level": 4,
        "is_main_course": true,
        "progress_source_kind": "app_reported_percent",
        "policy_ref": "alpha.policy.analytics.course_progress.v2026-06-15",
        "quality_status": "ok"
      }
    }
  ],
  "http_retries": [],
  "import_check": {
    "pass": true,
    "skipped": true,
    "reason": "Set ANALYTICS_RUN_IMPORT=1 to run the optional source-shaped import smoke. The default verifier is read-only and checks pinned Learning Report answers."
  },
  "result": "pass",
  "notes": "Verifier used live HTTP calls and the approved integration convergence answer key. checks/expected.json supplied selectors/import config only. It did not read a database, inspect implementation source, load private norms/R90 tables, dedupe MAP sittings, parse terms, compute Growth X, classify time, intersect calendars, compute XP, compute accuracy, compute mastery, count remaining school days, or count completion."
}
