Commit a76fa67
Drive the lab tables and three new views from lab frontmatter
Per-task section, difficulty and duration previously existed only as prose in
the hand-written "Lab at a glance" tables on the three landing pages. Nothing
validated them against the task pages they described.
Moves that data into task frontmatter (type, parent, order, section,
difficulty, duration, access) and adds three surfaces built from it:
- workshop.html - instructor-led core path, ordered by lab then task, with
cumulative elapsed time and gated tasks called out as demo-only.
- explore.html - every task as a card, filterable by lab, section, level,
duration and access.
- labs.json - the same catalogue as a machine-readable endpoint.
The landing page tables are generated too, but written into the markdown by
tools/generate_lab_blocks.py rather than a Liquid include. The lab pages are
read directly by platforms that never run Liquid - GitHub's own renderer
returns a bare "{% include ... %}" where the table should be - so the
generated content lives between HTML comment markers, which are invisible
everywhere. --check makes drift a build failure, in the same pattern as
Labfiles/_shared/sync.py.
The web-only pages keep Liquid; they are never consumed as raw markdown.
Also corrects metadata the backfill exposed:
- level was 300 on every task page, inherited from the lab, while the tables
listed L200-L400. Level now matches difficulty everywhere.
- islab removed from task pages; tasks are steps within a lab, not labs.
- B2, B3 and B4 marked access: gated, each recording what it needs and how to
check, so the lock icons and the workshop callouts come from one source.
Verified: generated tables reproduce the totals the prose stated by hand
(A 35 min core / 2h25, B 35/1h50, C 30/2h), the generator is idempotent, a
corrupted block fails --check with a diff, and all three views render.
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: dc4690cc-57d6-48a7-abc8-bc8570113ab11 parent 5017f7f commit a76fa67
26 files changed
Lines changed: 823 additions & 39 deletions
File tree
- .github/workflows
- Instructions/Consolidated
- tools
- checks
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
50 | 50 | | |
51 | 51 | | |
52 | 52 | | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
Lines changed: 15 additions & 7 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
6 | 12 | | |
7 | 13 | | |
8 | | - | |
9 | 14 | | |
10 | 15 | | |
11 | 16 | | |
| |||
121 | 126 | | |
122 | 127 | | |
123 | 128 | | |
124 | | - | |
125 | | - | |
126 | | - | |
| 129 | + | |
| 130 | + | |
127 | 131 | | |
| 132 | + | |
128 | 133 | | |
129 | 134 | | |
130 | | - | |
131 | | - | |
| 135 | + | |
| 136 | + | |
132 | 137 | | |
133 | 138 | | |
134 | | - | |
| 139 | + | |
135 | 140 | | |
136 | 141 | | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
137 | 145 | | |
138 | 146 | | |
139 | 147 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
6 | 11 | | |
7 | 12 | | |
8 | 13 | | |
| |||
Lines changed: 8 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | | - | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
7 | 14 | | |
8 | | - | |
9 | 15 | | |
10 | 16 | | |
11 | 17 | | |
| |||
Lines changed: 7 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
6 | 13 | | |
7 | 14 | | |
8 | | - | |
9 | 15 | | |
10 | 16 | | |
11 | 17 | | |
| |||
Lines changed: 7 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
6 | 13 | | |
7 | 14 | | |
8 | | - | |
9 | 15 | | |
10 | 16 | | |
11 | 17 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
6 | 13 | | |
7 | 14 | | |
8 | | - | |
9 | 15 | | |
10 | 16 | | |
11 | 17 | | |
| |||
Lines changed: 8 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | | - | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
7 | 14 | | |
8 | | - | |
9 | 15 | | |
10 | 16 | | |
11 | 17 | | |
| |||
Lines changed: 7 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
6 | 13 | | |
7 | 14 | | |
8 | | - | |
9 | 15 | | |
10 | 16 | | |
11 | 17 | | |
| |||
Lines changed: 19 additions & 7 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
6 | 12 | | |
7 | 13 | | |
8 | | - | |
9 | 14 | | |
10 | 15 | | |
11 | 16 | | |
| |||
118 | 123 | | |
119 | 124 | | |
120 | 125 | | |
121 | | - | |
122 | | - | |
123 | | - | |
| 126 | + | |
| 127 | + | |
124 | 128 | | |
| 129 | + | |
125 | 130 | | |
126 | 131 | | |
127 | 132 | | |
128 | | - | |
129 | | - | |
130 | | - | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
131 | 143 | | |
132 | 144 | | |
133 | 145 | | |
| |||
0 commit comments