cy0307 commited on
Commit
6aa290a
·
verified ·
1 Parent(s): 30486d3

Add files using upload-large-folder tool

Browse files
data/artifact_index.json CHANGED
@@ -1,6 +1,6 @@
1
  {
2
  "title": "Ropedia Xperience-10M Task Suite Artifact Index",
3
- "generated_at_utc": "2026-06-23T03:07:05+00:00",
4
  "status": "pass",
5
  "artifact_count": 228,
6
  "missing": [],
@@ -632,7 +632,7 @@
632
  "shows": "Machine-readable source-alignment pass/fail check for repo, website, and HF surfaces.",
633
  "exists": true,
634
  "bytes": 4432,
635
- "sha256": "175d9497e52dad6ff584132775165dd330fa8c6ce5417057c9d13ff6f7da345f"
636
  },
637
  {
638
  "id": "source_alignment_validator",
@@ -653,8 +653,8 @@
653
  "surface": "repo_hf",
654
  "shows": "Publishes prepared Space, artifact dataset, and model bundles, including an explicit model-binary upload batch.",
655
  "exists": true,
656
- "bytes": 29935,
657
- "sha256": "89ed1b25784cd42f19f2e4731eaa52e8655e8ed06cc2a12b6a2c0add027c5fc0"
658
  },
659
  {
660
  "id": "github_package_dockerfile",
@@ -1182,7 +1182,7 @@
1182
  "shows": "Machine-readable release-check summary for validators, mirrors, and public project surfaces.",
1183
  "exists": true,
1184
  "bytes": 8640,
1185
- "sha256": "f3431121d44018da781e47822f75e0f0715998ad958388d568a825c24c47a78b"
1186
  },
1187
  {
1188
  "id": "public_surface_qa",
 
1
  {
2
  "title": "Ropedia Xperience-10M Task Suite Artifact Index",
3
+ "generated_at_utc": "2026-06-23T03:51:33+00:00",
4
  "status": "pass",
5
  "artifact_count": 228,
6
  "missing": [],
 
632
  "shows": "Machine-readable source-alignment pass/fail check for repo, website, and HF surfaces.",
633
  "exists": true,
634
  "bytes": 4432,
635
+ "sha256": "17e2c0f8ddf4953402bdd79c5b51d0d9803b95f490fbe550d82c61ffc198d557"
636
  },
637
  {
638
  "id": "source_alignment_validator",
 
653
  "surface": "repo_hf",
654
  "shows": "Publishes prepared Space, artifact dataset, and model bundles, including an explicit model-binary upload batch.",
655
  "exists": true,
656
+ "bytes": 30196,
657
+ "sha256": "e6b9ab59c0a2cd1ad285287084c038e5898e38ca8a44e31dd3b9db21a4227ad1"
658
  },
659
  {
660
  "id": "github_package_dockerfile",
 
1182
  "shows": "Machine-readable release-check summary for validators, mirrors, and public project surfaces.",
1183
  "exists": true,
1184
  "bytes": 8640,
1185
+ "sha256": "55caa2a4d88dbe110a4a4f8f30545454ec62d5d6af1f3cee7360d4e036cf520b"
1186
  },
1187
  {
1188
  "id": "public_surface_qa",
data/public_surface_qa.json CHANGED
@@ -1,7 +1,7 @@
1
  {
2
  "title": "Ropedia Xperience-10M Public Project Surface",
3
  "status": "pass",
4
- "generated_at_utc": "2026-06-23T03:07:04+00:00",
5
  "scope": "Repo README, GitHub Pages HTML, Hugging Face Space card, artifact dataset card, and model card.",
6
  "checks": [
7
  {
@@ -18,7 +18,7 @@
18
  "website_integrity": {
19
  "exists": true,
20
  "status": "pass",
21
- "generated_at_utc": "2026-06-23T03:06:29+00:00"
22
  },
23
  "rendered_site_check": {
24
  "exists": true,
@@ -28,12 +28,12 @@
28
  "task_surface_integrity": {
29
  "exists": true,
30
  "status": "pass",
31
- "generated_at_utc": "2026-06-23T03:06:28+00:00"
32
  },
33
  "source_alignment": {
34
  "exists": true,
35
  "status": "pass",
36
- "generated_at_utc": "2026-06-23T03:06:28+00:00"
37
  },
38
  "scale_up_status": {
39
  "exists": true,
@@ -43,12 +43,12 @@
43
  "publication_package": {
44
  "exists": true,
45
  "status": "pass",
46
- "generated_at_utc": "2026-06-23T03:06:49+00:00"
47
  },
48
  "mirror_parity": {
49
  "exists": true,
50
  "status": "pass",
51
- "generated_at_utc": "2026-06-23T00:22:16+00:00"
52
  }
53
  },
54
  "failures": {}
 
1
  {
2
  "title": "Ropedia Xperience-10M Public Project Surface",
3
  "status": "pass",
4
+ "generated_at_utc": "2026-06-23T03:51:31+00:00",
5
  "scope": "Repo README, GitHub Pages HTML, Hugging Face Space card, artifact dataset card, and model card.",
6
  "checks": [
7
  {
 
18
  "website_integrity": {
19
  "exists": true,
20
  "status": "pass",
21
+ "generated_at_utc": "2026-06-23T03:50:22+00:00"
22
  },
23
  "rendered_site_check": {
24
  "exists": true,
 
28
  "task_surface_integrity": {
29
  "exists": true,
30
  "status": "pass",
31
+ "generated_at_utc": "2026-06-23T03:50:22+00:00"
32
  },
33
  "source_alignment": {
34
  "exists": true,
35
  "status": "pass",
36
+ "generated_at_utc": "2026-06-23T03:50:21+00:00"
37
  },
38
  "scale_up_status": {
39
  "exists": true,
 
43
  "publication_package": {
44
  "exists": true,
45
  "status": "pass",
46
+ "generated_at_utc": "2026-06-23T03:50:38+00:00"
47
  },
48
  "mirror_parity": {
49
  "exists": true,
50
  "status": "pass",
51
+ "generated_at_utc": "2026-06-23T03:20:53+00:00"
52
  }
53
  },
54
  "failures": {}
data/publication_audit.json CHANGED
@@ -1,6 +1,6 @@
1
  {
2
  "status": "pass",
3
- "generated_at_utc": "2026-06-23T03:06:49+00:00",
4
  "checks": [
5
  {
6
  "name": "required_publication_assets_present",
 
1
  {
2
  "status": "pass",
3
+ "generated_at_utc": "2026-06-23T03:50:38+00:00",
4
  "checks": [
5
  {
6
  "name": "required_publication_assets_present",
data/quality_gates.json CHANGED
@@ -1,7 +1,7 @@
1
  {
2
  "title": "Ropedia Xperience-10M Release Checks",
3
  "status": "pass",
4
- "generated_at_utc": "2026-06-23T03:07:04+00:00",
5
  "rule": "A release is current when the automated reports pass and the live GitHub/Hugging Face mirrors are verified after publishing.",
6
  "automated_gates": [
7
  {
 
1
  {
2
  "title": "Ropedia Xperience-10M Release Checks",
3
  "status": "pass",
4
+ "generated_at_utc": "2026-06-23T03:51:32+00:00",
5
  "rule": "A release is current when the automated reports pass and the live GitHub/Hugging Face mirrors are verified after publishing.",
6
  "automated_gates": [
7
  {
data/source_alignment_audit.json CHANGED
@@ -1,7 +1,7 @@
1
  {
2
  "title": "Ropedia Xperience-10M Source Alignment Note",
3
  "status": "pass",
4
- "generated_at_utc": "2026-06-23T03:06:28+00:00",
5
  "alignment_json": "docs/data/xperience10m_dataset_card_alignment.json",
6
  "alignment_summary": {
7
  "full_dataset_repo": "ropedia-ai/xperience-10m",
 
1
  {
2
  "title": "Ropedia Xperience-10M Source Alignment Note",
3
  "status": "pass",
4
+ "generated_at_utc": "2026-06-23T03:50:21+00:00",
5
  "alignment_json": "docs/data/xperience10m_dataset_card_alignment.json",
6
  "alignment_summary": {
7
  "full_dataset_repo": "ropedia-ai/xperience-10m",
data/task_surface_integrity.json CHANGED
@@ -1,6 +1,6 @@
1
  {
2
  "status": "pass",
3
- "generated_at_utc": "2026-06-23T03:06:28+00:00",
4
  "summary": {
5
  "original_walkthrough_task_count": 12,
6
  "expected_original_walkthrough_task_count": 12,
 
1
  {
2
  "status": "pass",
3
+ "generated_at_utc": "2026-06-23T03:50:22+00:00",
4
  "summary": {
5
  "original_walkthrough_task_count": 12,
6
  "expected_original_walkthrough_task_count": 12,
data/website_integrity.json CHANGED
@@ -1,6 +1,6 @@
1
  {
2
  "status": "pass",
3
- "generated_at_utc": "2026-06-23T03:06:29+00:00",
4
  "docs_root": "docs",
5
  "site_base": "/ropedia-xperience-10m-task-suite/",
6
  "summary": {
@@ -80,8 +80,8 @@
80
  "name": "project_overview_precedes_progress_ledger",
81
  "status": "pass",
82
  "reason": "The project overview should appear before the deeper progress ledger.",
83
- "overview_index": 186995,
84
- "evidence_index": 245403
85
  },
86
  {
87
  "name": "project_status_links_json",
@@ -159,9 +159,9 @@
159
  "name": "evaluation_protocol_between_overview_and_progress",
160
  "status": "pass",
161
  "reason": "The evaluation protocol should appear before the deeper evidence ledger.",
162
- "overview_index": 186995,
163
- "protocol_index": 241608,
164
- "evidence_index": 245403
165
  },
166
  {
167
  "name": "evaluation_protocol_links_json",
 
1
  {
2
  "status": "pass",
3
+ "generated_at_utc": "2026-06-23T03:50:22+00:00",
4
  "docs_root": "docs",
5
  "site_base": "/ropedia-xperience-10m-task-suite/",
6
  "summary": {
 
80
  "name": "project_overview_precedes_progress_ledger",
81
  "status": "pass",
82
  "reason": "The project overview should appear before the deeper progress ledger.",
83
+ "overview_index": 188047,
84
+ "evidence_index": 246455
85
  },
86
  {
87
  "name": "project_status_links_json",
 
159
  "name": "evaluation_protocol_between_overview_and_progress",
160
  "status": "pass",
161
  "reason": "The evaluation protocol should appear before the deeper evidence ledger.",
162
+ "overview_index": 188047,
163
+ "protocol_index": 242660,
164
+ "evidence_index": 246455
165
  },
166
  {
167
  "name": "evaluation_protocol_links_json",
docs/data/artifact_index.json CHANGED
@@ -1,6 +1,6 @@
1
  {
2
  "title": "Ropedia Xperience-10M Task Suite Artifact Index",
3
- "generated_at_utc": "2026-06-23T03:07:05+00:00",
4
  "status": "pass",
5
  "artifact_count": 228,
6
  "missing": [],
@@ -632,7 +632,7 @@
632
  "shows": "Machine-readable source-alignment pass/fail check for repo, website, and HF surfaces.",
633
  "exists": true,
634
  "bytes": 4432,
635
- "sha256": "175d9497e52dad6ff584132775165dd330fa8c6ce5417057c9d13ff6f7da345f"
636
  },
637
  {
638
  "id": "source_alignment_validator",
@@ -653,8 +653,8 @@
653
  "surface": "repo_hf",
654
  "shows": "Publishes prepared Space, artifact dataset, and model bundles, including an explicit model-binary upload batch.",
655
  "exists": true,
656
- "bytes": 29935,
657
- "sha256": "89ed1b25784cd42f19f2e4731eaa52e8655e8ed06cc2a12b6a2c0add027c5fc0"
658
  },
659
  {
660
  "id": "github_package_dockerfile",
@@ -1182,7 +1182,7 @@
1182
  "shows": "Machine-readable release-check summary for validators, mirrors, and public project surfaces.",
1183
  "exists": true,
1184
  "bytes": 8640,
1185
- "sha256": "f3431121d44018da781e47822f75e0f0715998ad958388d568a825c24c47a78b"
1186
  },
1187
  {
1188
  "id": "public_surface_qa",
 
1
  {
2
  "title": "Ropedia Xperience-10M Task Suite Artifact Index",
3
+ "generated_at_utc": "2026-06-23T03:51:33+00:00",
4
  "status": "pass",
5
  "artifact_count": 228,
6
  "missing": [],
 
632
  "shows": "Machine-readable source-alignment pass/fail check for repo, website, and HF surfaces.",
633
  "exists": true,
634
  "bytes": 4432,
635
+ "sha256": "17e2c0f8ddf4953402bdd79c5b51d0d9803b95f490fbe550d82c61ffc198d557"
636
  },
637
  {
638
  "id": "source_alignment_validator",
 
653
  "surface": "repo_hf",
654
  "shows": "Publishes prepared Space, artifact dataset, and model bundles, including an explicit model-binary upload batch.",
655
  "exists": true,
656
+ "bytes": 30196,
657
+ "sha256": "e6b9ab59c0a2cd1ad285287084c038e5898e38ca8a44e31dd3b9db21a4227ad1"
658
  },
659
  {
660
  "id": "github_package_dockerfile",
 
1182
  "shows": "Machine-readable release-check summary for validators, mirrors, and public project surfaces.",
1183
  "exists": true,
1184
  "bytes": 8640,
1185
+ "sha256": "55caa2a4d88dbe110a4a4f8f30545454ec62d5d6af1f3cee7360d4e036cf520b"
1186
  },
1187
  {
1188
  "id": "public_surface_qa",
docs/data/public_surface_qa.json CHANGED
@@ -1,7 +1,7 @@
1
  {
2
  "title": "Ropedia Xperience-10M Public Project Surface",
3
  "status": "pass",
4
- "generated_at_utc": "2026-06-23T03:07:04+00:00",
5
  "scope": "Repo README, GitHub Pages HTML, Hugging Face Space card, artifact dataset card, and model card.",
6
  "checks": [
7
  {
@@ -18,7 +18,7 @@
18
  "website_integrity": {
19
  "exists": true,
20
  "status": "pass",
21
- "generated_at_utc": "2026-06-23T03:06:29+00:00"
22
  },
23
  "rendered_site_check": {
24
  "exists": true,
@@ -28,12 +28,12 @@
28
  "task_surface_integrity": {
29
  "exists": true,
30
  "status": "pass",
31
- "generated_at_utc": "2026-06-23T03:06:28+00:00"
32
  },
33
  "source_alignment": {
34
  "exists": true,
35
  "status": "pass",
36
- "generated_at_utc": "2026-06-23T03:06:28+00:00"
37
  },
38
  "scale_up_status": {
39
  "exists": true,
@@ -43,12 +43,12 @@
43
  "publication_package": {
44
  "exists": true,
45
  "status": "pass",
46
- "generated_at_utc": "2026-06-23T03:06:49+00:00"
47
  },
48
  "mirror_parity": {
49
  "exists": true,
50
  "status": "pass",
51
- "generated_at_utc": "2026-06-23T00:22:16+00:00"
52
  }
53
  },
54
  "failures": {}
 
1
  {
2
  "title": "Ropedia Xperience-10M Public Project Surface",
3
  "status": "pass",
4
+ "generated_at_utc": "2026-06-23T03:51:31+00:00",
5
  "scope": "Repo README, GitHub Pages HTML, Hugging Face Space card, artifact dataset card, and model card.",
6
  "checks": [
7
  {
 
18
  "website_integrity": {
19
  "exists": true,
20
  "status": "pass",
21
+ "generated_at_utc": "2026-06-23T03:50:22+00:00"
22
  },
23
  "rendered_site_check": {
24
  "exists": true,
 
28
  "task_surface_integrity": {
29
  "exists": true,
30
  "status": "pass",
31
+ "generated_at_utc": "2026-06-23T03:50:22+00:00"
32
  },
33
  "source_alignment": {
34
  "exists": true,
35
  "status": "pass",
36
+ "generated_at_utc": "2026-06-23T03:50:21+00:00"
37
  },
38
  "scale_up_status": {
39
  "exists": true,
 
43
  "publication_package": {
44
  "exists": true,
45
  "status": "pass",
46
+ "generated_at_utc": "2026-06-23T03:50:38+00:00"
47
  },
48
  "mirror_parity": {
49
  "exists": true,
50
  "status": "pass",
51
+ "generated_at_utc": "2026-06-23T03:20:53+00:00"
52
  }
53
  },
54
  "failures": {}
docs/data/publication_audit.json CHANGED
@@ -1,6 +1,6 @@
1
  {
2
  "status": "pass",
3
- "generated_at_utc": "2026-06-23T03:06:49+00:00",
4
  "checks": [
5
  {
6
  "name": "required_publication_assets_present",
 
1
  {
2
  "status": "pass",
3
+ "generated_at_utc": "2026-06-23T03:50:38+00:00",
4
  "checks": [
5
  {
6
  "name": "required_publication_assets_present",
docs/data/quality_gates.json CHANGED
@@ -1,7 +1,7 @@
1
  {
2
  "title": "Ropedia Xperience-10M Release Checks",
3
  "status": "pass",
4
- "generated_at_utc": "2026-06-23T03:07:04+00:00",
5
  "rule": "A release is current when the automated reports pass and the live GitHub/Hugging Face mirrors are verified after publishing.",
6
  "automated_gates": [
7
  {
 
1
  {
2
  "title": "Ropedia Xperience-10M Release Checks",
3
  "status": "pass",
4
+ "generated_at_utc": "2026-06-23T03:51:32+00:00",
5
  "rule": "A release is current when the automated reports pass and the live GitHub/Hugging Face mirrors are verified after publishing.",
6
  "automated_gates": [
7
  {
docs/data/source_alignment_audit.json CHANGED
@@ -1,7 +1,7 @@
1
  {
2
  "title": "Ropedia Xperience-10M Source Alignment Note",
3
  "status": "pass",
4
- "generated_at_utc": "2026-06-23T03:06:28+00:00",
5
  "alignment_json": "docs/data/xperience10m_dataset_card_alignment.json",
6
  "alignment_summary": {
7
  "full_dataset_repo": "ropedia-ai/xperience-10m",
 
1
  {
2
  "title": "Ropedia Xperience-10M Source Alignment Note",
3
  "status": "pass",
4
+ "generated_at_utc": "2026-06-23T03:50:21+00:00",
5
  "alignment_json": "docs/data/xperience10m_dataset_card_alignment.json",
6
  "alignment_summary": {
7
  "full_dataset_repo": "ropedia-ai/xperience-10m",
docs/data/task_surface_integrity.json CHANGED
@@ -1,6 +1,6 @@
1
  {
2
  "status": "pass",
3
- "generated_at_utc": "2026-06-23T03:06:28+00:00",
4
  "summary": {
5
  "original_walkthrough_task_count": 12,
6
  "expected_original_walkthrough_task_count": 12,
 
1
  {
2
  "status": "pass",
3
+ "generated_at_utc": "2026-06-23T03:50:22+00:00",
4
  "summary": {
5
  "original_walkthrough_task_count": 12,
6
  "expected_original_walkthrough_task_count": 12,
docs/data/website_integrity.json CHANGED
@@ -1,6 +1,6 @@
1
  {
2
  "status": "pass",
3
- "generated_at_utc": "2026-06-23T03:06:29+00:00",
4
  "docs_root": "docs",
5
  "site_base": "/ropedia-xperience-10m-task-suite/",
6
  "summary": {
@@ -80,8 +80,8 @@
80
  "name": "project_overview_precedes_progress_ledger",
81
  "status": "pass",
82
  "reason": "The project overview should appear before the deeper progress ledger.",
83
- "overview_index": 186995,
84
- "evidence_index": 245403
85
  },
86
  {
87
  "name": "project_status_links_json",
@@ -159,9 +159,9 @@
159
  "name": "evaluation_protocol_between_overview_and_progress",
160
  "status": "pass",
161
  "reason": "The evaluation protocol should appear before the deeper evidence ledger.",
162
- "overview_index": 186995,
163
- "protocol_index": 241608,
164
- "evidence_index": 245403
165
  },
166
  {
167
  "name": "evaluation_protocol_links_json",
 
1
  {
2
  "status": "pass",
3
+ "generated_at_utc": "2026-06-23T03:50:22+00:00",
4
  "docs_root": "docs",
5
  "site_base": "/ropedia-xperience-10m-task-suite/",
6
  "summary": {
 
80
  "name": "project_overview_precedes_progress_ledger",
81
  "status": "pass",
82
  "reason": "The project overview should appear before the deeper progress ledger.",
83
+ "overview_index": 188047,
84
+ "evidence_index": 246455
85
  },
86
  {
87
  "name": "project_status_links_json",
 
159
  "name": "evaluation_protocol_between_overview_and_progress",
160
  "status": "pass",
161
  "reason": "The evaluation protocol should appear before the deeper evidence ledger.",
162
+ "overview_index": 188047,
163
+ "protocol_index": 242660,
164
+ "evidence_index": 246455
165
  },
166
  {
167
  "name": "evaluation_protocol_links_json",
docs/index.html CHANGED
@@ -2478,6 +2478,40 @@
2478
  border-bottom: 1px solid rgba(204, 255, 160, 0.28);
2479
  background: rgba(2, 5, 2, 0.98);
2480
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2481
  .result-matrix-stat .term-with-help,
2482
  .matrix-legend-pill .term-with-help,
2483
  .method-cell .term-with-help,
@@ -9519,6 +9553,82 @@ python scripts/validate_publication_package.py</code></pre>
9519
  return `<span class="term-with-help"><span>${escapeHtml(label)}</span>${infoIcon(term, termDefinition(term))}</span>`;
9520
  }
9521
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9522
  function methodGlossaryTerms(method) {
9523
  const text = `${method.id || ""} ${method.label || ""} ${method.short_label || ""} ${method.method_detail || ""}`.toLowerCase();
9524
  const terms = [];
@@ -10100,6 +10210,7 @@ python scripts/validate_publication_package.py</code></pre>
10100
  });
10101
  });
10102
  labelResponsiveTables();
 
10103
  initGlossaryControls();
10104
  initGlossaryData();
10105
  initResultMatrixTable();
 
2478
  border-bottom: 1px solid rgba(204, 255, 160, 0.28);
2479
  background: rgba(2, 5, 2, 0.98);
2480
  }
2481
+ .tooltip-portal-ready .term-tooltip {
2482
+ display: none !important;
2483
+ }
2484
+ .term-floating-tooltip {
2485
+ position: fixed;
2486
+ left: 0;
2487
+ top: 0;
2488
+ z-index: 10000;
2489
+ width: min(360px, calc(100vw - 24px));
2490
+ max-width: calc(100vw - 24px);
2491
+ transform: translate3d(var(--tooltip-x, 12px), var(--tooltip-y, 12px), 0);
2492
+ opacity: 0;
2493
+ pointer-events: none;
2494
+ border: 1px solid rgba(204, 255, 160, 0.32);
2495
+ border-radius: 10px;
2496
+ background:
2497
+ linear-gradient(180deg, rgba(12, 22, 11, 0.99), rgba(2, 5, 2, 0.99));
2498
+ box-shadow: 0 20px 54px rgba(0, 0, 0, 0.58), 0 0 0 1px rgba(204, 255, 160, 0.07) inset;
2499
+ color: var(--text);
2500
+ padding: 11px 12px;
2501
+ font-family: var(--font-copy);
2502
+ font-size: var(--type-sm);
2503
+ font-weight: 620;
2504
+ letter-spacing: 0;
2505
+ line-height: 1.42;
2506
+ text-align: left;
2507
+ text-transform: none;
2508
+ white-space: normal;
2509
+ visibility: hidden;
2510
+ }
2511
+ .term-floating-tooltip.show {
2512
+ opacity: 1;
2513
+ visibility: visible;
2514
+ }
2515
  .result-matrix-stat .term-with-help,
2516
  .matrix-legend-pill .term-with-help,
2517
  .method-cell .term-with-help,
 
9553
  return `<span class="term-with-help"><span>${escapeHtml(label)}</span>${infoIcon(term, termDefinition(term))}</span>`;
9554
  }
9555
 
9556
+ function initTermTooltipPortal() {
9557
+ const tooltip = document.createElement("div");
9558
+ tooltip.className = "term-floating-tooltip";
9559
+ tooltip.id = "termFloatingTooltip";
9560
+ tooltip.setAttribute("role", "tooltip");
9561
+ tooltip.setAttribute("aria-hidden", "true");
9562
+ document.body.appendChild(tooltip);
9563
+ document.body.classList.add("tooltip-portal-ready");
9564
+ let activeHelp = null;
9565
+
9566
+ const tooltipText = (help) => {
9567
+ const inlineTooltip = help?.querySelector(".term-tooltip");
9568
+ const text = inlineTooltip?.textContent || help?.getAttribute("title") || help?.getAttribute("aria-label") || "";
9569
+ return text.replace(/\s+/g, " ").trim();
9570
+ };
9571
+
9572
+ const positionTooltip = () => {
9573
+ if (!activeHelp) return;
9574
+ const text = tooltipText(activeHelp);
9575
+ if (!text) return;
9576
+ tooltip.textContent = text;
9577
+ tooltip.setAttribute("aria-hidden", "false");
9578
+ tooltip.classList.add("show");
9579
+ const helpRect = activeHelp.getBoundingClientRect();
9580
+ const tooltipRect = tooltip.getBoundingClientRect();
9581
+ const gap = 10;
9582
+ const margin = 12;
9583
+ let x = helpRect.left + (helpRect.width / 2) - (tooltipRect.width / 2);
9584
+ x = Math.max(margin, Math.min(x, window.innerWidth - tooltipRect.width - margin));
9585
+ let y = helpRect.top - tooltipRect.height - gap;
9586
+ if (y < margin) y = helpRect.bottom + gap;
9587
+ y = Math.max(margin, Math.min(y, window.innerHeight - tooltipRect.height - margin));
9588
+ tooltip.style.setProperty("--tooltip-x", `${Math.round(x)}px`);
9589
+ tooltip.style.setProperty("--tooltip-y", `${Math.round(y)}px`);
9590
+ };
9591
+
9592
+ const showTooltip = (help) => {
9593
+ if (!help || !tooltipText(help)) return;
9594
+ activeHelp = help;
9595
+ help.setAttribute("aria-describedby", tooltip.id);
9596
+ positionTooltip();
9597
+ };
9598
+
9599
+ const hideTooltip = (help = activeHelp) => {
9600
+ if (help) help.removeAttribute("aria-describedby");
9601
+ if (help && activeHelp && help !== activeHelp) return;
9602
+ activeHelp = null;
9603
+ tooltip.classList.remove("show");
9604
+ tooltip.setAttribute("aria-hidden", "true");
9605
+ };
9606
+
9607
+ document.addEventListener("pointerover", (event) => {
9608
+ const help = event.target.closest?.(".term-help");
9609
+ if (!help || help.contains(event.relatedTarget)) return;
9610
+ showTooltip(help);
9611
+ });
9612
+ document.addEventListener("pointerout", (event) => {
9613
+ const help = event.target.closest?.(".term-help");
9614
+ if (!help || help.contains(event.relatedTarget)) return;
9615
+ hideTooltip(help);
9616
+ });
9617
+ document.addEventListener("focusin", (event) => {
9618
+ const help = event.target.closest?.(".term-help");
9619
+ if (help) showTooltip(help);
9620
+ });
9621
+ document.addEventListener("focusout", (event) => {
9622
+ const help = event.target.closest?.(".term-help");
9623
+ if (help) hideTooltip(help);
9624
+ });
9625
+ document.addEventListener("keydown", (event) => {
9626
+ if (event.key === "Escape") hideTooltip();
9627
+ });
9628
+ window.addEventListener("scroll", positionTooltip, { passive: true });
9629
+ window.addEventListener("resize", positionTooltip);
9630
+ }
9631
+
9632
  function methodGlossaryTerms(method) {
9633
  const text = `${method.id || ""} ${method.label || ""} ${method.short_label || ""} ${method.method_detail || ""}`.toLowerCase();
9634
  const terms = [];
 
10210
  });
10211
  });
10212
  labelResponsiveTables();
10213
+ initTermTooltipPortal();
10214
  initGlossaryControls();
10215
  initGlossaryData();
10216
  initResultMatrixTable();
index.html CHANGED
@@ -2478,6 +2478,40 @@
2478
  border-bottom: 1px solid rgba(204, 255, 160, 0.28);
2479
  background: rgba(2, 5, 2, 0.98);
2480
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2481
  .result-matrix-stat .term-with-help,
2482
  .matrix-legend-pill .term-with-help,
2483
  .method-cell .term-with-help,
@@ -9519,6 +9553,82 @@ python scripts/validate_publication_package.py</code></pre>
9519
  return `<span class="term-with-help"><span>${escapeHtml(label)}</span>${infoIcon(term, termDefinition(term))}</span>`;
9520
  }
9521
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9522
  function methodGlossaryTerms(method) {
9523
  const text = `${method.id || ""} ${method.label || ""} ${method.short_label || ""} ${method.method_detail || ""}`.toLowerCase();
9524
  const terms = [];
@@ -10100,6 +10210,7 @@ python scripts/validate_publication_package.py</code></pre>
10100
  });
10101
  });
10102
  labelResponsiveTables();
 
10103
  initGlossaryControls();
10104
  initGlossaryData();
10105
  initResultMatrixTable();
 
2478
  border-bottom: 1px solid rgba(204, 255, 160, 0.28);
2479
  background: rgba(2, 5, 2, 0.98);
2480
  }
2481
+ .tooltip-portal-ready .term-tooltip {
2482
+ display: none !important;
2483
+ }
2484
+ .term-floating-tooltip {
2485
+ position: fixed;
2486
+ left: 0;
2487
+ top: 0;
2488
+ z-index: 10000;
2489
+ width: min(360px, calc(100vw - 24px));
2490
+ max-width: calc(100vw - 24px);
2491
+ transform: translate3d(var(--tooltip-x, 12px), var(--tooltip-y, 12px), 0);
2492
+ opacity: 0;
2493
+ pointer-events: none;
2494
+ border: 1px solid rgba(204, 255, 160, 0.32);
2495
+ border-radius: 10px;
2496
+ background:
2497
+ linear-gradient(180deg, rgba(12, 22, 11, 0.99), rgba(2, 5, 2, 0.99));
2498
+ box-shadow: 0 20px 54px rgba(0, 0, 0, 0.58), 0 0 0 1px rgba(204, 255, 160, 0.07) inset;
2499
+ color: var(--text);
2500
+ padding: 11px 12px;
2501
+ font-family: var(--font-copy);
2502
+ font-size: var(--type-sm);
2503
+ font-weight: 620;
2504
+ letter-spacing: 0;
2505
+ line-height: 1.42;
2506
+ text-align: left;
2507
+ text-transform: none;
2508
+ white-space: normal;
2509
+ visibility: hidden;
2510
+ }
2511
+ .term-floating-tooltip.show {
2512
+ opacity: 1;
2513
+ visibility: visible;
2514
+ }
2515
  .result-matrix-stat .term-with-help,
2516
  .matrix-legend-pill .term-with-help,
2517
  .method-cell .term-with-help,
 
9553
  return `<span class="term-with-help"><span>${escapeHtml(label)}</span>${infoIcon(term, termDefinition(term))}</span>`;
9554
  }
9555
 
9556
+ function initTermTooltipPortal() {
9557
+ const tooltip = document.createElement("div");
9558
+ tooltip.className = "term-floating-tooltip";
9559
+ tooltip.id = "termFloatingTooltip";
9560
+ tooltip.setAttribute("role", "tooltip");
9561
+ tooltip.setAttribute("aria-hidden", "true");
9562
+ document.body.appendChild(tooltip);
9563
+ document.body.classList.add("tooltip-portal-ready");
9564
+ let activeHelp = null;
9565
+
9566
+ const tooltipText = (help) => {
9567
+ const inlineTooltip = help?.querySelector(".term-tooltip");
9568
+ const text = inlineTooltip?.textContent || help?.getAttribute("title") || help?.getAttribute("aria-label") || "";
9569
+ return text.replace(/\s+/g, " ").trim();
9570
+ };
9571
+
9572
+ const positionTooltip = () => {
9573
+ if (!activeHelp) return;
9574
+ const text = tooltipText(activeHelp);
9575
+ if (!text) return;
9576
+ tooltip.textContent = text;
9577
+ tooltip.setAttribute("aria-hidden", "false");
9578
+ tooltip.classList.add("show");
9579
+ const helpRect = activeHelp.getBoundingClientRect();
9580
+ const tooltipRect = tooltip.getBoundingClientRect();
9581
+ const gap = 10;
9582
+ const margin = 12;
9583
+ let x = helpRect.left + (helpRect.width / 2) - (tooltipRect.width / 2);
9584
+ x = Math.max(margin, Math.min(x, window.innerWidth - tooltipRect.width - margin));
9585
+ let y = helpRect.top - tooltipRect.height - gap;
9586
+ if (y < margin) y = helpRect.bottom + gap;
9587
+ y = Math.max(margin, Math.min(y, window.innerHeight - tooltipRect.height - margin));
9588
+ tooltip.style.setProperty("--tooltip-x", `${Math.round(x)}px`);
9589
+ tooltip.style.setProperty("--tooltip-y", `${Math.round(y)}px`);
9590
+ };
9591
+
9592
+ const showTooltip = (help) => {
9593
+ if (!help || !tooltipText(help)) return;
9594
+ activeHelp = help;
9595
+ help.setAttribute("aria-describedby", tooltip.id);
9596
+ positionTooltip();
9597
+ };
9598
+
9599
+ const hideTooltip = (help = activeHelp) => {
9600
+ if (help) help.removeAttribute("aria-describedby");
9601
+ if (help && activeHelp && help !== activeHelp) return;
9602
+ activeHelp = null;
9603
+ tooltip.classList.remove("show");
9604
+ tooltip.setAttribute("aria-hidden", "true");
9605
+ };
9606
+
9607
+ document.addEventListener("pointerover", (event) => {
9608
+ const help = event.target.closest?.(".term-help");
9609
+ if (!help || help.contains(event.relatedTarget)) return;
9610
+ showTooltip(help);
9611
+ });
9612
+ document.addEventListener("pointerout", (event) => {
9613
+ const help = event.target.closest?.(".term-help");
9614
+ if (!help || help.contains(event.relatedTarget)) return;
9615
+ hideTooltip(help);
9616
+ });
9617
+ document.addEventListener("focusin", (event) => {
9618
+ const help = event.target.closest?.(".term-help");
9619
+ if (help) showTooltip(help);
9620
+ });
9621
+ document.addEventListener("focusout", (event) => {
9622
+ const help = event.target.closest?.(".term-help");
9623
+ if (help) hideTooltip(help);
9624
+ });
9625
+ document.addEventListener("keydown", (event) => {
9626
+ if (event.key === "Escape") hideTooltip();
9627
+ });
9628
+ window.addEventListener("scroll", positionTooltip, { passive: true });
9629
+ window.addEventListener("resize", positionTooltip);
9630
+ }
9631
+
9632
  function methodGlossaryTerms(method) {
9633
  const text = `${method.id || ""} ${method.label || ""} ${method.short_label || ""} ${method.method_detail || ""}`.toLowerCase();
9634
  const terms = [];
 
10210
  });
10211
  });
10212
  labelResponsiveTables();
10213
+ initTermTooltipPortal();
10214
  initGlossaryControls();
10215
  initGlossaryData();
10216
  initResultMatrixTable();
metrics/artifact_index.json CHANGED
@@ -1,6 +1,6 @@
1
  {
2
  "title": "Ropedia Xperience-10M Task Suite Artifact Index",
3
- "generated_at_utc": "2026-06-23T03:07:05+00:00",
4
  "status": "pass",
5
  "artifact_count": 228,
6
  "missing": [],
@@ -632,7 +632,7 @@
632
  "shows": "Machine-readable source-alignment pass/fail check for repo, website, and HF surfaces.",
633
  "exists": true,
634
  "bytes": 4432,
635
- "sha256": "175d9497e52dad6ff584132775165dd330fa8c6ce5417057c9d13ff6f7da345f"
636
  },
637
  {
638
  "id": "source_alignment_validator",
@@ -653,8 +653,8 @@
653
  "surface": "repo_hf",
654
  "shows": "Publishes prepared Space, artifact dataset, and model bundles, including an explicit model-binary upload batch.",
655
  "exists": true,
656
- "bytes": 29935,
657
- "sha256": "89ed1b25784cd42f19f2e4731eaa52e8655e8ed06cc2a12b6a2c0add027c5fc0"
658
  },
659
  {
660
  "id": "github_package_dockerfile",
@@ -1182,7 +1182,7 @@
1182
  "shows": "Machine-readable release-check summary for validators, mirrors, and public project surfaces.",
1183
  "exists": true,
1184
  "bytes": 8640,
1185
- "sha256": "f3431121d44018da781e47822f75e0f0715998ad958388d568a825c24c47a78b"
1186
  },
1187
  {
1188
  "id": "public_surface_qa",
 
1
  {
2
  "title": "Ropedia Xperience-10M Task Suite Artifact Index",
3
+ "generated_at_utc": "2026-06-23T03:51:33+00:00",
4
  "status": "pass",
5
  "artifact_count": 228,
6
  "missing": [],
 
632
  "shows": "Machine-readable source-alignment pass/fail check for repo, website, and HF surfaces.",
633
  "exists": true,
634
  "bytes": 4432,
635
+ "sha256": "17e2c0f8ddf4953402bdd79c5b51d0d9803b95f490fbe550d82c61ffc198d557"
636
  },
637
  {
638
  "id": "source_alignment_validator",
 
653
  "surface": "repo_hf",
654
  "shows": "Publishes prepared Space, artifact dataset, and model bundles, including an explicit model-binary upload batch.",
655
  "exists": true,
656
+ "bytes": 30196,
657
+ "sha256": "e6b9ab59c0a2cd1ad285287084c038e5898e38ca8a44e31dd3b9db21a4227ad1"
658
  },
659
  {
660
  "id": "github_package_dockerfile",
 
1182
  "shows": "Machine-readable release-check summary for validators, mirrors, and public project surfaces.",
1183
  "exists": true,
1184
  "bytes": 8640,
1185
+ "sha256": "55caa2a4d88dbe110a4a4f8f30545454ec62d5d6af1f3cee7360d4e036cf520b"
1186
  },
1187
  {
1188
  "id": "public_surface_qa",
metrics/public_surface_qa.json CHANGED
@@ -1,7 +1,7 @@
1
  {
2
  "title": "Ropedia Xperience-10M Public Project Surface",
3
  "status": "pass",
4
- "generated_at_utc": "2026-06-23T03:07:04+00:00",
5
  "scope": "Repo README, GitHub Pages HTML, Hugging Face Space card, artifact dataset card, and model card.",
6
  "checks": [
7
  {
@@ -18,7 +18,7 @@
18
  "website_integrity": {
19
  "exists": true,
20
  "status": "pass",
21
- "generated_at_utc": "2026-06-23T03:06:29+00:00"
22
  },
23
  "rendered_site_check": {
24
  "exists": true,
@@ -28,12 +28,12 @@
28
  "task_surface_integrity": {
29
  "exists": true,
30
  "status": "pass",
31
- "generated_at_utc": "2026-06-23T03:06:28+00:00"
32
  },
33
  "source_alignment": {
34
  "exists": true,
35
  "status": "pass",
36
- "generated_at_utc": "2026-06-23T03:06:28+00:00"
37
  },
38
  "scale_up_status": {
39
  "exists": true,
@@ -43,12 +43,12 @@
43
  "publication_package": {
44
  "exists": true,
45
  "status": "pass",
46
- "generated_at_utc": "2026-06-23T03:06:49+00:00"
47
  },
48
  "mirror_parity": {
49
  "exists": true,
50
  "status": "pass",
51
- "generated_at_utc": "2026-06-23T00:22:16+00:00"
52
  }
53
  },
54
  "failures": {}
 
1
  {
2
  "title": "Ropedia Xperience-10M Public Project Surface",
3
  "status": "pass",
4
+ "generated_at_utc": "2026-06-23T03:51:31+00:00",
5
  "scope": "Repo README, GitHub Pages HTML, Hugging Face Space card, artifact dataset card, and model card.",
6
  "checks": [
7
  {
 
18
  "website_integrity": {
19
  "exists": true,
20
  "status": "pass",
21
+ "generated_at_utc": "2026-06-23T03:50:22+00:00"
22
  },
23
  "rendered_site_check": {
24
  "exists": true,
 
28
  "task_surface_integrity": {
29
  "exists": true,
30
  "status": "pass",
31
+ "generated_at_utc": "2026-06-23T03:50:22+00:00"
32
  },
33
  "source_alignment": {
34
  "exists": true,
35
  "status": "pass",
36
+ "generated_at_utc": "2026-06-23T03:50:21+00:00"
37
  },
38
  "scale_up_status": {
39
  "exists": true,
 
43
  "publication_package": {
44
  "exists": true,
45
  "status": "pass",
46
+ "generated_at_utc": "2026-06-23T03:50:38+00:00"
47
  },
48
  "mirror_parity": {
49
  "exists": true,
50
  "status": "pass",
51
+ "generated_at_utc": "2026-06-23T03:20:53+00:00"
52
  }
53
  },
54
  "failures": {}
metrics/publication_audit.json CHANGED
@@ -1,6 +1,6 @@
1
  {
2
  "status": "pass",
3
- "generated_at_utc": "2026-06-23T03:06:49+00:00",
4
  "checks": [
5
  {
6
  "name": "required_publication_assets_present",
 
1
  {
2
  "status": "pass",
3
+ "generated_at_utc": "2026-06-23T03:50:38+00:00",
4
  "checks": [
5
  {
6
  "name": "required_publication_assets_present",
metrics/quality_gates.json CHANGED
@@ -1,7 +1,7 @@
1
  {
2
  "title": "Ropedia Xperience-10M Release Checks",
3
  "status": "pass",
4
- "generated_at_utc": "2026-06-23T03:07:04+00:00",
5
  "rule": "A release is current when the automated reports pass and the live GitHub/Hugging Face mirrors are verified after publishing.",
6
  "automated_gates": [
7
  {
 
1
  {
2
  "title": "Ropedia Xperience-10M Release Checks",
3
  "status": "pass",
4
+ "generated_at_utc": "2026-06-23T03:51:32+00:00",
5
  "rule": "A release is current when the automated reports pass and the live GitHub/Hugging Face mirrors are verified after publishing.",
6
  "automated_gates": [
7
  {
metrics/source_alignment_audit.json CHANGED
@@ -1,7 +1,7 @@
1
  {
2
  "title": "Ropedia Xperience-10M Source Alignment Note",
3
  "status": "pass",
4
- "generated_at_utc": "2026-06-23T03:06:28+00:00",
5
  "alignment_json": "docs/data/xperience10m_dataset_card_alignment.json",
6
  "alignment_summary": {
7
  "full_dataset_repo": "ropedia-ai/xperience-10m",
 
1
  {
2
  "title": "Ropedia Xperience-10M Source Alignment Note",
3
  "status": "pass",
4
+ "generated_at_utc": "2026-06-23T03:50:21+00:00",
5
  "alignment_json": "docs/data/xperience10m_dataset_card_alignment.json",
6
  "alignment_summary": {
7
  "full_dataset_repo": "ropedia-ai/xperience-10m",
metrics/task_surface_integrity.json CHANGED
@@ -1,6 +1,6 @@
1
  {
2
  "status": "pass",
3
- "generated_at_utc": "2026-06-23T03:06:28+00:00",
4
  "summary": {
5
  "original_walkthrough_task_count": 12,
6
  "expected_original_walkthrough_task_count": 12,
 
1
  {
2
  "status": "pass",
3
+ "generated_at_utc": "2026-06-23T03:50:22+00:00",
4
  "summary": {
5
  "original_walkthrough_task_count": 12,
6
  "expected_original_walkthrough_task_count": 12,
metrics/website_integrity.json CHANGED
@@ -1,6 +1,6 @@
1
  {
2
  "status": "pass",
3
- "generated_at_utc": "2026-06-23T03:06:29+00:00",
4
  "docs_root": "docs",
5
  "site_base": "/ropedia-xperience-10m-task-suite/",
6
  "summary": {
@@ -80,8 +80,8 @@
80
  "name": "project_overview_precedes_progress_ledger",
81
  "status": "pass",
82
  "reason": "The project overview should appear before the deeper progress ledger.",
83
- "overview_index": 186995,
84
- "evidence_index": 245403
85
  },
86
  {
87
  "name": "project_status_links_json",
@@ -159,9 +159,9 @@
159
  "name": "evaluation_protocol_between_overview_and_progress",
160
  "status": "pass",
161
  "reason": "The evaluation protocol should appear before the deeper evidence ledger.",
162
- "overview_index": 186995,
163
- "protocol_index": 241608,
164
- "evidence_index": 245403
165
  },
166
  {
167
  "name": "evaluation_protocol_links_json",
 
1
  {
2
  "status": "pass",
3
+ "generated_at_utc": "2026-06-23T03:50:22+00:00",
4
  "docs_root": "docs",
5
  "site_base": "/ropedia-xperience-10m-task-suite/",
6
  "summary": {
 
80
  "name": "project_overview_precedes_progress_ledger",
81
  "status": "pass",
82
  "reason": "The project overview should appear before the deeper progress ledger.",
83
+ "overview_index": 188047,
84
+ "evidence_index": 246455
85
  },
86
  {
87
  "name": "project_status_links_json",
 
159
  "name": "evaluation_protocol_between_overview_and_progress",
160
  "status": "pass",
161
  "reason": "The evaluation protocol should appear before the deeper evidence ledger.",
162
+ "overview_index": 188047,
163
+ "protocol_index": 242660,
164
+ "evidence_index": 246455
165
  },
166
  {
167
  "name": "evaluation_protocol_links_json",
scripts/publish_hf_bundles.py CHANGED
@@ -23,6 +23,11 @@ import os
23
  import shutil
24
  from pathlib import Path
25
 
 
 
 
 
 
26
  from huggingface_hub import HfApi, get_token
27
 
28
 
 
23
  import shutil
24
  from pathlib import Path
25
 
26
+ # The local macOS Python environment can mix x86_64 Python with an arm64
27
+ # hf_xet wheel. Disable Xet by default so public bundle uploads use the stable
28
+ # HTTP/LFS path unless the caller explicitly opts back in.
29
+ os.environ.setdefault("HF_HUB_DISABLE_XET", "1")
30
+
31
  from huggingface_hub import HfApi, get_token
32
 
33