nodefony 10.0.0-alpha.4 → 10.0.0-alpha.5

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 (81) hide show
  1. package/.ai/symbols.json +411 -32
  2. package/LICENSE +201 -543
  3. package/README.md +1 -1
  4. package/dist/node/cli/agentTargets.js +45 -0
  5. package/dist/node/cli/aiMcp.js +99 -8
  6. package/dist/node/cli/aiMcpReport.js +32 -6
  7. package/dist/node/cli/cardReport.js +2 -2
  8. package/dist/node/cli/create.js +34 -2
  9. package/dist/node/cli/execPortable.js +1 -1
  10. package/dist/node/cli/licenses.js +510 -0
  11. package/dist/node/cli/scaffold/engine.js +138 -6
  12. package/dist/node/cli/scaffold/spec.js +9 -1
  13. package/dist/node/cli/scaffold/versions.js +23 -22
  14. package/dist/node/cli/startMenu.js +66 -12
  15. package/dist/node/command/Command.js +2 -2
  16. package/dist/node/config/defaults.js +1 -0
  17. package/dist/node/config/defineEnv.js +33 -2
  18. package/dist/node/config/schema.js +18 -2
  19. package/dist/node/index.js +2 -1
  20. package/dist/node/kernel/CliKernel.js +2 -0
  21. package/dist/node/kernel/Kernel.js +53 -4
  22. package/dist/node/kernel/checks/freshness.js +0 -1
  23. package/dist/node/kernel/commands/LicensesCommand.js +78 -0
  24. package/dist/node/kernel/lifecycleTags.js +30 -18
  25. package/dist/node/package.js +1 -1
  26. package/dist/node/runtime/identityHint.js +36 -0
  27. package/dist/node/service/dev/detachedStart.js +16 -1
  28. package/dist/node/syslog/drivers/opensearchShared.js +68 -1
  29. package/dist/node/syslog/transports/OpenSearchTransport.js +43 -3
  30. package/dist/types/cli/agentTargets.d.ts +47 -1
  31. package/dist/types/cli/aiMcp.d.ts +12 -20
  32. package/dist/types/cli/aiMcpReport.d.ts +47 -2
  33. package/dist/types/cli/licenses.d.ts +239 -0
  34. package/dist/types/cli/scaffold/engine.d.ts +28 -0
  35. package/dist/types/config/defineEnv.d.ts +7 -0
  36. package/dist/types/index.d.ts +1 -0
  37. package/dist/types/kernel/Kernel.d.ts +16 -0
  38. package/dist/types/kernel/commands/LicensesCommand.d.ts +31 -0
  39. package/dist/types/kernel/lifecycleTags.d.ts +27 -15
  40. package/dist/types/runtime/identityHint.d.ts +27 -0
  41. package/dist/types/syslog/drivers/opensearchShared.d.ts +49 -0
  42. package/docs/cli.md +9 -9
  43. package/docs/client.md +14 -8
  44. package/docs/kernel.md +18 -18
  45. package/docs/react-hooks.md +3 -3
  46. package/docs/request-context.md +5 -5
  47. package/docs/service.md +12 -12
  48. package/docs/syslog.md +3 -3
  49. package/man/nodefony.1 +4 -1
  50. package/package.json +7 -7
  51. package/templates/app/agents/AGENTS.md.tpl +124 -147
  52. package/templates/app/agents/client/angular.md +31 -0
  53. package/templates/app/agents/client/react.md +26 -0
  54. package/templates/app/agents/client/svelte.md +33 -0
  55. package/templates/app/agents/client/vue.md +25 -0
  56. package/templates/app/base/Dockerfile.tpl +197 -12
  57. package/templates/app/base/LICENSE.tpl +24 -0
  58. package/templates/app/base/README.md.tpl +51 -4
  59. package/templates/app/base/SECURITY.md.tpl +55 -0
  60. package/templates/app/base/dockerignore.tpl +81 -3
  61. package/templates/app/base/github/workflows/ci.yml.tpl +36 -3
  62. package/templates/app/base/gitignore.tpl +6 -0
  63. package/templates/app/base/gitlab-ci.yml.tpl +19 -3
  64. package/templates/app/base/nodefony.config.ts.tpl +22 -4
  65. package/templates/app/base/package.json.tpl +11 -1
  66. package/templates/app/base/tests/e2e.setup.ts.tpl +70 -12
  67. package/templates/app/base/tests/e2e.test.ts.tpl +55 -4
  68. package/templates/app/base/tests/migrations.e2e.test.ts.tpl +28 -2
  69. package/templates/app/complete/compose.yaml.tpl +202 -3
  70. package/templates/app/frontend/angular/frontend/src/accent.css.tpl +11 -0
  71. package/templates/app/frontend/angular/frontend/src/app/app.component.ts.tpl +6 -3
  72. package/templates/app/frontend/react/frontend/src/App.tsx.tpl +7 -4
  73. package/templates/app/frontend/react/frontend/src/accent.css.tpl +11 -0
  74. package/templates/app/frontend/shared/frontend/src/showcase.css.tpl +9 -0
  75. package/templates/app/frontend/svelte/frontend/src/App.svelte.tpl +6 -3
  76. package/templates/app/frontend/svelte/frontend/src/accent.css.tpl +11 -0
  77. package/templates/app/frontend/vue/frontend/src/App.vue.tpl +6 -3
  78. package/templates/app/frontend/vue/frontend/src/accent.css.tpl +11 -0
  79. package/templates/dataservice/tests/__PASCAL__Service.test.ts.tpl +37 -0
  80. package/templates/entity/service/nodefony/service/__PASCAL__Service.ts.tpl +21 -8
  81. package/templates/module/ai/AGENTS.md.tpl +4 -2
package/.ai/symbols.json CHANGED
@@ -2,14 +2,14 @@
2
2
  "version": "2.0.0",
3
3
  "repoRoot": ".",
4
4
  "stats": {
5
- "files": 821,
6
- "symbols": 3980,
7
- "classes": 388,
8
- "interfaces": 1078,
5
+ "files": 825,
6
+ "symbols": 4027,
7
+ "classes": 391,
8
+ "interfaces": 1085,
9
9
  "types": 447,
10
10
  "enums": 4,
11
- "functions": 1670,
12
- "constants": 393
11
+ "functions": 1697,
12
+ "constants": 403
13
13
  },
