@jantstack/adonis-authz 2.4.0-alpha.9 → 2.5.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. package/README.md +468 -30
  2. package/build/commands/authz_freeze.js +1 -1
  3. package/build/commands/authz_freeze.js.map +1 -1
  4. package/build/commands/authz_reconcile.d.ts +6 -2
  5. package/build/commands/authz_reconcile.d.ts.map +1 -1
  6. package/build/commands/authz_reconcile.js +129 -13
  7. package/build/commands/authz_reconcile.js.map +1 -1
  8. package/build/commands/authz_relations_reconcile.d.ts +16 -24
  9. package/build/commands/authz_relations_reconcile.d.ts.map +1 -1
  10. package/build/commands/authz_relations_reconcile.js +198 -49
  11. package/build/commands/authz_relations_reconcile.js.map +1 -1
  12. package/build/commands/authz_scopes_relay.d.ts.map +1 -1
  13. package/build/commands/authz_scopes_relay.js +81 -1
  14. package/build/commands/authz_scopes_relay.js.map +1 -1
  15. package/build/commands/authz_unfreeze.d.ts +12 -4
  16. package/build/commands/authz_unfreeze.d.ts.map +1 -1
  17. package/build/commands/authz_unfreeze.js +74 -9
  18. package/build/commands/authz_unfreeze.js.map +1 -1
  19. package/build/index.d.ts +6 -4
  20. package/build/index.d.ts.map +1 -1
  21. package/build/index.js +5 -3
  22. package/build/index.js.map +1 -1
  23. package/build/providers/authz_provider.d.ts +1 -1
  24. package/build/providers/authz_provider.d.ts.map +1 -1
  25. package/build/providers/authz_provider.js +5 -1
  26. package/build/providers/authz_provider.js.map +1 -1
  27. package/build/src/define_config.d.ts +41 -0
  28. package/build/src/define_config.d.ts.map +1 -1
  29. package/build/src/define_config.js +120 -0
  30. package/build/src/define_config.js.map +1 -1
  31. package/build/src/drivers/database_driver.d.ts.map +1 -1
  32. package/build/src/drivers/database_driver.js +1 -0
  33. package/build/src/drivers/database_driver.js.map +1 -1
  34. package/build/src/drivers/database_relations_driver.d.ts +18 -6
  35. package/build/src/drivers/database_relations_driver.d.ts.map +1 -1
  36. package/build/src/drivers/database_relations_driver.js +94 -46
  37. package/build/src/drivers/database_relations_driver.js.map +1 -1
  38. package/build/src/drivers/openfga_driver.d.ts +46 -5
  39. package/build/src/drivers/openfga_driver.d.ts.map +1 -1
  40. package/build/src/drivers/openfga_driver.js +115 -29
  41. package/build/src/drivers/openfga_driver.js.map +1 -1
  42. package/build/src/drivers/openfga_relations_driver.d.ts +82 -13
  43. package/build/src/drivers/openfga_relations_driver.d.ts.map +1 -1
  44. package/build/src/drivers/openfga_relations_driver.js +216 -55
  45. package/build/src/drivers/openfga_relations_driver.js.map +1 -1
  46. package/build/src/errors.d.ts +86 -0
  47. package/build/src/errors.d.ts.map +1 -1
  48. package/build/src/errors.js +86 -0
  49. package/build/src/errors.js.map +1 -1
  50. package/build/src/freeze.d.ts +63 -4
  51. package/build/src/freeze.d.ts.map +1 -1
  52. package/build/src/freeze.js +107 -18
  53. package/build/src/freeze.js.map +1 -1
  54. package/build/src/identity.d.ts +120 -9
  55. package/build/src/identity.d.ts.map +1 -1
  56. package/build/src/identity.js +164 -12
  57. package/build/src/identity.js.map +1 -1
  58. package/build/src/manager.d.ts +64 -2
  59. package/build/src/manager.d.ts.map +1 -1
  60. package/build/src/manager.js +267 -35
  61. package/build/src/manager.js.map +1 -1
  62. package/build/src/openfga.d.ts +2 -2
  63. package/build/src/openfga.d.ts.map +1 -1
  64. package/build/src/openfga.js +2 -2
  65. package/build/src/openfga.js.map +1 -1
  66. package/build/src/relations/check_many.d.ts +17 -0
  67. package/build/src/relations/check_many.d.ts.map +1 -0
  68. package/build/src/relations/check_many.js +57 -0
  69. package/build/src/relations/check_many.js.map +1 -0
  70. package/build/src/relations/define_relations_config.d.ts +74 -1
  71. package/build/src/relations/define_relations_config.d.ts.map +1 -1
  72. package/build/src/relations/define_relations_config.js +201 -7
  73. package/build/src/relations/define_relations_config.js.map +1 -1
  74. package/build/src/relations/manager.d.ts +20 -0
  75. package/build/src/relations/manager.d.ts.map +1 -1
  76. package/build/src/relations/manager.js +88 -15
  77. package/build/src/relations/manager.js.map +1 -1
  78. package/build/src/relations/reconcile.d.ts +134 -3
  79. package/build/src/relations/reconcile.d.ts.map +1 -1
  80. package/build/src/relations/reconcile.js +340 -36
  81. package/build/src/relations/reconcile.js.map +1 -1
  82. package/build/src/relations/tuple_key.d.ts +25 -0
  83. package/build/src/relations/tuple_key.d.ts.map +1 -0
  84. package/build/src/relations/tuple_key.js +60 -0
  85. package/build/src/relations/tuple_key.js.map +1 -0
  86. package/build/src/relations_config_store.d.ts.map +1 -1
  87. package/build/src/relations_config_store.js +29 -7
  88. package/build/src/relations_config_store.js.map +1 -1
  89. package/build/src/relations_reconcile.d.ts +79 -0
  90. package/build/src/relations_reconcile.d.ts.map +1 -0
  91. package/build/src/relations_reconcile.js +85 -0
  92. package/build/src/relations_reconcile.js.map +1 -0
  93. package/build/src/scope_outbox.d.ts +9 -5
  94. package/build/src/scope_outbox.d.ts.map +1 -1
  95. package/build/src/scope_outbox.js +7 -4
  96. package/build/src/scope_outbox.js.map +1 -1
  97. package/build/src/shared/backend_guard.d.ts +30 -11
  98. package/build/src/shared/backend_guard.d.ts.map +1 -1
  99. package/build/src/shared/backend_guard.js +45 -15
  100. package/build/src/shared/backend_guard.js.map +1 -1
  101. package/build/src/shared/sql_expiry.d.ts +2 -0
  102. package/build/src/shared/sql_expiry.d.ts.map +1 -1
  103. package/build/src/shared/sql_expiry.js +4 -0
  104. package/build/src/shared/sql_expiry.js.map +1 -1
  105. package/build/src/testing/main.d.ts +3 -1
  106. package/build/src/testing/main.d.ts.map +1 -1
  107. package/build/src/testing/main.js +2 -1
  108. package/build/src/testing/main.js.map +1 -1
  109. package/build/src/testing/migration_contract.d.ts +9 -0
  110. package/build/src/testing/migration_contract.d.ts.map +1 -1
  111. package/build/src/testing/migration_contract.js +5 -2
  112. package/build/src/testing/migration_contract.js.map +1 -1
  113. package/build/src/testing/relations_contract.d.ts +14 -0
  114. package/build/src/testing/relations_contract.d.ts.map +1 -1
  115. package/build/src/testing/relations_contract.js +367 -21
  116. package/build/src/testing/relations_contract.js.map +1 -1
  117. package/build/src/testing/scope_outbox_contract.d.ts +14 -1
  118. package/build/src/testing/scope_outbox_contract.d.ts.map +1 -1
  119. package/build/src/testing/scope_outbox_contract.js +126 -48
  120. package/build/src/testing/scope_outbox_contract.js.map +1 -1
  121. package/build/src/testing/test_clock.d.ts +15 -0
  122. package/build/src/testing/test_clock.d.ts.map +1 -0
  123. package/build/src/testing/test_clock.js +65 -0
  124. package/build/src/testing/test_clock.js.map +1 -0
  125. package/build/src/types.d.ts +115 -12
  126. package/build/src/types.d.ts.map +1 -1
  127. package/build/src/types.js.map +1 -1
  128. package/package.json +6 -1
