Skip to content

PM-5787: Allow deferred checkpoint screener assignment - #2135

Open
jmgasper wants to merge 1 commit into
devfrom
PM-5787-2
Open

PM-5787: Allow deferred checkpoint screener assignment#2135
jmgasper wants to merge 1 commit into
devfrom
PM-5787-2

Conversation

@jmgasper

Copy link
Copy Markdown
Collaborator

What was broken

The first PM-5787 fix made the standard Screener assignment optional and taught Autopilot to wait for screeners. The second fix preserved later Review assignments when Screening was empty. QA then confirmed that Checkpoint Screener was still required, so two-round Design challenges could not be saved or launched without assigning that role up front.

Root cause

The shared UI helper that controls schema validation, save and launch validation, and member-field required state matched only the exact Screening phase name. Its implementation and tests explicitly excluded Checkpoint Screening.

What was changed

  • Treat member assignments for both Screening and Checkpoint Screening as deferrable.
  • Keep both reviewer configurations, phase selections, reviewer counts, and scorecards required.
  • Keep Review, Checkpoint Review, Approval, and other closed manual-review assignments required.
  • Preserve the earlier resource allocator fix so empty screening rows cannot consume a later Review member.
  • Update the Challenge Editor documentation for both Screener roles.
  • Leave Autopilot unchanged because its merged assignment gate already covers both screening phase names, maps Checkpoint Screening to the Checkpoint Screener role, waits when the resource is absent, and opens the phase after assignment.

Any added/updated tests

  • Updated schema coverage for an unassigned Checkpoint Screener using a phase-instance id.
  • Updated field coverage to confirm Screening and Checkpoint Screening are optional while Review remains required.
  • Updated Save as Draft and launch integration coverage to include both empty screening assignments.
  • Extended allocator and hydration coverage so empty Screening and Checkpoint Screening rows leave a generic Reviewer resource on Review.
  • Focused validation passes: 4 suites, 124 tests.
  • yarn lint, yarn run build, and git diff --check pass. The build retains existing repository warnings.
  • The full repository command reports 222 passing suites and 1,080 passing tests, with 18 failing suites and 27 failing tests. A separate clean origin/dev control run produced the exact same counts and failures, confirming that baseline is unrelated to PM-5787.

What was broken

The previous PM-5787 changes allowed the standard Screener assignment to be deferred, but an empty Checkpoint Screener assignment still blocked draft saves and launches.

Root cause

The shared optional-assignment helper matched only the exact Screening phase name and explicitly excluded Checkpoint Screening.

What was changed

Extended the optional member-assignment policy to both Screening and Checkpoint Screening while keeping their reviewer configurations and scorecards required. Updated the Challenge Editor documentation to describe both deferred roles.

Any added/updated tests

Updated schema, required-field, save, launch, resource-allocation, and hydration coverage for an unassigned Checkpoint Screener. The four focused suites pass with 124 tests; lint and the production build pass. The full repository run matches the clean dev baseline with 222 passing suites and 18 unrelated failing suites.
@jmgasper
jmgasper requested a review from kkartunov as a code owner August 12, 2026 08:42
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.

1 participant