14
14
  "symbols": {
15
15
  "Cli": {
@@ -648,6 +648,15 @@
648
648
  "module": "@nodefony/core",
649
649
  "description": "Treeshake commun : les externes sont sans effet de bord (équivalent `no-external`) SAUF `reflect-metadata`, dont le side-effect doit survivre."
650
650
  },
651
+ "IAgentMcpFile": {
652
+ "name": "IAgentMcpFile",
653
+ "kind": "interface",
654
+ "file": "src/nodefony/src/cli/agentTargets.ts",
655
+ "exported": true,
656
+ "module": "@nodefony/core",
657
+ "extends": null,
658
+ "description": "Où et comment écrire la porte chez un agent de canal `fichier-agent`. ⭐ **Les trois champs existent parce que les deux grammaires constatées diffèrent sur les trois.** VS Code nomme sa racine `serv…"
659
+ },
651
660
  "IAgentTarget": {
652
661
  "name": "IAgentTarget",
653
662
  "kind": "interface",
@@ -847,8 +856,7 @@
847
856
  "kind": "function",
848
857
  "file": "src/nodefony/src/cli/aiMcp.ts",
849
858
  "exported": true,
850
- "module": "@nodefony/core",
851
- "description": "Déclare (ou retire) la porte MCP chez chaque agent, **par SA propre CLI**. ⭐ La règle qui gouverne cette fonction : **on n'écrit pas le fichier de configuration d'un outil tiers.** Son format lui a…"
859
+ "module": "@nodefony/core"
852
860
  },
853
861
  "targetsToDeclare": {
854
862
  "name": "targetsToDeclare",
@@ -898,7 +906,16 @@
898
906
  "exported": true,
899
907
  "module": "@nodefony/core",
900
908
  "extends": null,
901
- "description": "Le document `.mcp.json` dans son entier."
909
+ "description": "Un fichier de configuration MCP dans son entier — `.mcp.json` ou celui d'un agent qui tient le sien. ⚠️ **Les deux racines sont optionnelles parce qu'un document n'en porte jamais qu'UNE.** VS Code…"
910
+ },
911
+ "IMcpGrammar": {
912
+ "name": "IMcpGrammar",
913
+ "kind": "interface",
914
+ "file": "src/nodefony/src/cli/aiMcpReport.ts",
915
+ "exported": true,
916
+ "module": "@nodefony/core",
917
+ "extends": null,
918
+ "description": "Grammaire d'un fichier de configuration MCP. Injectée plutôt que déduite : c'est elle qui a valu l'existence du canal `fichier-agent` — deux outils qui parlent le même protocole n'écrivent pas le m…"
902
919
  },
903
920
  "IMcpConfigPlan": {
904
921
  "name": "IMcpConfigPlan",
@@ -917,6 +934,14 @@
917
934
  "module": "@nodefony/core",
918
935
  "description": "Ce que la commande a décidé de faire."
919
936
  },
937
+ "serversOf": {
938
+ "name": "serversOf",
939
+ "kind": "function",
940
+ "file": "src/nodefony/src/cli/aiMcpReport.ts",
941
+ "exported": true,
942
+ "module": "@nodefony/core",
943
+ "description": "Les serveurs déclarés dans un document, quelle que soit sa racine. Exposé pour qu'aucun appelant n'ait à deviner la clé : c'est le seul endroit où l'on sait que `servers` et `mcpServers` désignent …"
944
+ },
920
945
  "buildMcpUrl": {
921
946
  "name": "buildMcpUrl",
922
947
  "kind": "function",
@@ -973,6 +998,14 @@
973
998
  "module": "@nodefony/core",
974
999
  "description": "Nom de la variable d'environnement qui porte le jeton de la porte MCP. 🔴 C'est la VARIABLE qui s'écrit dans `.mcp.json`, jamais le jeton : ce fichier est un fichier de projet, suivi par git. Les c…"
975
1000
  },
1001
+ "MCP_GRAMMAR": {
1002
+ "name": "MCP_GRAMMAR",
1003
+ "kind": "const",
1004
+ "file": "src/nodefony/src/cli/aiMcpReport.ts",
1005
+ "exported": true,
1006
+ "module": "@nodefony/core",
1007
+ "description": "La grammaire de `.mcp.json` — celle que Claude Code lit, et notre défaut. `${VAR}` nu : c'est la forme historique du format, et elle diffère du `${env:VAR}` que VS Code et Cursor attendent."
1008
+ },
976
1009
  "readSkillHeader": {
977
1010
  "name": "readSkillHeader",
978
1011
  "kind": "function",
@@ -1774,6 +1807,171 @@
1774
1807
  "module": "@nodefony/core",
1775
1808
  "description": "Le libellé de chaque intention DANS LE MENU interactif. 🔴 Une seule taxonomie, deux rendus. Le menu s'adresse à quelqu'un qui hésite (phrase, minuscules) et l'aide à quelqu'un qui balaie (titre, c…"
1776
1809
  },
1810
+ "LicenseInventoryError": {
1811
+ "name": "LicenseInventoryError",
1812
+ "kind": "class",
1813
+ "file": "src/nodefony/src/cli/licenses.ts",
1814
+ "exported": true,
1815
+ "module": "@nodefony/core",
1816
+ "extends": "Error",
1817
+ "implements": [],
1818
+ "decorators": [],
1819
+ "description": "Levée quand npm refuse d'inventorier l'arbre — porte le remède, pas une trace."
1820
+ },
1821
+ "ILicensedPackage": {
1822
+ "name": "ILicensedPackage",
1823
+ "kind": "interface",
1824
+ "file": "src/nodefony/src/cli/licenses.ts",
1825
+ "exported": true,
1826
+ "module": "@nodefony/core",
1827
+ "extends": null,
1828
+ "description": "Un paquet du relevé : ce qu'on redistribue, et sous quelle licence."
1829
+ },
1830
+ "ILicenseSurvey": {
1831
+ "name": "ILicenseSurvey",
1832
+ "kind": "interface",
1833
+ "file": "src/nodefony/src/cli/licenses.ts",
1834
+ "exported": true,
1835
+ "module": "@nodefony/core",
1836
+ "extends": null,
1837
+ "description": "Le relevé complet — ce que rendent {@link surveyLicenses} et le mode `--json`."
1838
+ },
1839
+ "refusalReason": {
1840
+ "name": "refusalReason",
1841
+ "kind": "function",
1842
+ "file": "src/nodefony/src/cli/licenses.ts",
1843
+ "exported": true,
1844
+ "module": "@nodefony/core",
1845
+ "description": "La raison d'un refus, quand la famille est connue. Le rapprochement se fait sur le PRÉFIXE de l'expression SPDX : `GPL-3.0`, `GPL-3.0-only` et `GPL-2.0-or-later` sont la même famille et appellent l…"
1846
+ },
1847
+ "duty": {
1848
+ "name": "duty",
1849
+ "kind": "function",
1850
+ "file": "src/nodefony/src/cli/licenses.ts",
1851
+ "exported": true,
1852
+ "module": "@nodefony/core",
1853
+ "description": "Ce qu'impose une licence relevée, ou le constat qu'elle n'a pas été examinée."
1854
+ },
1855
+ "accept": {
1856
+ "name": "accept",
1857
+ "kind": "function",
1858
+ "file": "src/nodefony/src/cli/licenses.ts",
1859
+ "exported": true,
1860
+ "module": "@nodefony/core",
1861
+ "description": "Décide si une licence déclarée est acceptable, et sous quel terme."
1862
+ },
1863
+ "normalizeLicense": {
1864
+ "name": "normalizeLicense",
1865
+ "kind": "function",
1866
+ "file": "src/nodefony/src/cli/licenses.ts",
1867
+ "exported": true,
1868
+ "module": "@nodefony/core",
1869
+ "description": "Rend le champ `license` d'un manifeste sous forme d'expression SPDX."
1870
+ },
1871
+ "templateRuntimeDeps": {
1872
+ "name": "templateRuntimeDeps",
1873
+ "kind": "function",
1874
+ "file": "src/nodefony/src/cli/licenses.ts",
1875
+ "exported": true,
1876
+ "module": "@nodefony/core",
1877
+ "description": "Les dépendances de production que le gabarit d'application peut poser. Le fichier est un modèle `eta` : ses clés sont lisibles telles quelles, ses valeurs non. On ne lit donc que les NOMS, dans le …"
1878
+ },
1879
+ "publishableWorkspaces": {
1880
+ "name": "publishableWorkspaces",
1881
+ "kind": "function",
1882
+ "file": "src/nodefony/src/cli/licenses.ts",
1883
+ "exported": true,
1884
+ "module": "@nodefony/core",
1885
+ "description": "Les paquets dont l'arbre de production doit être contrôlé. Dans le dépôt du framework, ce sont les espaces de travail qui partent sur npm — un espace `private` n'est jamais distribué, ses dépendanc…"
1886
+ },
1887
+ "peerPackages": {
1888
+ "name": "peerPackages",
1889
+ "kind": "function",
1890
+ "file": "src/nodefony/src/cli/licenses.ts",
1891
+ "exported": true,
1892
+ "module": "@nodefony/core",
1893
+ "description": "Les dépendances de pair déclarées par les paquets contrôlés, au premier niveau. Elles n'apparaissent dans AUCUN inventaire de npm — il ne les installe pas, l'utilisateur le fait. C'est justement po…"
1894
+ },
1895
+ "collect": {
1896
+ "name": "collect",
1897
+ "kind": "function",
1898
+ "file": "src/nodefony/src/cli/licenses.ts",
1899
+ "exported": true,
1900
+ "module": "@nodefony/core",
1901
+ "description": "Relève l'arbre de production et le réduit à `nom → licence`. La portée est la RACINE inspectée, sans restriction aux espaces de travail : `.prod` est un fait global de l'arbre (« ce paquet sert-il …"
1902
+ },
1903
+ "surveyLicenses": {
1904
+ "name": "surveyLicenses",
1905
+ "kind": "function",
1906
+ "file": "src/nodefony/src/cli/licenses.ts",
1907
+ "exported": true,
1908
+ "module": "@nodefony/core",
1909
+ "description": "Le relevé complet d'une racine — c'est l'unique porte d'entrée."
1910
+ },
1911
+ "renderReport": {
1912
+ "name": "renderReport",
1913
+ "kind": "function",
1914
+ "file": "src/nodefony/src/cli/licenses.ts",
1915
+ "exported": true,
1916
+ "module": "@nodefony/core",
1917
+ "description": "Le relevé rendu en texte, pour un humain qui lit un terminal."
1918
+ },
1919
+ "renderNotices": {
1920
+ "name": "renderNotices",
1921
+ "kind": "function",
1922
+ "file": "src/nodefony/src/cli/licenses.ts",
1923
+ "exported": true,
1924
+ "module": "@nodefony/core",
1925
+ "description": "Le relevé rendu en Markdown — le `THIRD-PARTY-NOTICES.md` d'une application. Les licences permissives (MIT, BSD, Apache-2.0) imposent toutes de conserver la notice de copyright et le texte de la li…"
1926
+ },
1927
+ "ALLOWED": {
1928
+ "name": "ALLOWED",
1929
+ "kind": "const",
1930
+ "file": "src/nodefony/src/cli/licenses.ts",
1931
+ "exported": true,
1932
+ "module": "@nodefony/core",
1933
+ "description": "Licences acceptées dans l'arbre de production, par famille. Cette liste est la DÉCISION du projet, pas un constat : une licence absente n'est pas « inconnue », elle est refusée tant que personne ne…"
1934
+ },
1935
+ "LICENSE_DUTY": {
1936
+ "name": "LICENSE_DUTY",
1937
+ "kind": "const",
1938
+ "file": "src/nodefony/src/cli/licenses.ts",
1939
+ "exported": true,
1940
+ "module": "@nodefony/core",
1941
+ "description": "Ce que chaque licence acceptée IMPOSE, en une ligne. Toutes celles de {@link ALLOWED} autorisent l'usage commercial, la modification et la redistribution dans un produit propriétaire — c'est ce qui…"
1942
+ },
1943
+ "LICENSE_REFUSAL": {
1944
+ "name": "LICENSE_REFUSAL",
1945
+ "kind": "const",
1946
+ "file": "src/nodefony/src/cli/licenses.ts",
1947
+ "exported": true,
1948
+ "module": "@nodefony/core",
1949
+ "description": "Les licences qu'on REFUSE, et la raison — celles qui arriveront un jour. Un refus qui dit seulement « hors liste » envoie chercher : l'utilisateur ouvre un texte de licence pour découvrir ce que le…"
1950
+ },
1951
+ "ALLOWED_EXPRESSIONS": {
1952
+ "name": "ALLOWED_EXPRESSIONS",
1953
+ "kind": "const",
1954
+ "file": "src/nodefony/src/cli/licenses.ts",
1955
+ "exported": true,
1956
+ "module": "@nodefony/core",
1957
+ "description": "Expressions SPDX composées que nous acceptons, avec le terme retenu. Une double licence laisse le CHOIX au redistributeur : `(BSD-3-Clause OR GPL-2.0)` est acceptable parce que nous retenons BSD-3-…"
1958
+ },
1959
+ "APP_TEMPLATE": {
1960
+ "name": "APP_TEMPLATE",
1961
+ "kind": "const",
1962
+ "file": "src/nodefony/src/cli/licenses.ts",
1963
+ "exported": true,
1964
+ "module": "@nodefony/core",
1965
+ "description": "Le gabarit d'application, dont les dépendances de production atteignent l'utilisateur sans passer par nos `package.json`. Contrôler une application une bonne fois serait une photo : elle se périmer…"
1966
+ },
1967
+ "NOTICES_FILE": {
1968
+ "name": "NOTICES_FILE",
1969
+ "kind": "const",
1970
+ "file": "src/nodefony/src/cli/licenses.ts",
1971
+ "exported": true,
1972
+ "module": "@nodefony/core",
1973
+ "description": "Le nom du relevé posé à la racine d'une application."
1974
+ },
1777
1975
  "escapeRoff": {
1778
1976
  "name": "escapeRoff",
1779
1977
  "kind": "function",
@@ -2822,6 +3020,14 @@
2822
3020
  "module": "@nodefony/core",
2823
3021
  "description": "Les ÉTIQUETTES de l'environnement décrit par une source de variables. Deux notions cohabitent et ne se confondent pas : le MODE d'exécution (`NODE_ENV`, que Node et les outils lisent) et l'environn…"
2824
3022
  },
3023
+ "setRunServesTraffic": {
3024
+ "name": "setRunServesTraffic",
3025
+ "kind": "function",
3026
+ "file": "src/nodefony/src/config/defineEnv.ts",
3027
+ "exported": true,
3028
+ "module": "@nodefony/core",
3029
+ "description": "Déclare si le run en cours sert du trafic — appelé par le Kernel, et par lui seul."
3030
+ },
2825
3031
  "isEnvVarRequired": {
2826
3032
  "name": "isEnvVarRequired",
2827
3033
  "kind": "function",
@@ -3722,21 +3928,21 @@
3722
3928
  "module": "@nodefony/core",
3723
3929
  "description": "Pose `owner` + `critical` sur une fonction listener, **en place**, et la renvoie."
3724
3930
  },
3725
- "tagUnboundedListener": {
3726
- "name": "tagUnboundedListener",
3931
+ "tagCommandAction": {
3932
+ "name": "tagCommandAction",
3727
3933
  "kind": "function",
3728
3934
  "file": "src/nodefony/src/kernel/lifecycleTags.ts",
3729
3935
  "exported": true,
3730
3936
  "module": "@nodefony/core",
3731
- "description": "Marque un listener comme n'étant PAS soumis à la borne de temps du boot. 🔴 Vécu, et c'est le pire mode de panne qui soit : l'action d'une commande est câblée comme un écouteur de cycle de vie (`Co…"
3937
+ "description": "Marque un listener comme étant l'**action d'une commande** — le travail demandé — et non un hook de boot. Deux conséquences, qui découlent du même fait et ne se séparent pas : il échappe à la borne…"
3732
3938
  },
3733
- "isUnboundedListener": {
3734
- "name": "isUnboundedListener",
3939
+ "isCommandAction": {
3940
+ "name": "isCommandAction",
3735
3941
  "kind": "function",
3736
3942
  "file": "src/nodefony/src/kernel/lifecycleTags.ts",
3737
3943
  "exported": true,
3738
3944
  "module": "@nodefony/core",
3739
- "description": "Dit si un listener a été marqué par {@link tagUnboundedListener}. **Déballe le wrapper `once`** pour la même raison que {@link readListenerTags} : les actions de commande sont câblées via `kernel.o…"
3945
+ "description": "Dit si un listener a été marqué par {@link tagCommandAction}. **Déballe le wrapper `once`** pour la même raison que {@link readListenerTags} : les actions de commande sont câblées via `kernel.once(…"
3740
3946
  },
3741
3947
  "readListenerTags": {
3742
3948
  "name": "readListenerTags",
@@ -4940,6 +5146,14 @@
4940
5146
  "extends": null,
4941
5147
  "description": "Ordonnanceur de **maintenance périodique** (« garbage collection ») exécutée HORS du chemin d'une requête — pattern unifié du framework pour purger des entrées expirées d'un store (sessions, jetons…"
4942
5148
  },
5149
+ "identityHint": {
5150
+ "name": "identityHint",
5151
+ "kind": "function",
5152
+ "file": "src/nodefony/src/runtime/identityHint.ts",
5153
+ "exported": true,
5154
+ "module": "@nodefony/core",
5155
+ "description": "Le geste qui donne une IDENTITÉ dans cette application — ou `null`. Protéger une route est immédiat : un décorateur, et le générateur le pose. L'APPELER ensuite ne l'est pas, et c'est le trou qu'on…"
5156
+ },
4943
5157
  "ILoadEnvOptions": {
4944
5158
  "name": "ILoadEnvOptions",
4945
5159
  "kind": "interface",
@@ -9120,7 +9334,7 @@
9120
9334
  "module": "@nodefony/core",
9121
9335
  "description": "Regroupe les contrôles sautés qui partagent la MÊME raison. Hors d'une application, quatre familles sont sautées pour un seul et même motif. Les énumérer une par une répète quatre fois la même phra…"
9122
9336
  },
9123
- "renderReport": {
9337
+ "@nodefony/core:renderReport": {
9124
9338
  "name": "renderReport",
9125
9339
  "kind": "function",
9126
9340
  "file": "src/nodefony/src/kernel/checks/renderReport.ts",
@@ -9931,6 +10145,17 @@
9931
10145
  "implements": [],
9932
10146
  "decorators": []
9933
10147
  },
10148
+ "Licenses": {
10149
+ "name": "Licenses",
10150
+ "kind": "class",
10151
+ "file": "src/nodefony/src/kernel/commands/LicensesCommand.ts",
10152
+ "exported": true,
10153
+ "module": "@nodefony/core",
10154
+ "extends": "Command",
10155
+ "implements": [],
10156
+ "decorators": [],
10157
+ "description": "Commande `nodefony licenses` — ce que l'application redistribue, et sous quelle licence. Les licences permissives (MIT, BSD, Apache-2.0) imposent toutes de conserver la notice de copyright et le te…"
10158
+ },
9934
10159
  "Menu": {
9935
10160
  "name": "Menu",
9936
10161
  "kind": "class",
@@ -11850,6 +12075,22 @@
11850
12075
  "module": "@nodefony/core",
11851
12076
  "description": "Construit l'en-tête `Authorization: Basic …` si un utilisateur est fourni — sinon objet vide (dev = plugin sécurité désactivé, HTTP sans auth). Node-only (`Buffer`)."
11852
12077
  },
12078
+ "toOpenSearchDocument": {
12079
+ "name": "toOpenSearchDocument",
12080
+ "kind": "function",
12081
+ "file": "src/nodefony/src/syslog/drivers/opensearchShared.ts",
12082
+ "exported": true,
12083
+ "module": "@nodefony/core",
12084
+ "description": "Le document indexé : l'enregistrement wire, plus `@timestamp` en ISO 8601. `timeStamp` (entier) est CONSERVÉ : c'est lui que le pilote de relecture du framework filtre et trie, et le retirer répare…"
12085
+ },
12086
+ "buildIndexTemplate": {
12087
+ "name": "buildIndexTemplate",
12088
+ "kind": "function",
12089
+ "file": "src/nodefony/src/syslog/drivers/opensearchShared.ts",
12090
+ "exported": true,
12091
+ "module": "@nodefony/core",
12092
+ "description": "Le modèle d'index qui DÉCLARE le type des champs, au lieu de le laisser deviner. Sans lui, le correctif du transport ne tient que sur les index qui existent déjà : un déploiement vierge crée son in…"
12093
+ },
11853
12094
  "DEFAULT_OPENSEARCH_INDEX": {
11854
12095
  "name": "DEFAULT_OPENSEARCH_INDEX",
11855
12096
  "kind": "const",
@@ -11858,6 +12099,22 @@
11858
12099
  "module": "@nodefony/core",
11859
12100
  "description": "Index OpenSearch par défaut des logs Nodefony (write transport ↔ read driver)."
11860
12101
  },
12102
+ "OPENSEARCH_TIMESTAMP_FIELD": {
12103
+ "name": "OPENSEARCH_TIMESTAMP_FIELD",
12104
+ "kind": "const",
12105
+ "file": "src/nodefony/src/syslog/drivers/opensearchShared.ts",
12106
+ "exported": true,
12107
+ "module": "@nodefony/core",
12108
+ "description": "Le champ temporel que TOUT l'écosystème attend — Grafana, les tableaux de bord OpenSearch, les motifs d'index. 🔴 Ce n'est pas une préférence de nommage, c'est une condition d'existence de la vue c…"
12109
+ },
12110
+ "OPENSEARCH_TEMPLATE_NAME": {
12111
+ "name": "OPENSEARCH_TEMPLATE_NAME",
12112
+ "kind": "const",
12113
+ "file": "src/nodefony/src/syslog/drivers/opensearchShared.ts",
12114
+ "exported": true,
12115
+ "module": "@nodefony/core",
12116
+ "description": "Nom du modèle d'index posé par le transport."
12117
+ },
11861
12118
  "FlowStepMeta": {
11862
12119
  "name": "FlowStepMeta",
11863
12120
  "kind": "interface",
@@ -19633,6 +19890,14 @@
19633
19890
  "decorators": [],
19634
19891
  "description": "`nodefony security:user:add [identifier]` — crée un compte utilisateur via le service applicatif `users` (hash Argon2id fait par `UserService.createUser`, jamais de mot de passe stocké en clair). I…"
19635
19892
  },
19893
+ "AUTH_LOGIN_PATH": {
19894
+ "name": "AUTH_LOGIN_PATH",
19895
+ "kind": "const",
19896
+ "file": "src/packages/@nodefony/security/nodefony/command/security-user-add.ts",
19897
+ "exported": true,
19898
+ "module": "@nodefony/security",
19899
+ "description": "La route qui échange un compte contre une SESSION — le geste qui manquait. Créer un compte ne sert à rien tant qu'on ne sait pas s'en servir : mesuré, 33 minutes d'un essai réel se sont passées ent…"
19900
+ },
19636
19901
  "SecurityUserDelete": {
19637
19902
  "name": "SecurityUserDelete",
19638
19903
  "kind": "class",
@@ -19655,6 +19920,17 @@
19655
19920
  "decorators": [],
19656
19921
  "description": "`nodefony security:user:list` — qui a un compte dans cette application. **Lister n'est pas une fuite, et c'était la question.** Cette commande s'exécute sur la machine qui possède déjà la base : el…"
19657
19922
  },
19923
+ "SecurityUserPassword": {
19924
+ "name": "SecurityUserPassword",
19925
+ "kind": "class",
19926
+ "file": "src/packages/@nodefony/security/nodefony/command/security-user-password.ts",
19927
+ "exported": true,
19928
+ "module": "@nodefony/security",
19929
+ "extends": "Command",
19930
+ "implements": [],
19931
+ "decorators": [],
19932
+ "description": "`nodefony security:user:password [identifiant]` — change le mot de passe d'un compte. Le geste d'exploitation qui manquait : `user:add`, `user:list` et `user:delete` existaient, mais un mot de pass…"
19933
+ },
19658
19934
  "ISecurityConfigInput": {
19659
19935
  "name": "ISecurityConfigInput",
19660
19936
  "kind": "type",
@@ -22932,6 +23208,14 @@
22932
23208
  "decorators": [],
22933
23209
  "description": "Construit la config Vite finale à partir des entrées résolues et des presets. Le builder ne lance JAMAIS Vite — il fournit uniquement la config. Le démarrage est délégué au superviseur (child_proce…"
22934
23210
  },
23211
+ "resolveDedupe": {
23212
+ "name": "resolveDedupe",
23213
+ "kind": "function",
23214
+ "file": "src/packages/@nodefony/frontend/nodefony/src/builders/ViteBuilder.ts",
23215
+ "exported": true,
23216
+ "module": "@nodefony/frontend",
23217
+ "description": "Les paquets à dédupliquer pour un lot de préréglages — la règle, isolée. Pure et exportée pour DEUX raisons. Elle ne dépend que des préréglages utilisés : la faire passer par `buildViteConfig` obli…"
23218
+ },
22935
23219
  "FrontendError": {
22936
23220
  "name": "FrontendError",
22937
23221
  "kind": "class",
@@ -23365,6 +23649,14 @@
23365
23649
  "module": "@nodefony/http",
23366
23650
  "description": "Construit la liste `RegExp` de la barrière `trustedHosts` (kernel, avant routing). Toujours : le domaine canonique (`kernel.domain`). En development : + loopback (`localhost`/`127.0.0.1`/`[::1]`) p…"
23367
23651
  },
23652
+ "resolveTrustedHostNames": {
23653
+ "name": "resolveTrustedHostNames",
23654
+ "kind": "function",
23655
+ "file": "src/packages/@nodefony/http/nodefony/src/context/domainMatcher.ts",
23656
+ "exported": true,
23657
+ "module": "@nodefony/http",
23658
+ "description": "Rend les NOMS d'hôtes que la barrière `trustedHosts` accepte — la même politique que {@link compileTrustedHosts}, mais lisible par un humain ou par un générateur de configuration (`server_name` ngi…"
23659
+ },
23368
23660
  "isDomainAllowed": {
23369
23661
  "name": "isDomainAllowed",
23370
23662
  "kind": "function",
@@ -23660,6 +23952,15 @@
23660
23952
  "extends": null,
23661
23953
  "description": "Générateurs de configuration reverse-proxy (nginx / haproxy) DÉRIVÉE de l'introspection Nodefony — fonctions PURES (aucun accès kernel/fs), testables et sérialisables. Le câblage (lecture des servi…"
23662
23954
  },
23955
+ "ProxyTlsTermination": {
23956
+ "name": "ProxyTlsTermination",
23957
+ "kind": "interface",
23958
+ "file": "src/packages/@nodefony/http/nodefony/src/proxy/generateProxyConfig.ts",
23959
+ "exported": true,
23960
+ "module": "@nodefony/http",
23961
+ "extends": null,
23962
+ "description": "Terminaison TLS au frontal — **nginx uniquement**. Les chemins sont ceux vus par le PROXY à l'exécution, jamais ceux de la machine qui a généré la configuration : une clé privée n'entre pas dans un…"
23963
+ },
23663
23964
  "ProxyIntrospection": {
23664
23965
  "name": "ProxyIntrospection",
23665
23966
  "kind": "interface",
@@ -25546,6 +25847,14 @@
25546
25847
  "decorators": [],
25547
25848
  "description": "Keystore Ed25519 — implémentation de référence d'{@link IJwtKeystore}. Résout la clé de signature selon une **priorité** (jamais d'auto-génération en clair « par défaut » en prod) : 1. **env** — `c…"
25548
25849
  },
25850
+ "keystoreLeaksIntoImage": {
25851
+ "name": "keystoreLeaksIntoImage",
25852
+ "kind": "function",
25853
+ "file": "src/packages/@nodefony/security/nodefony/src/token/JwtKeystore.ts",
25854
+ "exported": true,
25855
+ "module": "@nodefony/security",
25856
+ "description": "Le trousseau va-t-il partir dans l'image de conteneur ? ⭐ **Pourquoi cet avertissement existe.** Le trousseau est une clé privée Ed25519. Elle ne sort pas de l'image aujourd'hui pour UNE seule rais…"
25857
+ },
25549
25858
  "IJwtRuntime": {
25550
25859
  "name": "IJwtRuntime",
25551
25860
  "kind": "interface",
@@ -27179,6 +27488,7 @@
27179
27488
  ],
27180
27489
  "Error": [
27181
27490
  "nodefonyError",
27491
+ "LicenseInventoryError",
27182
27492
  "BootConfigurationError",
27183
27493
  "RpcError",
27184
27494
  "TimeoutError",
@@ -27311,6 +27621,7 @@
27311
27621
  "GitHooks",
27312
27622
  "Inspect",
27313
27623
  "Install",
27624
+ "Licenses",
27314
27625
  "Menu",
27315
27626
  "Outdated",
27316
27627
  "Prod",
@@ -27331,7 +27642,8 @@
27331
27642
  "SecurityToken",
27332
27643
  "SecurityUserAdd",
27333
27644
  "SecurityUserDelete",
27334
- "SecurityUserList"
27645
+ "SecurityUserList",
27646
+ "SecurityUserPassword"
27335
27647
  ],
27336
27648
  "IClusterMessage": [
27337
27649
  "IClusterProbeCtl",
@@ -27912,6 +28224,7 @@
27912
28224
  "src/nodefony/src/kernel/commands/GitHooksCommand.ts",
27913
28225
  "src/nodefony/src/kernel/commands/InspectCommand.ts",
27914
28226
  "src/nodefony/src/kernel/commands/InstallCommand.ts",
28227
+ "src/nodefony/src/kernel/commands/LicensesCommand.ts",
27915
28228
  "src/nodefony/src/kernel/commands/MenuCommand.ts",
27916
28229
  "src/nodefony/src/kernel/commands/OutdatedCommand.ts",
27917
28230
  "src/nodefony/src/kernel/commands/ProdCommand.ts",
@@ -27932,7 +28245,8 @@
27932
28245
  "src/packages/@nodefony/security/nodefony/command/security-token.ts",
27933
28246
  "src/packages/@nodefony/security/nodefony/command/security-user-add.ts",
27934
28247
  "src/packages/@nodefony/security/nodefony/command/security-user-delete.ts",
27935
- "src/packages/@nodefony/security/nodefony/command/security-user-list.ts"
28248
+ "src/packages/@nodefony/security/nodefony/command/security-user-list.ts",
28249
+ "src/packages/@nodefony/security/nodefony/command/security-user-password.ts"
27936
28250
  ],
27937
28251
  "ColorFn": [
27938
28252
  "src/nodefony/src/Cli.ts"
@@ -28231,6 +28545,7 @@
28231
28545
  "src/nodefony/src/kernel/commands/ClusterCommand.ts",
28232
28546
  "src/nodefony/src/kernel/commands/DevCommand.ts",
28233
28547
  "src/nodefony/src/kernel/commands/DoctorCommand.ts",
28548
+ "src/nodefony/src/kernel/commands/LicensesCommand.ts",
28234
28549
  "src/nodefony/src/kernel/commands/OutdatedCommand.ts",
28235
28550
  "src/nodefony/src/kernel/commands/ProdCommand.ts",
28236
28551
  "src/nodefony/src/kernel/commands/runtimeLauncher.ts",
@@ -28398,6 +28713,7 @@
28398
28713
  "src/nodefony/src/Service.ts",
28399
28714
  "src/nodefony/src/kernel/Kernel.ts",
28400
28715
  "src/nodefony/src/kernel/Module.ts",
28716
+ "src/nodefony/src/runtime/identityHint.ts",
28401
28717
  "src/nodefony/src/types/IModule.ts",
28402
28718
  "src/nodefony/src/types/IService.ts",
28403
28719
  "src/packages/@nodefony/framework/nodefony/src/KernelAdminApi.ts",
@@ -29905,6 +30221,9 @@
29905
30221
  "SecurityUserDelete": [
29906
30222
  "src/packages/@nodefony/security/index.ts"
29907
30223
  ],
30224
+ "SecurityUserPassword": [
30225
+ "src/packages/@nodefony/security/index.ts"
30226
+ ],
29908
30227
  "SecurityToken": [
29909
30228
  "src/packages/@nodefony/security/index.ts"
29910
30229
  ],
@@ -30069,6 +30388,7 @@
30069
30388
  "src/nodefony/src/kernel/CliKernel.ts",
30070
30389
  "src/nodefony/src/kernel/Kernel.ts",
30071
30390
  "src/nodefony/src/kernel/commands/InspectCommand.ts",
30391
+ "src/nodefony/src/kernel/commands/LicensesCommand.ts",
30072
30392
  "src/nodefony/src/kernel/commands/OutdatedCommand.ts",
30073
30393
  "src/nodefony/src/kernel/commands/runtimeLauncher.ts",
30074
30394
  "src/nodefony/src/service/dev/detachedStart.ts",
@@ -30107,6 +30427,9 @@
30107
30427
  "renderMcpPlan": [
30108
30428
  "src/nodefony/src/cli/aiMcp.ts"
30109
30429
  ],
30430
+ "serversOf": [
30431
+ "src/nodefony/src/cli/aiMcp.ts"
30432
+ ],
30110
30433
  "IMcpConfigDocument": [
30111
30434
  "src/nodefony/src/cli/aiMcp.ts"
30112
30435
  ],
@@ -30138,6 +30461,9 @@
30138
30461
  "renderPlanShell": [
30139
30462
  "src/nodefony/src/cli/aiMcp.ts"
30140
30463
  ],
30464
+ "IAgentMcpFile": [
30465
+ "src/nodefony/src/cli/aiMcp.ts"
30466
+ ],
30141
30467
  "IAgentTarget": [
30142
30468
  "src/nodefony/src/cli/aiMcp.ts",
30143
30469
  "src/nodefony/src/cli/create.ts",
@@ -30198,6 +30524,7 @@
30198
30524
  ],
30199
30525
  "portableSpawn": [
30200
30526
  "src/nodefony/src/cli/create.ts",
30527
+ "src/nodefony/src/cli/licenses.ts",
30201
30528
  "src/nodefony/src/kernel/commands/BuildCommand.ts",
30202
30529
  "src/nodefony/src/kernel/commands/MenuCommand.ts",
30203
30530
  "src/packages/@nodefony/studio/nodefony/service/ScaffoldService.ts"
@@ -30276,6 +30603,22 @@
30276
30603
  "syncSkillPointers": [
30277
30604
  "src/nodefony/src/cli/create.ts"
30278
30605
  ],
30606
+ "LicenseInventoryError": [
30607
+ "src/nodefony/src/cli/create.ts",
30608
+ "src/nodefony/src/kernel/commands/LicensesCommand.ts"
30609
+ ],
30610
+ "NOTICES_FILE": [
30611
+ "src/nodefony/src/cli/create.ts",
30612
+ "src/nodefony/src/kernel/commands/LicensesCommand.ts"
30613
+ ],
30614
+ "renderNotices": [
30615
+ "src/nodefony/src/cli/create.ts",
30616
+ "src/nodefony/src/kernel/commands/LicensesCommand.ts"
30617
+ ],
30618
+ "surveyLicenses": [
30619
+ "src/nodefony/src/cli/create.ts",
30620
+ "src/nodefony/src/kernel/commands/LicensesCommand.ts"
30621
+ ],
30279
30622
  "runAiMcpCommand": [
30280
30623
  "src/nodefony/src/cli/create.ts",
30281
30624
  "src/nodefony/src/kernel/CliKernel.ts",
@@ -30577,6 +30920,7 @@
30577
30920
  "src/nodefony/src/kernel/commands/GitHooksCommand.ts",
30578
30921
  "src/nodefony/src/kernel/commands/InspectCommand.ts",
30579
30922
  "src/nodefony/src/kernel/commands/InstallCommand.ts",
30923
+ "src/nodefony/src/kernel/commands/LicensesCommand.ts",
30580
30924
  "src/nodefony/src/kernel/commands/MenuCommand.ts",
30581
30925
  "src/nodefony/src/kernel/commands/OutdatedCommand.ts",
30582
30926
  "src/nodefony/src/kernel/commands/ProdCommand.ts",
@@ -30604,7 +30948,8 @@
30604
30948
  "src/packages/@nodefony/security/nodefony/command/security-token.ts",
30605
30949
  "src/packages/@nodefony/security/nodefony/command/security-user-add.ts",
30606
30950
  "src/packages/@nodefony/security/nodefony/command/security-user-delete.ts",
30607
- "src/packages/@nodefony/security/nodefony/command/security-user-list.ts"
30951
+ "src/packages/@nodefony/security/nodefony/command/security-user-list.ts",
30952
+ "src/packages/@nodefony/security/nodefony/command/security-user-password.ts"
30608
30953
  ],
30609
30954
  "Builder": [
30610
30955
  "src/nodefony/src/command/Command.ts"
@@ -30619,7 +30964,7 @@
30619
30964
  "src/nodefony/src/command/Command.ts",
30620
30965
  "src/nodefony/src/kernel/CliKernel.ts"
30621
30966
  ],
30622
- "tagUnboundedListener": [
30967
+ "tagCommandAction": [
30623
30968
  "src/nodefony/src/command/Command.ts"
30624
30969
  ],
30625
30970
  "ResolvedAppConfig": [
@@ -30719,6 +31064,9 @@
30719
31064
  "Outdated": [
30720
31065
  "src/nodefony/src/kernel/CliKernel.ts"
30721
31066
  ],
31067
+ "Licenses": [
31068
+ "src/nodefony/src/kernel/CliKernel.ts"
31069
+ ],
30722
31070
  "Status": [
30723
31071
  "src/nodefony/src/kernel/CliKernel.ts"
30724
31072
  ],
@@ -30952,6 +31300,9 @@
30952
31300
  "readAppEnvOverrideReport": [
30953
31301
  "src/nodefony/src/kernel/Kernel.ts"
30954
31302
  ],
31303
+ "setRunServesTraffic": [
31304
+ "src/nodefony/src/kernel/Kernel.ts"
31305
+ ],
30955
31306
  "readResolvedPath": [
30956
31307
  "src/nodefony/src/kernel/Kernel.ts",
30957
31308
  "src/packages/@nodefony/framework/nodefony/src/KernelAdminApi.ts"
@@ -31006,7 +31357,7 @@
31006
31357
  "TimeoutError": [
31007
31358
  "src/nodefony/src/kernel/Kernel.ts"
31008
31359
  ],
31009
- "isUnboundedListener": [
31360
+ "isCommandAction": [
31010
31361
  "src/nodefony/src/kernel/Kernel.ts"
31011
31362
  ],
31012
31363
  "readListenerTags": [
@@ -32359,7 +32710,8 @@
32359
32710
  "src/nodefony/src/service/dev/DevSupervisor.ts"
32360
32711
  ],
32361
32712
  "renderReport": [
32362
- "src/nodefony/src/kernel/checks/runDoctor.ts"
32713
+ "src/nodefony/src/kernel/checks/runDoctor.ts",
32714
+ "src/nodefony/src/kernel/commands/LicensesCommand.ts"
32363
32715
  ],
32364
32716
  "readManifestSources": [
32365
32717
  "src/nodefony/src/kernel/checks/surface.ts",
@@ -32385,6 +32737,7 @@
32385
32737
  "src/nodefony/src/kernel/commands/GitHooksCommand.ts",
32386
32738
  "src/nodefony/src/kernel/commands/InspectCommand.ts",
32387
32739
  "src/nodefony/src/kernel/commands/InstallCommand.ts",
32740
+ "src/nodefony/src/kernel/commands/LicensesCommand.ts",
32388
32741
  "src/nodefony/src/kernel/commands/MenuCommand.ts",
32389
32742
  "src/nodefony/src/kernel/commands/OutdatedCommand.ts",
32390
32743
  "src/nodefony/src/kernel/commands/ProdCommand.ts",
@@ -32410,7 +32763,8 @@
32410
32763
  "src/packages/@nodefony/security/nodefony/command/security-token.ts",
32411
32764
  "src/packages/@nodefony/security/nodefony/command/security-user-add.ts",
32412
32765
  "src/packages/@nodefony/security/nodefony/command/security-user-delete.ts",
32413
- "src/packages/@nodefony/security/nodefony/command/security-user-list.ts"
32766
+ "src/packages/@nodefony/security/nodefony/command/security-user-list.ts",
32767
+ "src/packages/@nodefony/security/nodefony/command/security-user-password.ts"
32414
32768
  ],
32415
32769
  "resolveTopology": [
32416
32770
  "src/nodefony/src/kernel/commands/ClusterCommand.ts",
@@ -32461,6 +32815,9 @@
32461
32815
  "TableRow": [
32462
32816
  "src/nodefony/src/kernel/commands/InspectCommand.ts"
32463
32817
  ],
32818
+ "ILicenseSurvey": [
32819
+ "src/nodefony/src/kernel/commands/LicensesCommand.ts"
32820
+ ],
32464
32821
  "buildStartMenu": [
32465
32822
  "src/nodefony/src/kernel/commands/MenuCommand.ts"
32466
32823
  ],
@@ -32868,6 +33225,15 @@
32868
33225
  "src/nodefony/src/syslog/transports/LokiTransport.ts",
32869
33226
  "src/nodefony/src/syslog/transports/OpenSearchTransport.ts"
32870
33227
  ],
33228
+ "buildIndexTemplate": [
33229
+ "src/nodefony/src/syslog/transports/OpenSearchTransport.ts"
33230
+ ],
33231
+ "OPENSEARCH_TEMPLATE_NAME": [
33232
+ "src/nodefony/src/syslog/transports/OpenSearchTransport.ts"
33233
+ ],
33234
+ "toOpenSearchDocument": [
33235
+ "src/nodefony/src/syslog/transports/OpenSearchTransport.ts"
33236
+ ],
32871
33237
  "IEntity": [
32872
33238
  "src/modules/mediasoup/nodefony/entity/schema.ts",
32873
33239
  "src/packages/@nodefony/drizzle/nodefony/entity/auditEventEntity.ts",
@@ -33125,6 +33491,7 @@
33125
33491
  "src/packages/@nodefony/security/nodefony/command/security-user-add.ts",
33126
33492
  "src/packages/@nodefony/security/nodefony/command/security-user-delete.ts",
33127
33493
  "src/packages/@nodefony/security/nodefony/command/security-user-list.ts",
33494
+ "src/packages/@nodefony/security/nodefony/command/security-user-password.ts",
33128
33495
  "src/packages/@nodefony/user/nodefony/src/admin/UserAdminApi.ts"
33129
33496
  ],
33130
33497
  "recordInitializeRun": [
@@ -33333,7 +33700,8 @@
33333
33700
  "src/packages/@nodefony/security/nodefony/command/security-token.ts",
33334
33701
  "src/packages/@nodefony/security/nodefony/command/security-user-add.ts",
33335
33702
  "src/packages/@nodefony/security/nodefony/command/security-user-delete.ts",
33336
- "src/packages/@nodefony/security/nodefony/command/security-user-list.ts"
33703
+ "src/packages/@nodefony/security/nodefony/command/security-user-list.ts",
33704
+ "src/packages/@nodefony/security/nodefony/command/security-user-password.ts"
33337
33705
  ],
33338
33706
  "DrizzleMigrator": [
33339
33707
  "src/packages/@nodefony/drizzle/nodefony/command/migrateShared.ts",
@@ -34555,6 +34923,10 @@
34555
34923
  "src/packages/@nodefony/framework/nodefony/src/PlaygroundAdminApi.ts",
34556
34924
  "src/packages/@nodefony/framework/nodefony/src/scopeCatalog.ts"
34557
34925
  ],
34926
+ "identityHint": [
34927
+ "src/packages/@nodefony/framework/nodefony/src/Resolver.ts",
34928
+ "src/packages/@nodefony/realtime/nodefony/src/server/RealtimeController.ts"
34929
+ ],
34558
34930
  "IResolver": [
34559
34931
  "src/packages/@nodefony/framework/nodefony/src/Resolver.ts"
34560
34932
  ],
@@ -34713,7 +35085,8 @@
34713
35085
  "src/packages/@nodefony/frontend/nodefony/service/ViteProcessSupervisor.ts"
34714
35086
  ],
34715
35087
  "planAssetPublish": [
34716
- "src/packages/@nodefony/http/nodefony/command/assetsPublishCommand.ts"
35088
+ "src/packages/@nodefony/http/nodefony/command/assetsPublishCommand.ts",
35089
+ "src/packages/@nodefony/http/nodefony/command/proxyGenerateCommand.ts"
34717
35090
  ],
34718
35091
  "AssetSource": [
34719
35092
  "src/packages/@nodefony/http/nodefony/command/assetsPublishCommand.ts"
@@ -34733,6 +35106,13 @@
34733
35106
  "ProxyIntrospection": [
34734
35107
  "src/packages/@nodefony/http/nodefony/command/proxyGenerateCommand.ts"
34735
35108
  ],
35109
+ "resolveTrustedHostNames": [
35110
+ "src/packages/@nodefony/http/nodefony/command/proxyGenerateCommand.ts"
35111
+ ],
35112
+ "ITrustedHostsConfig": [
35113
+ "src/packages/@nodefony/http/nodefony/command/proxyGenerateCommand.ts",
35114
+ "src/packages/@nodefony/http/nodefony/service/http-kernel.ts"
35115
+ ],
34736
35116
  "httpConfigSchema": [
34737
35117
  "src/packages/@nodefony/http/nodefony/config/defineModuleConfig.ts"
34738
35118
  ],
@@ -34842,9 +35222,6 @@
34842
35222
  "compileTrustedHosts": [
34843
35223
  "src/packages/@nodefony/http/nodefony/service/http-kernel.ts"
34844
35224
  ],
34845
- "ITrustedHostsConfig": [
34846
- "src/packages/@nodefony/http/nodefony/service/http-kernel.ts"
34847
- ],
34848
35225
  "Statics": [
34849
35226
  "src/packages/@nodefony/http/nodefony/service/http-kernel.ts"
34850
35227
  ],
@@ -35290,7 +35667,12 @@
35290
35667
  "src/packages/@nodefony/security/nodefony/command/security-token.ts"
35291
35668
  ],
35292
35669
  "askPasswordMasked": [
35293
- "src/packages/@nodefony/security/nodefony/command/security-user-add.ts"
35670
+ "src/packages/@nodefony/security/nodefony/command/security-user-add.ts",
35671
+ "src/packages/@nodefony/security/nodefony/command/security-user-password.ts"
35672
+ ],
35673
+ "USER_REVOKED_EVENT": [
35674
+ "src/packages/@nodefony/security/nodefony/command/security-user-password.ts",
35675
+ "src/packages/@nodefony/security/nodefony/src/admin/userRevocationCascade.ts"
35294
35676
  ],
35295
35677
  "securityConfigSchema": [
35296
35678
  "src/packages/@nodefony/security/nodefony/config/defineModuleConfig.ts"
@@ -36500,9 +36882,6 @@
36500
36882
  "webhookAdminEndpoints": [
36501
36883
  "src/packages/@nodefony/security/nodefony/src/admin/SecurityAdminApi.ts"
36502
36884
  ],
36503
- "USER_REVOKED_EVENT": [
36504
- "src/packages/@nodefony/security/nodefony/src/admin/userRevocationCascade.ts"
36505
- ],
36506
36885
  "IUserRevokedEvent": [
36507
36886
  "src/packages/@nodefony/security/nodefony/src/admin/userRevocationCascade.ts"
36508
36887
  ],