@@ -331,6 +331,15 @@ export declare class WriteConflictError extends Exception {
331
331
  static status: number;
332
332
  static code: string;
333
333
  }
334
+ /**
335
+ * **El lote de `checkMany` no tiene la forma admitida** (plan 2.5 · lote A,
336
+ * P4): vacío, o por encima de `RELATIONS_CHECK_MANY_MAX` (50). Es 422 con
337
+ * CERO llamadas al backend: pregunta inválida (invariante 5), no una caída.
338
+ */
339
+ export declare class CheckManyBatchError extends Exception {
340
+ static status: number;
341
+ static code: string;
342
+ }
334
343
  /**
335
344
  * `config.requireActor: true` y una escritura llegó sin `actor` (2.1, B7).
336
345
  * 422 antes de tocar el driver: una auditoría que exige saber quién ordenó
@@ -604,6 +613,20 @@ export declare class RelationConfigError extends Exception {
604
613
  static status: number;
605
614
  static code: string;
606
615
  }
616
+ /**
617
+ * **Una clave que la spec de relaciones no conoce** (plan 2.5 · lote B · B2;
618
+ * tester H3, linaje L5 — 5.ª iteración ⇒ propiedad universal: «ninguna clave
619
+ * de una spec de config se descarta»). Hasta `2.5.0-alpha.1` `defineRelationsConfig`
620
+ * copiaba solo `type`/`relations` y `name`/`includes` a la config congelada y
621
+ * TIRABA el resto en silencio: un `denny: true` (typo) era una entrada inerte y
622
+ * un `deny: true` leído por un proceso viejo republicaba el modelo sin
623
+ * `denied_*` sin que nada protestara. Subclase de `RelationConfigError` (misma
624
+ * familia, mismo `status`) con `code` propio para que el llamante distinga «la
625
+ * forma es inválida» de «esta clave no existe en este nivel».
626
+ */
627
+ export declare class RelationConfigUnknownKeyError extends RelationConfigError {
628
+ static code: string;
629
+ }
607
630
  /**
608
631
  * El árbol materializado del store no es un árbol (3b-2b, cruce 8). El
609
632
  * paquete escribe UNA arista `scope:<hijo>#parent@scope:<padre>` por nodo y
@@ -676,6 +699,47 @@ export declare class MassReconcileRefusedError extends Exception {
676
699
  static status: number;
677
700
  static code: string;
678
701
  }
702
+ /**
703
+ * Una operación iba a tomar el freeze y encontró la ventana del OPERADOR
704
+ * CADUCADA (2.4.0-alpha.10, S2 de la auditoría de sistema): motivo puesto,
705
+ * holder `operator:` y `untilMs` en el pasado. Hasta alpha.9 `acquireFreeze`
706
+ * pisaba esa fila en silencio —un lease vencido no bloquea la toma—, la pasada
707
+ * se certificaba con SU ventana de 15 s y al soltarla dejaba la fila a `NULL`:
708
+ * el último rastro de que la flota volvió a escribir a mitad del cutover lo
709
+ * borraba una pasada ajena, y `authz:unfreeze` decía «nada que levantar». 503
710
+ * antes de tomar nada; la salida es reconocerla con `authz:unfreeze` (que dice
711
+ * cuándo venció y limpia la fila) y reabrir la ventana con `authz:freeze`. La
712
+ * exclusión va DENTRO del `UPDATE` de `acquireFreezeOutcome` (cierre del
713
+ * auditor · R2): comprobar fuera y tomar después era un TOCTOU.
714
+ */
715
+ export declare class OperatorWindowExpiredError extends Exception {
716
+ static status: number;
717
+ static code: string;
718
+ }
719
+ /**
720
+ * `authz:reconcile --to=<driver ACTIVO> --from=<otro>`: la DIRECCIÓN RANCIA
721
+ * (2.4.0-alpha.10, 🔴 4 del sexto informe de COGNITIV; decisión del dueño del
722
+ * 2026-09-13 (4)).
723
+ *
724
+ * La regla 3b-5 dice que con `--from` manda el operador — **salvo hacia el
725
+ * driver activo**. Si el motor ya sirve desde `to`, sus hechos se escriben
726
+ * ahí desde el cutover y el origen dejó de verlos: con `openfga` activo,
727
+ * `--from=database` lee `authz_*` congeladas y re-escribe en el store vivo los
728
+ * roles revocados después, con o sin `--prune` (y el seguro de borrado masivo
729
+ * no salta: el origen no está vacío). 500 en el MANAGER —la API es la puerta,
730
+ * no el comando— antes de construir el origen, leer nada o congelar;
731
+ * `allowStaleSource: true` (`--allow-stale-source`) es la decisión humana y
732
+ * `dryRun` no lanza: lo marca en `report.staleSource`. Simétrico al seguro de
733
+ * `E_AUTHZ_MASS_PURGE_REFUSED`. El gemelo de relaciones lo lanza
734
+ * `runRelationsReconcile` (la única vía pública desde el cierre del auditor),
735
+ * juzgando el driver RESUELTO por su factory: un alias del activo también se
736
+ * niega. Límite declarado: «activo» es el `config.default` del PROCESO que corre
737
+ * la pasada (sello durable del driver activo: roadmap 2.5).
738
+ */
739
+ export declare class StaleSourceRefusedError extends Exception {
740
+ static status: number;
741
+ static code: string;
742
+ }
679
743
  /**
680
744
  * **El volcado del destino no cabe en la cota declarada** (3b-3b · B5).
681
745
  *
@@ -746,4 +810,26 @@ export declare class RelationUnknownError extends Exception {
746
810
  static status: number;
747
811
  static code: string;
748
812
  }
813
+ /**
814
+ * **Un userset que no es `group#member` como SUJETO** (plan 2.5 · lote B · B3;
815
+ * auditor [N 9] de la ronda 1, analista B(2)). El modelo fusionado solo
816
+ * admite UN userset en cada relación de dominio (`[<holders> with not_expired,
817
+ * group#member]`): un `document#viewer` como sujeto no existe en el modelo.
818
+ * Hasta `2.5.0-alpha.1` `database` guardaba la fila INERTE (ningún holder la
819
+ * alcanzaba) y `openfga` respondía 400 del servidor ⇒ 503 mal clasificado
820
+ * (invariante 5: una pregunta inválida es 422). Clase PROPIA (422), **no una
821
+ * subclase de `RelationUnknownError`** (cierre 1 del lote B, decisión 4 del
822
+ * implementador RECHAZADA, 🟠 2 del auditor): heredar de F-05 hacía que
823
+ * `relateOrSkip` del reconcile la TRAGARA como `skipped.undeclared` —motivo
824
+ * falso («decláralo en el destino»), `--dry-run` ≠ pasada real, sin `details`—,
825
+ * ampliando el patrón «422 ⇒ skipped vía el driver» que R2-5 manda evitar. El
826
+ * reconcile clasifica el residuo en el PLAN (`planPartition`, contador
827
+ * `skipped.usersetUnsupported`, entrada en `details`) y el driver no absorbe
828
+ * nada. Misma función, clase, `code` y mensaje en el manager, los dos drivers y
829
+ * el doble publicado (`assertUsersetSubject`).
830
+ */
831
+ export declare class RelationUsersetUnsupportedError extends Exception {
832
+ static status: number;
833
+ static code: string;
834
+ }
749
835
  //# sourceMappingURL=errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"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"}
