Skip to content

Phase 5 PR 4: e1m playwright variant — UseOneMinuteIntervals=true#1550

Merged
renemadsen merged 1 commit into
stablefrom
feat/use-one-minute-intervals-phase-5-pr4-e1m
May 3, 2026
Merged

Phase 5 PR 4: e1m playwright variant — UseOneMinuteIntervals=true#1550
renemadsen merged 1 commit into
stablefrom
feat/use-one-minute-intervals-phase-5-pr4-e1m

Conversation

@renemadsen
Copy link
Copy Markdown
Member

Summary

Phase 5 PR 4 of 9 — adds the e1m shard to the variant matrix that exercises the flag-on (UseOneMinuteIntervals=1) code paths. Direct continuation of PR #1545 (b1m), PR #1548 (c1m), PR #1549 (d1m).

  • Adds e1m/ with 4 files: 420_SDK.sql and 420_eform-angular-time-planning-plugin.sql (copies of a/), post-migration.sql (flips the flag for every active assigned site), and dashboard-edit-multishift.spec.ts (multi-shift round-trip test).
  • Adds new off-grid constants OFFGRID_TIMES_E1M to eform-client/playwright/helpers/one-minute-times.ts parked in the small-hour outer ring 01-11 of the timepicker clock face. Mirrors d1m on the opposite side of the dial: b1m=mid-morning band, c1m=outer→inner transition, d1m=inner-ring 13-23, e1m=outer-ring 01-11. Matrix as a whole now touches every quadrant.
  • Adds e1m to matrix.test: in both .github/workflows/dotnet-core-master.yml and dotnet-core-pr.yml.

Why this shape, not e/dashboard-edit-a clone

The e shard's original specs (e/dashboard-edit-a.spec.ts) only fill shift 1 with edge values (01:00 / 00:00) — the partial-shift / midnight-wrap shape that hits the still-unresolved success:false path inside TimePlanningPlanningService.Update (see PR #1545 / PR #1548 / PR #1549 lessons). Per the brainstorm map, e1m therefore ships the proven multishift-shape clone that b1m/c1m/d1m ship.

Test plan

  • CI green on e1m matrix entry
  • No regression on a..q, b1m, c1m, d1m matrix entries

🤖 Generated with Claude Code

Adds the `e1m` shard to the variant matrix exercising the flag-on
(`UseOneMinuteIntervals=1`) rendering / form / picker code paths. Mirrors
the merged b1m/c1m/d1m pattern shipped by PR #1545 / PR #1548 / PR #1549:

  • Same baseline seed (`420_eform-angular-time-planning-plugin.sql` and
    `420_SDK.sql` are copies of `a/`).
  • Same `post-migration.sql` flipping `UseOneMinuteIntervals = 1` for
    every active assigned site (the workflow's generic post-migration
    step picks this up automatically).
  • Same multi-shift round-trip shape (fill all 5 ascending shifts, save,
    reload, assert every value round-tripped).

What's new in e1m: a fresh off-grid time block (`OFFGRID_TIMES_E1M`)
parked in the small-hour outer-ring 01-11 of the timepicker clock face,
mirroring d1m on the opposite side of the dial. b1m sweeps a narrower
mid-morning band (08-16), c1m straddles the outer→inner transition
(17-19), d1m parks every shift inside the inner ring (13-23); e1m
sweeps the small-hour outer ring (01-11). The variant matrix as a
whole now touches every quadrant of the 24-hour clock surface.

The e shard's original `e/dashboard-edit-a.spec.ts` (which only fills
shift 1 with edge values 01:00 / 00:00) is intentionally NOT cloned —
that partial-shift / midnight-wrap shape hits the still-unresolved
`success:false` path inside `TimePlanningPlanningService.Update`. Per
the brainstorm map, e1m therefore ships the proven multishift-shape
clone that b1m/c1m/d1m already ship.

Workflow change: adds `e1m` to `matrix.test:` in both `.github/
workflows/dotnet-core-master.yml` and `dotnet-core-pr.yml` so the new
shard runs in CI.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings May 3, 2026 17:42
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds the e1m Playwright shard variant to expand coverage of the UseOneMinuteIntervals=1 (“1-minute gap”) code paths by exercising off-grid times in the small-hour outer-ring portion of the timepicker, continuing the b1m/c1m/d1m variant-matrix rollout.

Changes:

  • Introduces new e1m/ shard assets (seed SQL copies, post-migration patch flipping UseOneMinuteIntervals, and a multishift round-trip spec).
  • Extends one-minute-times.ts with OFFGRID_TIMES_E1M for shared off-grid literals used by the new shard.
  • Adds e1m to the Playwright matrix in both PR and master GitHub Actions workflows.

Reviewed changes

Copilot reviewed 5 out of 7 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
eform-client/playwright/helpers/one-minute-times.ts Adds OFFGRID_TIMES_E1M constant bundle for the new shard’s off-grid time literals.
eform-client/playwright/e2e/plugins/time-planning-pn/e1m/post-migration.sql Flips UseOneMinuteIntervals=1 for created AssignedSites after migrations.
eform-client/playwright/e2e/plugins/time-planning-pn/e1m/dashboard-edit-multishift.spec.ts New multishift planned-hours save/reload round-trip regression test using E1M times.
eform-client/playwright/e2e/plugins/time-planning-pn/e1m/420_SDK.sql Shard-owned seed SQL (copy of baseline seed).
eform-client/playwright/e2e/plugins/time-planning-pn/e1m/420_eform-angular-time-planning-plugin.sql Shard-owned plugin DB seed SQL (copy of baseline seed).
.github/workflows/dotnet-core-pr.yml Adds e1m to the PR Playwright matrix.
.github/workflows/dotnet-core-master.yml Adds e1m to the master Playwright matrix.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +81 to +85
* outer-ring 1-10 (and 11-12) hour selectors of the timepicker clock face,
* deliberately crossing the inner→outer boundary at hour 12. b1m sweeps a
* narrower mid-morning band (08-16), c1m straddles outer→inner around 17-19,
* d1m parks inside the inner ring (13-23). e1m mirrors d1m on the opposite
* side of the clock by sweeping the small-hour outer ring (01-10) so the
Comment on lines +8 to +13
* small-hour outer-ring (01-10) hour positions of the timepicker clock face,
* deliberately crossing the 12 boundary. b1m sweeps a narrower mid-morning
* band (08-16), c1m straddles the outer→inner transition around 17-19, d1m
* parks every shift inside the inner ring (13-23); e1m mirrors d1m on the
* opposite side by sweeping the small-hour outer ring (01-11). The variant
* matrix as a whole now exercises every quadrant of the 24-hour clock surface.
@renemadsen renemadsen merged commit 3e603f3 into stable May 3, 2026
37 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants