{
  "schema_id": "interlanguage/c130-course-capsule-learner-route-validation/v1",
  "state": "pass",
  "recorded_at": "2026-09-01",
  "admission": {
    "path": "backend/course-capsule-v1/adapters/c130-v231/ADMISSION.json",
    "bytes": 4889,
    "sha256": "b311ab7d2a6a86af40174d051fbd8ef273a8536b34f0af77b76e5a1ce9b3397e"
  },
  "source_bindings": {
    "course_catalog": {
      "path": "docs/courses.js",
      "bytes": 52352,
      "sha256": "05136e1d675bdac0d1674f3b95f7bf6e87b98d5ef5cb9f52a2ad00c375bcaebc"
    },
    "generator": {
      "path": "scripts/build-c130-course-capsule-v1.mjs",
      "bytes": 40569,
      "sha256": "0a0dae868a9e9b5611050e115b22698b23dc6513ec1ad697633a7fc9330b5702"
    }
  },
  "imported_package": {
    "admitted_inputs": 65,
    "admitted_input_bytes": 253579914,
    "package_tree_sha256": "242e130059b40717fccf7499fdd7c66dcf411cb4dd1ad15d747c8f4731e29b0b",
    "independent_trees_identical": true,
    "archive": {
      "bytes": 21213937,
      "path": "backend/course-capsule-v1/builds/program-matematika-indonesia-c130-operations-research-v2.3.1.zip",
      "sha256": "eb195d1aa555e9d5e639c1e35a08b6f4425be24cc93b7f1f633161e9cacee865",
      "members_verified": 65,
      "member_bytes_verified": 253579914
    },
    "archive_members_decompressed_and_sha256_matched": true,
    "manifest": {
      "path": "backend/course-capsule-v1/adapters/c130-v231/manifest.json",
      "bytes": 22488,
      "sha256": "cad2922d9bd1facb33cc9d54a9836bb168fe0b8d996d9d4ef2e5d8c26053f239",
      "files_verified": 62
    },
    "seal": {
      "path": "backend/course-capsule-v1/adapters/c130-v231/seal.json",
      "bytes": 15054,
      "sha256": "bf7ad1ef9aa20fa599076df9ef927b1e18592342c121e60f2a9a49a22b8d4a59",
      "files_verified": 63,
      "sealed_bytes": 253558806,
      "aggregate_sha256": "72dc9f3c0838504a4590a2e81c560b1e146d565f3baaa2018e35a00746a6fb70"
    },
    "checksums": {
      "path": "backend/course-capsule-v1/adapters/c130-v231/PACKAGE_CHECKSUMS.sha256",
      "bytes": 6054,
      "sha256": "34c93c23d7b93af06ff0df7fd9af34d906e8e8a2a29df4439e66001a26f12d82",
      "rows_verified": 64
    }
  },
  "semantic_counts": {
    "canonical_records": 51704,
    "identity_crosswalks": 17273,
    "native_html_claimed": false,
    "native_rights_total": 7989,
    "pdf_ua_claimed": false,
    "reader_pages": 666,
    "reader_surfaces": 1,
    "relations": 9545,
    "rights_assignments": 7634,
    "routes": 7,
    "segments": 5525,
    "unit_or_page_anchors_claimed": false,
    "units": 1993
  },
  "learner_routes": {
    "count": 7,
    "ordered_route_kinds": [
      "pages_learner_landing",
      "linked_pdf",
      "source_repository",
      "zenodo_preservation_record",
      "editable_source_download",
      "computational_labs_download",
      "owner_backend_download"
    ],
    "exact_urls": [
      "https://kokunoyumeto.github.io/open-optimization-or-book-id/",
      "https://kokunoyumeto.github.io/open-optimization-or-book-id/downloads/pemrograman-matematis-dan-riset-operasi-buku-1-id-ID.pdf",
      "https://github.com/KokunoYumeto/open-optimization-or-book-id",
      "https://zenodo.org/records/22070653",
      "https://kokunoyumeto.github.io/open-optimization-or-book-id/downloads/pemrograman-matematis-dan-riset-operasi-buku-1-source-id-ID.zip",
      "https://kokunoyumeto.github.io/open-optimization-or-book-id/downloads/pemrograman-matematis-dan-riset-operasi-buku-1-o018-open-solver-labs-id-ID.zip",
      "https://kokunoyumeto.github.io/open-optimization-or-book-id/downloads/pemrograman-matematis-dan-riset-operasi-buku-1-modular-backend-v0.zip"
    ],
    "pages_landing_is_priority_one": true,
    "linked_pdf_is_only_primary_reader": true,
    "pdf": {
      "bytes": 26425739,
      "filename": "pemrograman-matematis-dan-riset-operasi-buku-1-id-ID.pdf",
      "format": "linked_pdf",
      "locale": "id-ID",
      "pages": 666,
      "sha256": "daa9b79df3684729cc204b563669f400866d8fbd12c0977d32ff9897276a7a49",
      "url": "https://kokunoyumeto.github.io/open-optimization-or-book-id/downloads/pemrograman-matematis-dan-riset-operasi-buku-1-id-ID.pdf",
      "tagged_pdf": false,
      "pdf_ua_claimed": false
    },
    "machine_downloads_are_secondary": true,
    "guessed_descendant_anchors": 0
  },
  "authority_replay": {
    "path": "backend/course-capsule-v1/validation/C130_AUTHORITY_REPLAY_RECEIPT_20260901.json",
    "bytes": 2977,
    "sha256": "7cf3be9570c59f8fa1f35ea83b54e6ca2add842a19c65da3751a5a609dcdc09b",
    "state": "pass_postpublication_authority_replay"
  },
  "claim_boundaries": {
    "aggregate_program_conformance_claimed": false,
    "native_html_claimed": false,
    "pdf_ua_claimed": false,
    "python_authority_validators_replayed": true,
    "textbook_body_centralized": false,
    "current_mutable_url_availability_claimed": false
  },
  "javascript_required": false,
  "limitations": [
    "C130 covers R017 Book 1 plus the separately attributed O018 Pyomo and HiGHS adaptation; R017 Book 2, advanced optimization, and the other 39 curriculum roles are excluded.",
    "The Pages landing page is learner priority 1 and the linked 666-page Indonesian PDF is the only primary reader surface; the other routes are source, preservation, or secondary download surfaces.",
    "No native or chapter HTML, unit anchors, page anchors, tagged PDF, PDF/UA conformance, assessment engine, or full accessibility is claimed.",
    "Machine tables and source, laboratory, and backend archives are secondary; textbook prose, formulas, exercises, solutions, assets, corrections, and term bodies remain in the owner-native authority.",
    "Historical owner-generator evidence does not prove member-by-member owner archive/extraction equivalence or public-package member-byte identity, and laboratory result semantics were not independently recomputed; owner QA remains provenance rather than fresh central validation.",
    "The SHA-256 seal proves local inventory integrity under its declared algorithm; it is not a digital signature or proof of authorship, semantic correctness, accessibility, or current public availability.",
    "The packaged generic and C130 semantic validators were replayed postpublication with all 14 declared external authorities; this does not enlarge the package scope or rewrite owner-native bytes."
  ],
  "outputs": {
    "C130.html": {
      "bytes": 4654,
      "sha256": "00e72cbd6a040c091e802c85e4c7f2856e2d14d03bc8e626a3ce6b70b9f50ed2"
    },
    "learner-route.json": {
      "bytes": 9930,
      "sha256": "8114562c963295577d8f845719061febed5993b5cbbe5fc4beb8ba235d7fd709"
    }
  }
}