@@ -382,6 +382,15 @@ export class WriteConflictError extends Exception {
382
382
  static status = 409;
383
383
  static code = 'E_AUTHZ_WRITE_CONFLICT';
384
384
  }
385
+ /**
386
+ * **El lote de `checkMany` no tiene la forma admitida** (plan 2.5 · lote A,
387
+ * P4): vacío, o por encima de `RELATIONS_CHECK_MANY_MAX` (50). Es 422 con
388
+ * CERO llamadas al backend: pregunta inválida (invariante 5), no una caída.
389
+ */
390
+ export class CheckManyBatchError extends Exception {
391
+ static status = 422;
392
+ static code = 'E_AUTHZ_CHECK_MANY_BATCH';
393
+ }
385
394
  /**
386
395
  * `config.requireActor: true` y una escritura llegó sin `actor` (2.1, B7).
387
396
  * 422 antes de tocar el driver: una auditoría que exige saber quién ordenó
@@ -648,6 +657,20 @@ export class RelationConfigError extends Exception {
648
657
  static status = 422;
649
658
  static code = 'E_AUTHZ_RELATION_CONFIG';
650
659
  }
660
+ /**
661
+ * **Una clave que la spec de relaciones no conoce** (plan 2.5 · lote B · B2;
662
+ * tester H3, linaje L5 — 5.ª iteración ⇒ propiedad universal: «ninguna clave
663
+ * de una spec de config se descarta»). Hasta `2.5.0-alpha.1` `defineRelationsConfig`
664
+ * copiaba solo `type`/`relations` y `name`/`includes` a la config congelada y
665
+ * TIRABA el resto en silencio: un `denny: true` (typo) era una entrada inerte y
666
+ * un `deny: true` leído por un proceso viejo republicaba el modelo sin
667
+ * `denied_*` sin que nada protestara. Subclase de `RelationConfigError` (misma
668
+ * familia, mismo `status`) con `code` propio para que el llamante distinga «la
669
+ * forma es inválida» de «esta clave no existe en este nivel».
670
+ */
671
+ export class RelationConfigUnknownKeyError extends RelationConfigError {
672
+ static code = 'E_AUTHZ_RELATION_CONFIG_UNKNOWN_KEY';
673
+ }
651
674
  /**
652
675
  * El árbol materializado del store no es un árbol (3b-2b, cruce 8). El
653
676
  * paquete escribe UNA arista `scope:<hijo>#parent@scope:<padre>` por nodo y
@@ -720,6 +743,47 @@ export class MassReconcileRefusedError extends Exception {
720
743
  static status = 500;
721
744
  static code = 'E_AUTHZ_MASS_RECONCILE_REFUSED';
722
745
  }
746
+ /**
747
+ * Una operación iba a tomar el freeze y encontró la ventana del OPERADOR
748
+ * CADUCADA (2.4.0-alpha.10, S2 de la auditoría de sistema): motivo puesto,
749
+ * holder `operator:` y `untilMs` en el pasado. Hasta alpha.9 `acquireFreeze`
750
+ * pisaba esa fila en silencio —un lease vencido no bloquea la toma—, la pasada
751
+ * se certificaba con SU ventana de 15 s y al soltarla dejaba la fila a `NULL`:
752
+ * el último rastro de que la flota volvió a escribir a mitad del cutover lo
753
+ * borraba una pasada ajena, y `authz:unfreeze` decía «nada que levantar». 503
754
+ * antes de tomar nada; la salida es reconocerla con `authz:unfreeze` (que dice
755
+ * cuándo venció y limpia la fila) y reabrir la ventana con `authz:freeze`. La
756
+ * exclusión va DENTRO del `UPDATE` de `acquireFreezeOutcome` (cierre del
757
+ * auditor · R2): comprobar fuera y tomar después era un TOCTOU.
758
+ */
759
+ export class OperatorWindowExpiredError extends Exception {
760
+ static status = 503;
761
+ static code = 'E_AUTHZ_OPERATOR_WINDOW_EXPIRED';
762
+ }
763
+ /**
764
+ * `authz:reconcile --to=<driver ACTIVO> --from=<otro>`: la DIRECCIÓN RANCIA
765
+ * (2.4.0-alpha.10, 🔴 4 del sexto informe de COGNITIV; decisión del dueño del
766
+ * 2026-09-13 (4)).
767
+ *
768
+ * La regla 3b-5 dice que con `--from` manda el operador — **salvo hacia el
769
+ * driver activo**. Si el motor ya sirve desde `to`, sus hechos se escriben
770
+ * ahí desde el cutover y el origen dejó de verlos: con `openfga` activo,
771
+ * `--from=database` lee `authz_*` congeladas y re-escribe en el store vivo los
772
+ * roles revocados después, con o sin `--prune` (y el seguro de borrado masivo
773
+ * no salta: el origen no está vacío). 500 en el MANAGER —la API es la puerta,
774
+ * no el comando— antes de construir el origen, leer nada o congelar;
775
+ * `allowStaleSource: true` (`--allow-stale-source`) es la decisión humana y
776
+ * `dryRun` no lanza: lo marca en `report.staleSource`. Simétrico al seguro de
777
+ * `E_AUTHZ_MASS_PURGE_REFUSED`. El gemelo de relaciones lo lanza
778
+ * `runRelationsReconcile` (la única vía pública desde el cierre del auditor),
779
+ * juzgando el driver RESUELTO por su factory: un alias del activo también se
780
+ * niega. Límite declarado: «activo» es el `config.default` del PROCESO que corre
781
+ * la pasada (sello durable del driver activo: roadmap 2.5).
782
+ */
783
+ export class StaleSourceRefusedError extends Exception {
784
+ static status = 500;
785
+ static code = 'E_AUTHZ_STALE_SOURCE_REFUSED';
786
+ }
723
787
  /**
724
788
  * **El volcado del destino no cabe en la cota declarada** (3b-3b · B5).
725
789
  *
@@ -790,4 +854,26 @@ export class RelationUnknownError extends Exception {
790
854
  static status = 422;
791
855
  static code = 'E_AUTHZ_RELATION_UNKNOWN';
792
856
  }
857
+ /**
858
+ * **Un userset que no es `group#member` como SUJETO** (plan 2.5 · lote B · B3;
859
+ * auditor [N 9] de la ronda 1, analista B(2)). El modelo fusionado solo
860
+ * admite UN userset en cada relación de dominio (`[<holders> with not_expired,
861
+ * group#member]`): un `document#viewer` como sujeto no existe en el modelo.
862
+ * Hasta `2.5.0-alpha.1` `database` guardaba la fila INERTE (ningún holder la
863
+ * alcanzaba) y `openfga` respondía 400 del servidor ⇒ 503 mal clasificado
864
+ * (invariante 5: una pregunta inválida es 422). Clase PROPIA (422), **no una
865
+ * subclase de `RelationUnknownError`** (cierre 1 del lote B, decisión 4 del
866
+ * implementador RECHAZADA, 🟠 2 del auditor): heredar de F-05 hacía que
867
+ * `relateOrSkip` del reconcile la TRAGARA como `skipped.undeclared` —motivo
868
+ * falso («decláralo en el destino»), `--dry-run` ≠ pasada real, sin `details`—,
869
+ * ampliando el patrón «422 ⇒ skipped vía el driver» que R2-5 manda evitar. El
870
+ * reconcile clasifica el residuo en el PLAN (`planPartition`, contador
871
+ * `skipped.usersetUnsupported`, entrada en `details`) y el driver no absorbe
872
+ * nada. Misma función, clase, `code` y mensaje en el manager, los dos drivers y
873
+ * el doble publicado (`assertUsersetSubject`).
874
+ */
875
+ export class RelationUsersetUnsupportedError extends Exception {
876
+ static status = 422;
877
+ static code = 'E_AUTHZ_RELATION_USERSET_UNSUPPORTED';
878
+ }
793
879
  //# sourceMappingURL=errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"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"}
@@ -102,12 +102,60 @@ export interface FreezeBarrierOptions extends FreezeSqlOptions {
102
102
  * Nunca recibe un cliente del llamante — ver el docblock del módulo.
103
103
  */
104
104
  export declare function assertNotFrozenRow(operation: string, options: FreezeBarrierOptions): Promise<void>;
105
+ /** El holder con el que se publica una fila con motivo y SIN holder (legada o a mano); también es su token. */
106
+ export declare const UNKNOWN_HOLDER = "?";
107
+ /** Prefijo del holder de la ventana del OPERADOR (`freeze()` con `kind: 'operator'`). */
108
+ export declare const OPERATOR_HOLDER_PREFIX = "operator:";
109
+ /**
110
+ * `isOperatorHolder` en SQL, por motor (cierre-2 de alpha.10 · C3): los
111
+ * `OPERATOR_HOLDER_PREFIX.length` primeros CARACTERES de `freeze_holder` igual a
112
+ * `operator:`, sensible a mayúsculas y acentos. SQLite: `substr()` no hereda
113
+ * collation ⇒ `BINARY`. PostgreSQL: `COLLATE "C"` (byte a byte aunque la base
114
+ * declare otra). MySQL: la collation de la columna es la de la tabla (`_ai_ci` por
115
+ * defecto: `OPERATOR:` y `opérator:` serían iguales), así que se compara como
116
+ * BINARIO. El prefijo es ASCII, así que «9 caracteres» y «9 unidades UTF-16» (JS)
117
+ * coinciden siempre que la comparación sea verdadera. Sin `LIKE`: ni comodines ni
118
+ * collation. Cualquier otro dialecto ⇒ 500 `E_AUTHZ_UNSUPPORTED_DIALECT` ANTES de
119
+ * tocar la fila (re-ataque del cierre-2 · ⚪ 3: el `substr` de SQLite en MSSQL
120
+ * sería un error del motor envuelto como 503, que invita a reintentar para siempre).
121
+ */
122
+ export declare function operatorHolderSql(connection?: any): {
123
+ sql: string;
124
+ bindings: unknown[];
125
+ };
126
+ /**
127
+ * Qué pasó al intentar tomar el freeze: `acquired` (con el token), `held` (hay
128
+ * un freeze VIVO de otro dueño) o `expired-operator` (la fila es una ventana de
129
+ * OPERADOR con el lease vencido, que no se pisa). `row` es la fila releída para
130
+ * REDACTAR el error; la decisión ya la tomó el UPDATE.
131
+ */
132
+ export type FreezeAcquireOutcome = {
133
+ status: 'acquired';
134
+ token: FreezeToken;
135
+ } | {
136
+ status: 'held';
137
+ row: FreezeRow;
138
+ } | {
139
+ status: 'expired-operator';
140
+ row: FreezeRow;
141
+ };
105
142
  /**
106
143
  * Toma el freeze si NADIE lo sostiene vivo (condicional y atómico: dos
107
- * `acquire` a la vez acaban en exactamente uno). Devuelve el token, o `null`
108
- * si hay un freeze vivo de otro dueño (el llamante decide si eso es 423 o un
109
- * contexto que reconoce).
144
+ * `acquire` a la vez acaban en exactamente uno). Una fila con el lease VENCIDO
145
+ * se toma encima (el dueño murió: la flota vuelve sola) **salvo que sea una
146
+ * ventana de OPERADOR** (cierre del auditor de alpha.10 · R2): esa exclusión va
147
+ * DENTRO del `WHERE` del mismo `UPDATE`, en los tres motores. Hasta el cierre
148
+ * vivía en `freeze()` como «leo la fila, compruebo, tomo», y con un reloj que
149
+ * cruzaba el vencimiento entre la comprobación y el UPDATE la pasada pisaba la
150
+ * ventana del operador sin 503 — el TOCTOU que el atómico existe para cerrar.
110
151
  */
152
+ export declare function acquireFreezeOutcome(input: {
153
+ reason: string;
154
+ holder: string;
155
+ untilMs: number | null;
156
+ nowMs: number;
157
+ }, options?: FreezeSqlOptions, attempt?: number): Promise<FreezeAcquireOutcome>;
158
+ /** `acquireFreezeOutcome` reducido a «el token o `null`» (lo usan los casos que siembran una fila ajena). */
111
159
  export declare function acquireFreeze(input: {
112
160
  reason: string;
113
161
  holder: string;
@@ -136,6 +184,17 @@ export declare function releaseFreeze(token: FreezeToken, input: {
136
184
  released: boolean;
137
185
  lapsed: boolean;
138
186
  }>;
139
- /** El `kind` que el holder lleva escrito (`operator:123:ab…` → `operator`). */
187
+ /**
188
+ * **La regla ÚNICA del prefijo de operador** (cierre-2 de alpha.10 · C3): los
189
+ * `OPERATOR_HOLDER_PREFIX.length` primeros caracteres del holder son EXACTAMENTE
190
+ * `operator:` — sensible a mayúsculas y a acentos, sin comodines. La MISMA
191
+ * comparación va en el `WHERE` de `acquireFreezeOutcome` (`operatorHolderSql`) y
192
+ * aquí; hasta el cierre-2 el SQL usaba `LIKE` (insensible a mayúsculas en SQLite y
193
+ * en MySQL `_ci`) y JS partía por `:`, así que un holder `OPERATOR:…` caducado era
194
+ * «de operador» para el UPDATE y `unknown` para JS ⇒ 423 «VIVO» sobre una fila
195
+ * caducada, distinto por motor.
196
+ */
197
+ export declare function isOperatorHolder(holder: string | null): boolean;
198
+ /** El `kind` que el holder lleva escrito (`operator:123:ab…` → `operator`); el de operador, por `isOperatorHolder`. */
140
199
  export declare function freezeKindOf(holder: string | null): FreezeKind | 'unknown';
141
200
  //# sourceMappingURL=freeze.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"freeze.d.ts","sourceRoot":"","sources":["../../src/freeze.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AAEH,2EAA2E;AAC3E,eAAO,MAAM,aAAa,IAAI,CAAA;AAE9B,wIAAwI;AACxI,eAAO,MAAM,uBAAuB,QAAS,CAAA;AAI7C,4EAA4E;AAC5E,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,WAAW,GAAG,UAAU,CAAA;AAE9D,iGAAiG;AACjG,MAAM,WAAW,WAAW;IAC1B,wEAAwE;IACxE,KAAK,EAAE,MAAM,CAAA;IACb,+DAA+D;IAC/D,MAAM,EAAE,MAAM,CAAA;CACf;AAED,oDAAoD;AACpD,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAA;IACf;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAyCD;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,OAAO,GAAE,gBAAqB,GAAG,OAAO,CAAC,SAAS,CAAC,CAkBtF;AAED,mHAAmH;AACnH,wBAAgB,YAAY,CAAC,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAGnE;AAED,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;IAC5D,oFAAoF;IACpF,KAAK,EAAE,MAAM,CAAA;CACd;AAED;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAQxG;AAED;;;;;GAKG;AACH,wBAAsB,aAAa,CACjC,KAAK,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAChF,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CA8B7B;AAED;;;;;GAKG;AACH,wBAAsB,WAAW,CAC/B,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EACzC,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,OAAO,CAAC,CAYlB;AAED;;;;;GAKG;AACH,wBAAsB,aAAa,CACjC,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,EACxB,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC,CAejD;AAED,+EAA+E;AAC/E,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,UAAU,GAAG,SAAS,CAG1E"}
1
+ {"version":3,"file":"freeze.d.ts","sourceRoot":"","sources":["../../src/freeze.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import db from '@adonisjs/lucid/services/db';
2
2
  import { guardSql, withDeadline } from './shared/backend_guard.js';
3
- import { AuthorizationBackendError, AuthorizationBackendTimeoutError, AuthorizationFrozenError } from './errors.js';
3
+ import { AuthorizationBackendError, AuthorizationBackendTimeoutError, AuthorizationFrozenError, UnsupportedDialectError, } from './errors.js';
4
4
  import { CATALOG_VERSION_TABLE } from './catalog/catalog_cache.js';
5
+ import { dialectOf, isMysqlDialect, isSqliteDialect } from './shared/sql_expiry.js';
5
6
  /**
6
7
  * El **freeze DURABLE** (3b-7; decisión del dueño del 2026-08-31 (3b):
7
8
  * B + E-analista). Primitivas SQL puras; la policy (quién congela, el
@@ -134,21 +135,64 @@ export async function assertNotFrozenRow(operation, options) {
134
135
  throw new AuthorizationFrozenError(`${operation}: el motor de autorización está congelado (${row.reason})${lift} y no acepta escrituras. ` +
135
136
  `Las lecturas siguen funcionando; reintenta esta escritura cuando la ventana termine.`);
136
137
  }
138
+ /** El holder con el que se publica una fila con motivo y SIN holder (legada o a mano); también es su token. */
139
+ export const UNKNOWN_HOLDER = '?';
140
+ /** Prefijo del holder de la ventana del OPERADOR (`freeze()` con `kind: 'operator'`). */
141
+ export const OPERATOR_HOLDER_PREFIX = 'operator:';
142
+ /**
143
+ * `isOperatorHolder` en SQL, por motor (cierre-2 de alpha.10 · C3): los
144
+ * `OPERATOR_HOLDER_PREFIX.length` primeros CARACTERES de `freeze_holder` igual a
145
+ * `operator:`, sensible a mayúsculas y acentos. SQLite: `substr()` no hereda
146
+ * collation ⇒ `BINARY`. PostgreSQL: `COLLATE "C"` (byte a byte aunque la base
147
+ * declare otra). MySQL: la collation de la columna es la de la tabla (`_ai_ci` por
148
+ * defecto: `OPERATOR:` y `opérator:` serían iguales), así que se compara como
149
+ * BINARIO. El prefijo es ASCII, así que «9 caracteres» y «9 unidades UTF-16» (JS)
150
+ * coinciden siempre que la comparación sea verdadera. Sin `LIKE`: ni comodines ni
151
+ * collation. Cualquier otro dialecto ⇒ 500 `E_AUTHZ_UNSUPPORTED_DIALECT` ANTES de
152
+ * tocar la fila (re-ataque del cierre-2 · ⚪ 3: el `substr` de SQLite en MSSQL
153
+ * sería un error del motor envuelto como 503, que invita a reintentar para siempre).
154
+ */
155
+ export function operatorHolderSql(connection = db.connection()) {
156
+ const length = OPERATOR_HOLDER_PREFIX.length;
157
+ if (isMysqlDialect(connection)) {
158
+ return { sql: `CAST(SUBSTRING(freeze_holder, 1, ${length}) AS BINARY) = CAST(? AS BINARY)`, bindings: [OPERATOR_HOLDER_PREFIX] };
159
+ }
160
+ if (dialectOf(connection).startsWith('postgres')) {
161
+ return { sql: `substr(freeze_holder, 1, ${length}) COLLATE "C" = ?`, bindings: [OPERATOR_HOLDER_PREFIX] };
162
+ }
163
+ if (isSqliteDialect(connection)) {
164
+ return { sql: `substr(freeze_holder, 1, ${length}) = ?`, bindings: [OPERATOR_HOLDER_PREFIX] };
165
+ }
166
+ throw new UnsupportedDialectError(`freeze: dialecto '${dialectOf(connection)}' sin observación en la suite (hoy: PostgreSQL, MySQL 8 y SQLite)`);
167
+ }
137
168
  /**
138
169
  * Toma el freeze si NADIE lo sostiene vivo (condicional y atómico: dos
139
- * `acquire` a la vez acaban en exactamente uno). Devuelve el token, o `null`
140
- * si hay un freeze vivo de otro dueño (el llamante decide si eso es 423 o un
141
- * contexto que reconoce).
170
+ * `acquire` a la vez acaban en exactamente uno). Una fila con el lease VENCIDO
171
+ * se toma encima (el dueño murió: la flota vuelve sola) **salvo que sea una
172
+ * ventana de OPERADOR** (cierre del auditor de alpha.10 · R2): esa exclusión va
173
+ * DENTRO del `WHERE` del mismo `UPDATE`, en los tres motores. Hasta el cierre
174
+ * vivía en `freeze()` como «leo la fila, compruebo, tomo», y con un reloj que
175
+ * cruzaba el vencimiento entre la comprobación y el UPDATE la pasada pisaba la
176
+ * ventana del operador sin 503 — el TOCTOU que el atómico existe para cerrar.
142
177
  */
143
- export async function acquireFreeze(input, options = {}) {
178
+ export async function acquireFreezeOutcome(input, options = {}, attempt = 0) {
144
179
  const { driver, timeoutMs } = opts(options);
180
+ // Fuera de `freezeSql`: un dialecto no soportado es config (500), no un backend caído (503).
181
+ const operator = operatorHolderSql();
145
182
  const updated = await freezeSql(driver, 'freeze.acquire', timeoutMs, () => db
146
183
  .from(CATALOG_VERSION_TABLE)
147
184
  .where('id', FREEZE_ROW_ID)
148
185
  .where((q) => {
149
- // Libre, o con el lease VENCIDO (un dueño muerto no bloquea la toma).
186
+ // Libre, o con el lease VENCIDO (un dueño muerto no bloquea la toma)…
150
187
  q.whereNull('freeze_reason').orWhere((expired) => {
151
- expired.whereNotNull('freeze_until_ms').andWhere('freeze_until_ms', '<=', input.nowMs);
188
+ expired
189
+ .whereNotNull('freeze_until_ms')
190
+ .andWhere('freeze_until_ms', '<=', input.nowMs)
191
+ // …salvo la ventana del OPERADOR vencida: es evidencia, no espacio libre (R2).
192
+ .andWhere((notOperator) => {
193
+ // La regla ÚNICA (`isOperatorHolder`), sin `LIKE`: comparación EXACTA de prefijo (cierre-2 · C3).
194
+ notOperator.whereNull('freeze_holder').orWhereRaw(`NOT (${operator.sql})`, operator.bindings);
195
+ });
152
196
  });
153
197
  })
154
198
  .update({
@@ -159,17 +203,36 @@ export async function acquireFreeze(input, options = {}) {
159
203
  updated_at: new Date(input.nowMs),
160
204
  }));
161
205
  if (Number(updated) === 0) {
162
- // O hay un freeze vivo, o la fila no existe: distinguirlo es leerla.
206
+ // O hay un freeze vivo, o una ventana de operador vencida, o la fila no existe: distinguirlo es leerla.
163
207
  const row = await readFreezeRow(options);
164
208
  if (freezeIsLive(row, input.nowMs))
165
- return null;
166
- // Carrera minúscula (se liberó entre el UPDATE y el SELECT): reintenta una vez.
167
- return acquireFreeze(input, options);
209
+ return { status: 'held', row };
210
+ if (row.reason !== null && freezeKindOf(row.holder) === 'operator')
211
+ return { status: 'expired-operator', row };
212
+ // Carrera minúscula (se liberó entre el UPDATE y el SELECT): reintenta UNA vez.
213
+ // Cierre-2 · C3: tras el reintento, una fila que NO está viva no es `held` (su
214
+ // letra dice «VIVO»). Con la regla única del prefijo esta rama solo la alcanza
215
+ // una fila que cambió dos veces entre UPDATE y SELECT: 503 reintentable que lo dice.
216
+ if (attempt >= 1) {
217
+ const error = new AuthorizationBackendError(driver, 'freeze.acquire', new Error('la fila del freeze cambió entre el UPDATE condicional y su relectura dos veces seguidas'));
218
+ error.message =
219
+ `${driver}: no se pudo tomar el freeze: la fila (${row.holder ?? 'sin holder'}, fence ${row.fence}) NO está viva ` +
220
+ `y aun así el UPDATE condicional no casó dos veces seguidas — otro proceso la está cambiando a la vez ` +
221
+ `(rama «contención tras reintento», no «freeze VIVO»). Reintenta.`;
222
+ throw error;
223
+ }
224
+ return acquireFreezeOutcome(input, options, attempt + 1);
168
225
  }
169
226
  const row = await readFreezeRow(options);
227
+ // Otro acquire ganó justo después (no debería: el nuestro dejó la fila viva).
170
228
  if (row.holder !== input.holder)
171
- return null; // otro acquire ganó justo después (no debería: el nuestro dejó la fila viva)
172
- return { fence: row.fence, holder: input.holder };
229
+ return { status: 'held', row };
230
+ return { status: 'acquired', token: { fence: row.fence, holder: input.holder } };
231
+ }
232
+ /** `acquireFreezeOutcome` reducido a «el token o `null`» (lo usan los casos que siembran una fila ajena). */
233
+ export async function acquireFreeze(input, options = {}) {
234
+ const outcome = await acquireFreezeOutcome(input, options);
235
+ return outcome.status === 'acquired' ? outcome.token : null;
173
236
  }
174
237
  /**
175
238
  * Renueva el lease, CONDICIONAL por token y solo si aún no venció
@@ -197,7 +260,16 @@ export async function renewFreeze(token, input, options = {}) {
197
260
  export async function releaseFreeze(token, input, options = {}) {
198
261
  const { driver, timeoutMs } = opts(options);
199
262
  const row = await readFreezeRow(options);
200
- const mine = row.fence === token.fence && row.holder === token.holder;
263
+ // La fila SIN holder (legada o escrita a mano) se publica como `UNKNOWN_HOLDER`
264
+ // en `freezeStatus()`/`lastFreezeStatus()`, así que ese es su token: sin esto
265
+ // `authz:unfreeze` no casaba nunca y repetía su aviso para siempre (cierre del
266
+ // auditor de alpha.10 · ⚪ 5). `freeze()` jamás escribe ese holder.
267
+ // Cierre-2 · C4: `'?'` publica DOS filas —holder NULL y holder LITERAL `'?'` (a
268
+ // mano)—, así que el token casa las dos (`IS NULL OR = '?'`); casar solo NULL
269
+ // dejaba la literal sin salida y `authz:unfreeze` en bucle con exit 1. Sigue
270
+ // atado al fence y nunca casa un holder real.
271
+ const unknownHolder = token.holder === UNKNOWN_HOLDER;
272
+ const mine = row.fence === token.fence && (unknownHolder ? row.holder === null || row.holder === UNKNOWN_HOLDER : row.holder === token.holder);
201
273
  const lapsed = !mine || (row.untilMs !== null && row.untilMs <= input.nowMs);
202
274
  if (!mine)
203
275
  return { released: false, lapsed };
@@ -205,13 +277,30 @@ export async function releaseFreeze(token, input, options = {}) {
205
277
  .from(CATALOG_VERSION_TABLE)
206
278
  .where('id', FREEZE_ROW_ID)
207
279
  .where('freeze_fence', token.fence)
208
- .where('freeze_holder', token.holder)
280
+ .where((q) => unknownHolder ? q.whereNull('freeze_holder').orWhere('freeze_holder', UNKNOWN_HOLDER) : q.where('freeze_holder', token.holder))
209
281
  .update({ freeze_reason: null, freeze_holder: null, freeze_until_ms: null, updated_at: new Date(input.nowMs) }));
210
282
  return { released: Number(updated) > 0, lapsed };
211
283
  }
212
- /** El `kind` que el holder lleva escrito (`operator:123:ab…` → `operator`). */
284
+ /**
285
+ * **La regla ÚNICA del prefijo de operador** (cierre-2 de alpha.10 · C3): los
286
+ * `OPERATOR_HOLDER_PREFIX.length` primeros caracteres del holder son EXACTAMENTE
287
+ * `operator:` — sensible a mayúsculas y a acentos, sin comodines. La MISMA
288
+ * comparación va en el `WHERE` de `acquireFreezeOutcome` (`operatorHolderSql`) y
289
+ * aquí; hasta el cierre-2 el SQL usaba `LIKE` (insensible a mayúsculas en SQLite y
290
+ * en MySQL `_ci`) y JS partía por `:`, así que un holder `OPERATOR:…` caducado era
291
+ * «de operador» para el UPDATE y `unknown` para JS ⇒ 423 «VIVO» sobre una fila
292
+ * caducada, distinto por motor.
293
+ */
294
+ export function isOperatorHolder(holder) {
295
+ return typeof holder === 'string' && holder.slice(0, OPERATOR_HOLDER_PREFIX.length) === OPERATOR_HOLDER_PREFIX;
296
+ }
297
+ /** El `kind` que el holder lleva escrito (`operator:123:ab…` → `operator`); el de operador, por `isOperatorHolder`. */
213
298
  export function freezeKindOf(holder) {
214
- const prefix = holder?.split(':', 1)[0];
215
- return prefix === 'operator' || prefix === 'reconcile' || prefix === 'platform' ? prefix : 'unknown';
299
+ if (isOperatorHolder(holder))
300
+ return 'operator';
301
+ if (typeof holder !== 'string' || !holder.includes(':'))
302
+ return 'unknown';
303
+ const prefix = holder.slice(0, holder.indexOf(':'));
304
+ return prefix === 'reconcile' || prefix === 'platform' ? prefix : 'unknown';
216
305
  }
217
306
  //# sourceMappingURL=freeze.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"freeze.js","sourceRoot":"","sources":["../../src/freeze.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"freeze.js","sourceRoot":"","sources":["../../src/freeze.ts"],"names":[],"mappings":"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"}