The reading of the full reading's fixes found that every refusal at the address's ceiling moved a reset to 72 hours after it (A1): someone who knows only the address kept the owner's own reset from ever taking effect with one burst every three days, and kept a forgotten one alive (A2). Now a hold-out that begins before a reset takes effect moves it on only by the time it holds the owner out and no hold-out counted before did (account_reset.heldOutUntil, under a row lock), so the owner gets 72 hours outside hold-outs in total; and every reset not carried out lapses 30 days after it was asked (resetLivesAtMost), whatever moved it, besides a week after it took effect. Migration (module, Learn's and Todo's servers, Learn's device schema): ALTER TABLE "account_reset" ADD COLUMN "heldOutUntil" timestamp without time zone; nullable, existing rows counted from now on. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
33 lines
No EOL
853 B
JSON
33 lines
No EOL
853 B
JSON
{
|
|
"__className__": "serverpod.DatabaseMigration",
|
|
"actions": [
|
|
{
|
|
"__className__": "serverpod.DatabaseMigrationAction",
|
|
"type": "alterTable",
|
|
"alterTable": {
|
|
"__className__": "serverpod.TableMigration",
|
|
"name": "account_reset",
|
|
"schema": "public",
|
|
"addColumns": [
|
|
{
|
|
"__className__": "serverpod.ColumnDefinition",
|
|
"name": "heldOutUntil",
|
|
"fieldName": "heldOutUntil",
|
|
"columnType": 4,
|
|
"isNullable": true,
|
|
"dartType": "DateTime?"
|
|
}
|
|
],
|
|
"deleteColumns": [],
|
|
"modifyColumns": [],
|
|
"addIndexes": [],
|
|
"deleteIndexes": [],
|
|
"addForeignKeys": [],
|
|
"deleteForeignKeys": [],
|
|
"warnings": []
|
|
}
|
|
}
|
|
],
|
|
"warnings": [],
|
|
"migrationApiVersion": 1
|
|
} |