Closer/functions/dist/couples
null 8a9bd41fe5 fix(functions): rebuild stale dist + predeploy build hook (FUNCTIONS-DIST-STALE)
The phrase-change 🔑 alert never fired live because the deployed artifact
didn't contain it — functions/dist is committed and is what deploys, and I
changed functions/src without rebuilding it. My own gates were green and
irrelevant: tsc --noEmit emits nothing, ts-jest compiles in memory. The user
deployed twice, faithfully, and shipped my stale artifact both times. "git
status clean" is not "deployable current".

Two fixes: dist rebuilt (diff confirms exactly one stale function,
onCoupleKeyRotated — the phrase edge), and firebase.json now carries a
predeploy hook (npm run build) so every functions deploy compiles first —
the mistake class is structurally gone rather than remembered. Landmine
written up as FUNCTIONS-DIST-STALE in the manual: when verifying "is X
deployed", compare against dist/, not src/ — src is the intent, dist is
the truth.

Functions tests green (108).
2026-07-16 01:29:20 -05:00
..
acceptInviteCallable.js refactor(functions): B3 migrate 12 callables to v2 + harden 2026-07-07 23:58:32 -05:00
acceptInviteCallable.js.map refactor(functions): B3 migrate 12 callables to v2 + harden 2026-07-07 23:58:32 -05:00
aggregateOutcomes.js perf(functions): B6b bound the unbounded couple scanners (#10) 2026-07-08 00:05:32 -05:00
aggregateOutcomes.js.map perf(functions): B6b bound the unbounded couple scanners (#10) 2026-07-08 00:05:32 -05:00
aggregateOutcomes.test.js build(functions): compile dist for outcome aggregation 2026-07-06 21:10:02 -05:00
aggregateOutcomes.test.js.map build(functions): compile dist for outcome aggregation 2026-07-06 21:10:02 -05:00
createInviteCallable.js refactor(functions): B3 migrate 12 callables to v2 + harden 2026-07-07 23:58:32 -05:00
createInviteCallable.js.map refactor(functions): B3 migrate 12 callables to v2 + harden 2026-07-07 23:58:32 -05:00
leaveCoupleCallable.js refactor(functions): B3 migrate 12 callables to v2 + harden 2026-07-07 23:58:32 -05:00
leaveCoupleCallable.js.map refactor(functions): B3 migrate 12 callables to v2 + harden 2026-07-07 23:58:32 -05:00
onCoupleKeyRotated.js fix(functions): rebuild stale dist + predeploy build hook (FUNCTIONS-DIST-STALE) 2026-07-16 01:29:20 -05:00
onCoupleKeyRotated.js.map fix(functions): rebuild stale dist + predeploy build hook (FUNCTIONS-DIST-STALE) 2026-07-16 01:29:20 -05:00
onCoupleKeyRotated.test.js fix(functions): rebuild stale dist + predeploy build hook (FUNCTIONS-DIST-STALE) 2026-07-16 01:29:20 -05:00
onCoupleKeyRotated.test.js.map fix(functions): rebuild stale dist + predeploy build hook (FUNCTIONS-DIST-STALE) 2026-07-16 01:29:20 -05:00
onCoupleLeave.js refactor(functions): B1 migrate 13 Firestore triggers to v2 + harden 2026-07-07 23:46:17 -05:00
onCoupleLeave.js.map refactor(functions): B1 migrate 13 Firestore triggers to v2 + harden 2026-07-07 23:46:17 -05:00
scheduledOutcomesReminder.js refactor(functions): B2 migrate 8 scheduled functions to v2 + harden 2026-07-07 23:50:59 -05:00
scheduledOutcomesReminder.js.map refactor(functions): B2 migrate 8 scheduled functions to v2 + harden 2026-07-07 23:50:59 -05:00
submitOutcomeCallable.js refactor(functions): B3 migrate 12 callables to v2 + harden 2026-07-07 23:58:32 -05:00
submitOutcomeCallable.js.map refactor(functions): B3 migrate 12 callables to v2 + harden 2026-07-07 23:58:32 -05:00