Migrations 113-117 not in applied/ though their objects are live; 117 is untracked entirely
Migrations 113, 114, 115, 116 and 117 sit in db/migrations/ or are untracked, not in db/migrations/applied/ with the rest of the corpus, although their objects EXIST LIVE - 117 created practicas_live_natural_key_idx, which is currently backing a UNIQUE constraint on practicas and which PLUTO-740's migration 121 had to reason about. 117 specifically is UNTRACKED in git (git status shows ?? db/migrations/applied/117-pluto-728-canonical-pieza-natural-key.sql), so the DDL that created a live unique index is not in the repository at all. Why it matters rather than being tidiness: applied/ is what a reader treats as the record of what ran, so a migration that ran and is not there makes the next person's dependency clearance wrong in the safe-looking direction - exactly the failure PLUTO-740 hit, where PLUTO-666's 'zero expression indexes reference these functions' clearance was true when written and false six weeks later because 117 had landed in between and was invisible. Scope: determine for each of 113-117 whether it actually ran (compare against the live catalog, not against the filename), move the ones that did into applied/, commit 117 so it is tracked, and leave a note on any that genuinely did not run. Do NOT blanket-move on filename alone.
Activity
-
113-116 verified live against catalog (pg_views/pg_proc/pg_extension), moved to db/migrations/applied/; 117's index also live, now tracked. SHA 429572f, pushed to main. Class-S floor: /api/health post-429572f returns version=2.23.115 (the bump this push carried) + dbOk=true, deploymentId dpl_AdKx3DE7AHL4eULSdxP1k257D4Ku - live-version match confirmed. Deploy-status READY/SHA read via Vercel MCP connector BLOCKED - this session's connector has zero project/team scope (list_deployments and get_deployment both return empty/404 regardless of filter), consistent with prior PLUTO-146 finding. Health-endpoint match is the only Class-S evidence available from this seat.