|
| 1 | +# BUILD_PR_STYLE_SAMPLES_INDEX_DATA_DRIVEN_LIST_RESTORE |
| 2 | + |
| 3 | +## Purpose |
| 4 | +Restore the real data-driven samples index behavior on `/samples/index.html` so it shows phase descriptions, all samples within each phase, and sample pinning behavior. |
| 5 | + |
| 6 | +## Single PR Purpose |
| 7 | +Fix `/samples/index.html` so it renders the full sample list model correctly instead of collapsing each phase to a single `xx01` launch entry. |
| 8 | + |
| 9 | +## Confirmed Regression |
| 10 | +Current behavior is still wrong: |
| 11 | +- phases display |
| 12 | +- each phase launches only `xx01` |
| 13 | +- phase descriptions are missing |
| 14 | +- per-sample details are missing |
| 15 | +- pinning behavior is missing |
| 16 | +- the real sample list is not being rendered |
| 17 | + |
| 18 | +## Required Correct Behavior |
| 19 | +`/samples/index.html` must restore the original intended samples index behavior: |
| 20 | +1. show each phase |
| 21 | +2. show the phase description |
| 22 | +3. show all samples within each phase |
| 23 | +4. show per-sample details sourced from the sample list data |
| 24 | +5. preserve/restore sample pinning behavior |
| 25 | +6. keep filter behavior working |
| 26 | +7. keep the shared header/body style consistency work intact |
| 27 | + |
| 28 | +## Required Fix Direction |
| 29 | +1. Identify the actual samples index data source / rendering path. |
| 30 | +2. Restore rendering from that source instead of using a simplified phase-to-`xx01` shortcut. |
| 31 | +3. Restore phase description rendering. |
| 32 | +4. Restore all sample entries per phase. |
| 33 | +5. Restore sample pinning behavior. |
| 34 | +6. Preserve the shared style migration work already completed. |
| 35 | + |
| 36 | +## Likely Root Causes To Check |
| 37 | +- simplified phase-only rendering path introduced during refactor |
| 38 | +- wrong data source selected for samples page |
| 39 | +- phase metadata loaded but sample metadata ignored |
| 40 | +- grouping loop reduced to one sample per phase |
| 41 | +- template/render function no longer iterates the full sample list |
| 42 | +- pinned sample state/UI removed or disconnected |
| 43 | +- old samples index script path not being used |
| 44 | +- partial restore focused only on phases, not the underlying list model |
| 45 | + |
| 46 | +## Required Rules |
| 47 | +- no embedded `<style>` blocks |
| 48 | +- no inline `style=""` |
| 49 | +- no JS-generated styling |
| 50 | +- keep scope limited to `/samples/index.html` and directly related sample-index data/rendering dependencies |
| 51 | +- preserve the shared header/body consistency fixes |
| 52 | +- restore behavior, do not redesign |
| 53 | + |
| 54 | +## Acceptance |
| 55 | +- `/samples/index.html` shows phase descriptions |
| 56 | +- `/samples/index.html` shows all samples within each phase |
| 57 | +- `/samples/index.html` shows per-sample details from the sample list data |
| 58 | +- sample pinning behavior is restored |
| 59 | +- filter behavior continues to work |
| 60 | +- header/body consistency remains correct |
| 61 | +- page is visually and functionally testable |
0 commit comments