Skip to content

Review CMP system-evaluation and notification behavior from 598c028f #149

Description

@alexeygrigorev

Parent: #148

Context

CMP commit 598c028fcd5cf30d4b1cdcae344bcc2193adc2c9 introduces substantive adopted-platform behavior beyond the current target overlays. The exact review identified a cohesive feature set:

  • system-project-evaluation models/exports, API schemas/operations, migration, and consumers;
  • explicit peer-review and score notification actions in Studio Courses templates, URLs, views, and characterization tests;
  • notification side effects moved out of assignment/scoring paths.

The scheduled drift report 31745422903 is status=blocked, applied=false; no source bytes have been copied or applied. #148 records the per-path checksums and keeps the target-owned overlays intact.

Scope

Review the upstream feature at the immutable source commit and determine which behavior is required for the adopted course platform. Preserve the literal CMP implementation and tests when accepted, while retaining the target-owned Studio Courses namespace, security boundaries, registration aggregate seam, and project-state presentation overlays. Where behavior is not in scope for the website release, record an explicit exclusion and rationale.

If accepted, prepare the minimal target overlay updates and source-pin synchronization as a separate reviewed change; do not hide substantive behavior inside a checksum refresh. Preserve migration history and add any required migration/upgrade/replay evidence.

Acceptance criteria

  • A reviewed contract maps every upstream changed file and behavior to an explicit disposition: adopt, defer with rationale, or separate follow-up.
  • Course-domain owners confirm whether system evaluation and peer-review/score notification behavior belongs in the current release; unknown policy remains fail closed.
  • Adopted behavior is copied literally from the exact source commit where possible, with only recorded target-owned overlays retained. No reimplementation or second course UI is introduced.
  • API, Studio Courses routes/templates, notifications, model/migration, and characterization tests preserve the CMP behavior and the website's existing security/identity/Relay boundaries.
  • Migration tests cover fresh install, upgrade from the pinned graph, idempotent replay, and SQLite ordinary CI; no production/private data is used.
  • Exact CMP sync dry-run becomes conflict-free (ready or no_change) only after every affected overlay is reviewed and the source pin/manifest change is independently tested; no --apply occurs before that gate.
  • Independent tester and PM reports cover the changed domain and render-impacting Studio/API surfaces, including desktop/mobile screenshots where applicable.

Non-goals

Dependencies

Follow _docs/PROCESS.md: PM grooming, isolated engineer worktree, independent tester, PM acceptance, then local merge/push; no pull request.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P0Must-have or release-blockingcoursesArea: coursesdata-migrationArea: data-migrationintegrationArea: integrationtestingArea: testing

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions