@maudecode/talaria-web 1.11.0 → 1.12.1

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 (247) hide show
  1. package/_release.json +4 -4
  2. package/dist/api/chat-router.d.ts +68 -4
  3. package/dist/api/chat-router.js +11 -8
  4. package/dist/api/chat-router.js.map +1 -1
  5. package/dist/api/router.d.ts +10 -0
  6. package/dist/api/router.js +2 -1
  7. package/dist/api/router.js.map +1 -1
  8. package/dist/api/sessions-router.d.ts +407 -51
  9. package/dist/api/sessions-router.js +2 -2
  10. package/dist/api/sessions-router.js.map +1 -1
  11. package/dist/api/sse-routes.js +52 -8
  12. package/dist/api/sse-routes.js.map +1 -1
  13. package/dist/api/tools-router.d.ts +329 -0
  14. package/dist/api/tools-router.js +97 -4
  15. package/dist/api/tools-router.js.map +1 -1
  16. package/dist/app.d.ts +812 -55
  17. package/dist/auth/oidc.js +2 -0
  18. package/dist/auth/oidc.js.map +1 -1
  19. package/dist/auth/store.d.ts +17 -0
  20. package/dist/auth/store.js +77 -19
  21. package/dist/auth/store.js.map +1 -1
  22. package/dist/fs/atomic.d.ts +8 -1
  23. package/dist/fs/atomic.js +52 -3
  24. package/dist/fs/atomic.js.map +1 -1
  25. package/dist/http/context.d.ts +2 -0
  26. package/dist/http/context.js.map +1 -1
  27. package/dist/redact.d.ts +15 -0
  28. package/dist/redact.js +1393 -9
  29. package/dist/redact.js.map +1 -1
  30. package/dist/release.js +3 -1
  31. package/dist/release.js.map +1 -1
  32. package/dist/runtime.js +20 -9
  33. package/dist/runtime.js.map +1 -1
  34. package/dist/server.d.ts +1 -1
  35. package/dist/server.js +11 -5
  36. package/dist/server.js.map +1 -1
  37. package/dist/sessions/anchor.d.ts +2 -0
  38. package/dist/sessions/anchor.js +22 -17
  39. package/dist/sessions/anchor.js.map +1 -1
  40. package/dist/sessions/file-changes.d.ts +15 -0
  41. package/dist/sessions/file-changes.js +58 -0
  42. package/dist/sessions/file-changes.js.map +1 -0
  43. package/dist/sessions/journal.d.ts +6 -1
  44. package/dist/sessions/journal.js +9 -15
  45. package/dist/sessions/journal.js.map +1 -1
  46. package/dist/sessions/list.d.ts +21 -1
  47. package/dist/sessions/list.js +81 -17
  48. package/dist/sessions/list.js.map +1 -1
  49. package/dist/sessions/merge.d.ts +66 -2
  50. package/dist/sessions/merge.js +291 -9
  51. package/dist/sessions/merge.js.map +1 -1
  52. package/dist/sessions/pending.d.ts +11 -2
  53. package/dist/sessions/pending.js +52 -3
  54. package/dist/sessions/pending.js.map +1 -1
  55. package/dist/sessions/service.d.ts +16 -3
  56. package/dist/sessions/service.js +92 -54
  57. package/dist/sessions/service.js.map +1 -1
  58. package/dist/sessions/state-db.d.ts +5 -0
  59. package/dist/sessions/state-db.js +34 -0
  60. package/dist/sessions/state-db.js.map +1 -1
  61. package/dist/sessions/streams.d.ts +4 -1
  62. package/dist/sessions/streams.js +3 -0
  63. package/dist/sessions/streams.js.map +1 -1
  64. package/dist/sessions/tool-display.d.ts +21 -0
  65. package/dist/sessions/tool-display.js +113 -0
  66. package/dist/sessions/tool-display.js.map +1 -0
  67. package/dist/sessions/turn.d.ts +25 -7
  68. package/dist/sessions/turn.js +153 -90
  69. package/dist/sessions/turn.js.map +1 -1
  70. package/dist/spa.d.ts +2 -0
  71. package/dist/spa.js +9 -0
  72. package/dist/spa.js.map +1 -1
  73. package/dist/test/harness.d.ts +2 -0
  74. package/dist/test/harness.js +1 -1
  75. package/dist/test/harness.js.map +1 -1
  76. package/dist/tools/terminal.d.ts +6 -0
  77. package/dist/tools/terminal.js +24 -3
  78. package/dist/tools/terminal.js.map +1 -1
  79. package/dist/tools/update-notifications.d.ts +120 -0
  80. package/dist/tools/update-notifications.js +387 -0
  81. package/dist/tools/update-notifications.js.map +1 -0
  82. package/dist/tools/updates.d.ts +49 -3
  83. package/dist/tools/updates.js +319 -53
  84. package/dist/tools/updates.js.map +1 -1
  85. package/package.json +2 -2
  86. package/sidecar/scripts/replay_sidecar.py +17 -0
  87. package/sidecar/talaria_sidecar/__init__.py +1 -1
  88. package/sidecar/talaria_sidecar/home.py +39 -16
  89. package/sidecar/talaria_sidecar/methods/chat.py +113 -4
  90. package/static/dist/FILES.txt +115 -116
  91. package/static/dist/assets/AppShell-m4w420jl.js +1 -0
  92. package/static/dist/assets/ChatPage-cuqcnisv.js +20 -0
  93. package/static/dist/assets/HubRoute-hqgqtm35.js +2 -0
  94. package/static/dist/assets/{Markdown-ftyfzds0.js → Markdown-j2hlu30v.js} +7 -7
  95. package/static/dist/assets/RightPanel-oid5q557.js +1 -0
  96. package/static/dist/assets/Select-ot2zr0il.js +1 -0
  97. package/static/dist/assets/SessionListPanel-o3sgjnrq.js +1 -0
  98. package/static/dist/assets/{SettingsLayout-pdpmhy1o.js → SettingsLayout-b0idn649.js} +1 -1
  99. package/static/dist/assets/States-htz1oee5.js +1 -0
  100. package/static/dist/assets/Toaster-h49pk1hy.js +1 -0
  101. package/static/dist/assets/_app-h7eaezs7.js +1 -0
  102. package/static/dist/assets/_app.ext._extensionId-h8oaqzsj.js +1 -0
  103. package/static/dist/assets/_app.index-xinao3xh.js +1 -0
  104. package/static/dist/assets/_app.insights-cxplvhkm.js +1 -0
  105. package/static/dist/assets/_app.kanban-hhli8h0h.js +1 -0
  106. package/static/dist/assets/_app.logs-f6srwjfl.js +1 -0
  107. package/static/dist/assets/_app.memory-lntcea85.js +1 -0
  108. package/static/dist/assets/_app.profiles-lftyp6of.js +1 -0
  109. package/static/dist/assets/{_app.session._sessionId-n1ggcf5e.js → _app.session._sessionId-hhpcqih4.js} +1 -1
  110. package/static/dist/assets/_app.settings-rs93zpvw.js +1 -0
  111. package/static/dist/assets/_app.settings._section-nafqsbwm.js +1 -0
  112. package/static/dist/assets/_app.skills-jzoi1ivd.js +1 -0
  113. package/static/dist/assets/_app.tasks-ijphsw56.js +2 -0
  114. package/static/dist/assets/_app.todos-emyh8inv.js +1 -0
  115. package/static/dist/assets/_app.workspaces-fwr1cum8.js +1 -0
  116. package/static/dist/assets/{abnfDiagram-VCTEODGH-i4bgzu83.js → abnfDiagram-VCTEODGH-egykbz8h.js} +1 -1
  117. package/static/dist/assets/architecture-7GRP2DOG-l6y92mbn.js +1 -0
  118. package/static/dist/assets/{architectureDiagram-5GKGNRK7-mx21lwqa.js → architectureDiagram-5GKGNRK7-b2e0wk3y.js} +1 -1
  119. package/static/dist/assets/{blockDiagram-I7D4REHJ-o1hhchxv.js → blockDiagram-I7D4REHJ-i3cq67dn.js} +1 -1
  120. package/static/dist/assets/{c4Diagram-7LVT6UL2-jygqtvd8.js → c4Diagram-7LVT6UL2-lg1p1s7a.js} +1 -1
  121. package/static/dist/assets/channel-gq8cwu71.js +1 -0
  122. package/static/dist/assets/{chunk-4HAMMTFA-hjcpubgk.js → chunk-4HAMMTFA-i0s1s7zi.js} +1 -1
  123. package/static/dist/assets/{chunk-75Z2AOVW-eibnex6m.js → chunk-75Z2AOVW-kwinpapo.js} +1 -1
  124. package/static/dist/assets/{chunk-DU6HZSFF-k1tp3qnp.js → chunk-DU6HZSFF-hb8qrbc3.js} +3 -3
  125. package/static/dist/assets/{chunk-F27PBJKO-lvcgn16f.js → chunk-F27PBJKO-dy2tqtcs.js} +1 -1
  126. package/static/dist/assets/{chunk-GMAD6QVW-ldlzruv1.js → chunk-GMAD6QVW-fqox5yvt.js} +1 -1
  127. package/static/dist/assets/{chunk-GVQU2GXP-hs1mva9d.js → chunk-GVQU2GXP-bo3x6ze4.js} +1 -1
  128. package/static/dist/assets/{chunk-IMKFNOWR-o7eqx3yb.js → chunk-IMKFNOWR-nxs6rrcq.js} +1 -1
  129. package/static/dist/assets/{chunk-L3NEJ4N5-bp1ofl70.js → chunk-L3NEJ4N5-f9yeq1fi.js} +1 -1
  130. package/static/dist/assets/{chunk-OSK3NFVY-o8m6mdz5.js → chunk-OSK3NFVY-c7df44qv.js} +1 -1
  131. package/static/dist/assets/{chunk-P2QGCYS3-kx83fti2.js → chunk-P2QGCYS3-eyjzf5o5.js} +1 -1
  132. package/static/dist/assets/{chunk-POPQ4Y6H-mwl99e9y.js → chunk-POPQ4Y6H-iy3hp9rc.js} +1 -1
  133. package/static/dist/assets/{chunk-PWAF6VOD-oriuokxy.js → chunk-PWAF6VOD-co2yoefz.js} +1 -1
  134. package/static/dist/assets/{chunk-SHT3W25Y-ab5cf00v.js → chunk-SHT3W25Y-obzqmn9k.js} +1 -1
  135. package/static/dist/assets/{chunk-SVP7TREG-kqdrpr17.js → chunk-SVP7TREG-hqwdo6vt.js} +1 -1
  136. package/static/dist/assets/{chunk-TICWLB2K-kfbnjabk.js → chunk-TICWLB2K-l8t1mdfd.js} +1 -1
  137. package/static/dist/assets/classDiagram-ZZMXUADV-fg9sc5r8.js +1 -0
  138. package/static/dist/assets/classDiagram-v2-VYDZK3BY-fg9sc5r8.js +1 -0
  139. package/static/dist/assets/{copied-dp33szhq.js → copied-hurn8vn4.js} +1 -1
  140. package/static/dist/assets/{cynefin-OW5HDTMX-mm5sj9s7.js → cynefin-OW5HDTMX-ngx2ihay.js} +1 -1
  141. package/static/dist/assets/{cynefinDiagram-5FMLGOSQ-nfon5q38.js → cynefinDiagram-5FMLGOSQ-fiyooys3.js} +1 -1
  142. package/static/dist/assets/{dagre-GXQ25YYZ-dzdp9ypb.js → dagre-GXQ25YYZ-fctryel6.js} +1 -1
  143. package/static/dist/assets/{diagram-S7CK7UJ4-ckxzqo01.js → diagram-S7CK7UJ4-m27jopok.js} +1 -1
  144. package/static/dist/assets/{diagram-UQ7AKVKN-hw16h1um.js → diagram-UQ7AKVKN-ojgkbmp4.js} +1 -1
  145. package/static/dist/assets/{diagram-VSXAHHWV-mu7wu2zg.js → diagram-VSXAHHWV-gfafpgyj.js} +1 -1
  146. package/static/dist/assets/{diagram-VX7I27RA-k9uprwtj.js → diagram-VX7I27RA-daobicg4.js} +1 -1
  147. package/static/dist/assets/{diagram-Z3DM3KII-csdjzrg9.js → diagram-Z3DM3KII-mi475zvk.js} +1 -1
  148. package/static/dist/assets/{ebnfDiagram-PWID7BFC-n8mbw2jj.js → ebnfDiagram-PWID7BFC-daf4zvsy.js} +1 -1
  149. package/static/dist/assets/endpoints-cyjhnrbn.js +64 -0
  150. package/static/dist/assets/{erDiagram-RLTQ6QDP-fsfe1uj0.js → erDiagram-RLTQ6QDP-gxfhxvfp.js} +1 -1
  151. package/static/dist/assets/eventmodeling-NTZA5JFV-manga0bq.js +1 -0
  152. package/static/dist/assets/flowDiagram-HODETNUW-bpt13uny.js +1 -0
  153. package/static/dist/assets/{ganttDiagram-EL5Y4UJY-gsba3iq9.js → ganttDiagram-EL5Y4UJY-k3208e0p.js} +1 -1
  154. package/static/dist/assets/{gitGraph-4MIJSDKK-na86q1pu.js → gitGraph-4MIJSDKK-gjuhj4zk.js} +1 -1
  155. package/static/dist/assets/{gitGraphDiagram-WWUBYQGX-g72ew3xz.js → gitGraphDiagram-WWUBYQGX-jglxvux1.js} +1 -1
  156. package/static/dist/assets/{highlighted-body-KPVGNVTW-okn18cp1.js → highlighted-body-KPVGNVTW-gh24xc9c.js} +1 -1
  157. package/static/dist/assets/index-gsg78cb4.css +2 -0
  158. package/static/dist/assets/index-jb47los5.js +11 -0
  159. package/static/dist/assets/{info-A6RAGUB7-i01jeltk.js → info-A6RAGUB7-huf0xaoq.js} +1 -1
  160. package/static/dist/assets/{infoDiagram-27XIBGKW-cayiv6fa.js → infoDiagram-27XIBGKW-jk3n96ix.js} +1 -1
  161. package/static/dist/assets/{ishikawaDiagram-5VMMS53U-g4rf14bv.js → ishikawaDiagram-5VMMS53U-o95uo5dx.js} +1 -1
  162. package/static/dist/assets/{journeyDiagram-3NMN7TZE-fusb2424.js → journeyDiagram-3NMN7TZE-h5ye2l70.js} +1 -1
  163. package/static/dist/assets/{kanban-definition-UXKFOSKX-g831pwlr.js → kanban-definition-UXKFOSKX-lgrpk5yi.js} +1 -1
  164. package/static/dist/assets/{lazyRouteComponent-ol965zwk.js → lazyRouteComponent-owywngyt.js} +1 -1
  165. package/static/dist/assets/{line-md6em6gc.js → line-cihmc0pn.js} +1 -1
  166. package/static/dist/assets/{login-kfclsqd2.js → login-g063apx6.js} +1 -1
  167. package/static/dist/assets/mermaid-HWGCJPDP-okd1mnvj.js +1 -0
  168. package/static/dist/assets/{mermaid-parser.core-mq3uns9m.js → mermaid-parser.core-d1609aga.js} +3 -3
  169. package/static/dist/assets/{mindmap-definition-YA3MSWOX-oxafrned.js → mindmap-definition-YA3MSWOX-lbvtir31.js} +1 -1
  170. package/static/dist/assets/{onboarding-fo6hnkyv.js → onboarding-ngw0x0pr.js} +1 -1
  171. package/static/dist/assets/{packet-AYTQ26CC-ggxyvbym.js → packet-AYTQ26CC-o4cp5z3k.js} +1 -1
  172. package/static/dist/assets/{pegDiagram-XKGWAZYB-nk7xcqgp.js → pegDiagram-XKGWAZYB-e8xqu1qj.js} +1 -1
  173. package/static/dist/assets/{pie-WAS4IAKB-ito2razh.js → pie-WAS4IAKB-hm9icuov.js} +1 -1
  174. package/static/dist/assets/{pieDiagram-E7YTZNPT-g02xexar.js → pieDiagram-E7YTZNPT-hj96x7hn.js} +1 -1
  175. package/static/dist/assets/{quadrantDiagram-AXDQQJYC-d4jn4xq5.js → quadrantDiagram-AXDQQJYC-80utbxhm.js} +1 -1
  176. package/static/dist/assets/{radar-RG4KPBEZ-nebvfdzt.js → radar-RG4KPBEZ-k39b6100.js} +1 -1
  177. package/static/dist/assets/{railroad-74A4TZTK-ny3gebse.js → railroad-74A4TZTK-ewyqz67j.js} +1 -1
  178. package/static/dist/assets/railroad-abnf-HS5TGJTU-dx2q0evz.js +1 -0
  179. package/static/dist/assets/railroad-ebnf-LZEXJU2U-l8xt49t5.js +1 -0
  180. package/static/dist/assets/railroad-peg-WCYAUIDC-kuxha9yz.js +1 -0
  181. package/static/dist/assets/{railroadDiagram-O6MQD6OU-m09mmu67.js → railroadDiagram-O6MQD6OU-iwv9dby8.js} +1 -1
  182. package/static/dist/assets/{refresh-cw-eitd7yva.js → refresh-cw-hjzomwlo.js} +1 -1
  183. package/static/dist/assets/{requirementDiagram-BXWQKSXE-evggpcbk.js → requirementDiagram-BXWQKSXE-cdgh5jha.js} +1 -1
  184. package/static/dist/assets/{sankeyDiagram-P5KCCOFB-bun89039.js → sankeyDiagram-P5KCCOFB-dbu6p97m.js} +1 -1
  185. package/static/dist/assets/{saved-culx14ii.js → saved-feqhycco.js} +1 -1
  186. package/static/dist/assets/{search-nu6kzq55.js → search-n3jdc20p.js} +1 -1
  187. package/static/dist/assets/{sequenceDiagram-WJ2MYXX4-hhs9f09o.js → sequenceDiagram-WJ2MYXX4-b0wchifg.js} +1 -1
  188. package/static/dist/assets/{settings_section_extensions_title-mj0gcozh.js → settings_section_extensions_title-mtyviexd.js} +1 -1
  189. package/static/dist/assets/{share._token-k4pcnxqu.js → share._token-cwov8uqh.js} +2 -2
  190. package/static/dist/assets/{sliders-horizontal-b9ljga1o.js → sliders-horizontal-i1lseyg0.js} +1 -1
  191. package/static/dist/assets/{stateDiagram-D77RDMKH-gi7t1tro.js → stateDiagram-D77RDMKH-mb4b38xh.js} +1 -1
  192. package/static/dist/assets/stateDiagram-v2-MP3YSRHH-cn1fnqrg.js +1 -0
  193. package/static/dist/assets/{swimlanes-42K2YHIH-ea5urvph.js → swimlanes-42K2YHIH-ofrpfwj0.js} +1 -1
  194. package/static/dist/assets/swimlanesDiagram-VR7AAH4N-d652ummv.js +8 -0
  195. package/static/dist/assets/{timeline-definition-24CTP7MA-mq64rm3b.js → timeline-definition-24CTP7MA-hlw0jg6o.js} +1 -1
  196. package/static/dist/assets/todoStore-mfy9lpio.js +1 -0
  197. package/static/dist/assets/{treeView-Q6P3EWNA-cimbtxlz.js → treeView-Q6P3EWNA-d93wr19c.js} +1 -1
  198. package/static/dist/assets/{treemap-WGGIJYW6-wig5gi1y.js → treemap-WGGIJYW6-g7ezdedz.js} +1 -1
  199. package/static/dist/assets/{untitled-mbwemvxf.js → untitled-mqxhd1eh.js} +1 -1
  200. package/static/dist/assets/{useForm-li4bljlv.js → useForm-hh33yrwa.js} +1 -1
  201. package/static/dist/assets/useLocale-cr30vl7r.js +1 -0
  202. package/static/dist/assets/{vennDiagram-4TSXK5OY-ez63kh7n.js → vennDiagram-4TSXK5OY-m5vgeba5.js} +1 -1
  203. package/static/dist/assets/{wardley-WFR3VGLG-r7rftz31.js → wardley-WFR3VGLG-gpao9bxv.js} +1 -1
  204. package/static/dist/assets/{wardleyDiagram-VM6X3IG4-mvqg9eqc.js → wardleyDiagram-VM6X3IG4-g2yzwshm.js} +1 -1
  205. package/static/dist/assets/{xychartDiagram-S5SC5T6Z-eqxdfc91.js → xychartDiagram-S5SC5T6Z-itakhpic.js} +1 -1
  206. package/static/dist/index.html +1 -1
  207. package/static/dist/sw.js +114 -152
  208. package/static/dist/assets/AppShell-hikzkcql.js +0 -1
  209. package/static/dist/assets/ChatPage-ofqn89h9.js +0 -21
  210. package/static/dist/assets/HubRoute-f2zrs9si.js +0 -2
  211. package/static/dist/assets/RightPanel-febk3dkd.js +0 -1
  212. package/static/dist/assets/Select-lvx8gihl.js +0 -1
  213. package/static/dist/assets/SessionListPanel-o70ljmik.js +0 -1
  214. package/static/dist/assets/States-i46tz8an.js +0 -1
  215. package/static/dist/assets/Toaster-fklyeeyh.js +0 -1
  216. package/static/dist/assets/_app-j3rors25.js +0 -1
  217. package/static/dist/assets/_app.ext._extensionId-c0ey5ec9.js +0 -1
  218. package/static/dist/assets/_app.index-coy9jrto.js +0 -1
  219. package/static/dist/assets/_app.insights-ebd2k0i5.js +0 -1
  220. package/static/dist/assets/_app.kanban-e2p7ypi5.js +0 -1
  221. package/static/dist/assets/_app.logs-ml21mfyz.js +0 -1
  222. package/static/dist/assets/_app.memory-lhu5mm47.js +0 -1
  223. package/static/dist/assets/_app.profiles-egx0fgjo.js +0 -1
  224. package/static/dist/assets/_app.settings-d0vqtyid.js +0 -1
  225. package/static/dist/assets/_app.settings._section-cnzj6pli.js +0 -1
  226. package/static/dist/assets/_app.skills-kkug8obu.js +0 -1
  227. package/static/dist/assets/_app.tasks-nf285d2o.js +0 -2
  228. package/static/dist/assets/_app.todos-dxalqp1e.js +0 -1
  229. package/static/dist/assets/_app.workspaces-bqtduujs.js +0 -1
  230. package/static/dist/assets/architecture-7GRP2DOG-o8zqevhv.js +0 -1
  231. package/static/dist/assets/channel-mw8l793e.js +0 -1
  232. package/static/dist/assets/classDiagram-ZZMXUADV-egajr1wp.js +0 -1
  233. package/static/dist/assets/classDiagram-v2-VYDZK3BY-egajr1wp.js +0 -1
  234. package/static/dist/assets/endpoints-f6ngsyu5.js +0 -64
  235. package/static/dist/assets/eventmodeling-NTZA5JFV-k3zhqcyl.js +0 -1
  236. package/static/dist/assets/flowDiagram-HODETNUW-bdxes51f.js +0 -1
  237. package/static/dist/assets/index-ab0wj9ik.css +0 -2
  238. package/static/dist/assets/index-fd27xooo.js +0 -11
  239. package/static/dist/assets/mermaid-HWGCJPDP-ejk0d88t.js +0 -1
  240. package/static/dist/assets/railroad-abnf-HS5TGJTU-gtd38edw.js +0 -1
  241. package/static/dist/assets/railroad-ebnf-LZEXJU2U-o238oax2.js +0 -1
  242. package/static/dist/assets/railroad-peg-WCYAUIDC-c4acqp2j.js +0 -1
  243. package/static/dist/assets/stateDiagram-v2-MP3YSRHH-jtadbol7.js +0 -1
  244. package/static/dist/assets/swimlanesDiagram-VR7AAH4N-ki7weepw.js +0 -8
  245. package/static/dist/assets/todoStore-azvfuqbv.js +0 -1
  246. package/static/dist/assets/trash-osyo895g.js +0 -1
  247. package/static/dist/assets/useLocale-kdew6auf.js +0 -1
package/dist/auth/oidc.js CHANGED
@@ -355,6 +355,8 @@ export class OidcService {
355
355
  this.enforceAllowlist(claims, cfg);
356
356
  const boundProfile = this.resolveBoundProfile(cfg, claims);
357
357
  const binding = this.binding(cfg, boundProfile, this.ownerPermission(cfg, claims));
358
+ binding.issuer = cfg.issuer;
359
+ binding.subject = str(claims.sub);
358
360
  return { next_path: pending.next_path, native_flow_id: pending.native_flow_id, subject: str(claims.sub), email: str(claims.email), bound_profile: boundProfile, oidc_binding: binding, claims };
359
361
  }
360
362
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"oidc.js","sourceRoot":"","sources":["../../src/auth/oidc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oidc.js","sourceRoot":"","sources":["../../src/auth/oidc.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,8 @@ export interface SessionRecord {
10
10
  bound_profile?: string | null;
11
11
  oidc_mapping_fingerprint?: string | null;
12
12
  oidc_profile_identity?: string | null;
13
+ oidc_issuer?: string | null;
14
+ oidc_subject?: string | null;
13
15
  oidc_owner?: boolean;
14
16
  [key: string]: unknown;
15
17
  }
@@ -36,6 +38,8 @@ export interface AuthStoreOptions {
36
38
  oidcProbe?: () => Promise<unknown>;
37
39
  /** `webui_passkey_enabled` from the base-home config.yaml (last known), consulted when the env flag is unset. */
38
40
  passkeyConfigFlag?: () => unknown;
41
+ /** Writes one serialized table; tests inject a slow or failing writer. */
42
+ persistWrite?: (file: string, text: string) => Promise<void>;
39
43
  }
40
44
  export declare class AuthStore {
41
45
  readonly stateDir: string;
@@ -55,7 +59,15 @@ export declare class AuthStore {
55
59
  oidcEnabled: () => boolean;
56
60
  private readonly oidcProbe;
57
61
  passkeyConfigFlag: () => unknown;
62
+ persistWrite: (file: string, text: string) => Promise<void>;
63
+ private readonly sessionsWriter;
64
+ private readonly attemptsWriter;
58
65
  constructor(opts: AuthStoreOptions);
66
+ /**
67
+ * Awaits every pending session and login-attempt write; orderly shutdown and restart call it before exiting. Loops
68
+ * until both writers are idle, because a request still being served can start a write while this one waits.
69
+ */
70
+ flushPersistence(): Promise<void>;
59
71
  private warnPersistence;
60
72
  warnOnce(key: string, message: string): void;
61
73
  private loadKey;
@@ -98,6 +110,11 @@ export declare class AuthStore {
98
110
  static tokenFromCookieValue(cookieValue: string | null | undefined): string | null;
99
111
  getSessionInfo(cookieValue: string | null | undefined): SessionInfo | null;
100
112
  invalidateSession(cookieValue: string | null | undefined): void;
113
+ /**
114
+ * Logout: resolves once the revocation is on disk, so a crash cannot revive a cookie the user was told is gone.
115
+ * Concurrent calls join the same pending write; ordinary verification never waits on disk.
116
+ */
117
+ revokeSession(cookieValue: string | null | undefined): Promise<void>;
101
118
  /**
102
119
  * Sliding renewal: extend a live session when its remaining lifetime has
103
120
  * dropped below TTL minus min(TTL/10, 1h). Returns true when extended.
@@ -5,8 +5,9 @@
5
5
  * `.sessions.json`, `.login_attempts.json`.
6
6
  */
7
7
  import { chmodSync, existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
8
- import { resolve } from 'node:path';
9
- import { atomicWriteSecretJson } from '../fs/atomic.js';
8
+ import { mkdir } from 'node:fs/promises';
9
+ import { dirname, resolve } from 'node:path';
10
+ import { atomicWriteTextAsync } from '../fs/atomic.js';
10
11
  import { truthy } from '../config.js';
11
12
  import { COOKIE_NAME_RE } from './cookies.js';
12
13
  import { hashPassword, hmacHex, newKey, newSessionToken, safeEqual, splitSigned } from './crypto.js';
@@ -15,12 +16,52 @@ export const COOKIE_NAME = 'hermes_session';
15
16
  export const CSRF_HEADER_NAME = 'X-Hermes-CSRF-Token';
16
17
  const LOGIN_MAX_ATTEMPTS = 5;
17
18
  const LOGIN_WINDOW = 60;
18
- const OIDC_KEEP = new Set(['oidc_mapping_fingerprint', 'oidc_profile_identity', 'oidc_owner']);
19
+ const OIDC_KEEP = new Set(['oidc_mapping_fingerprint', 'oidc_profile_identity', 'oidc_issuer', 'oidc_subject', 'oidc_owner']);
19
20
  export function sessionExpiry(record) {
20
21
  const raw = record && typeof record === 'object' ? (record.expiry ?? record.expires_at) : record;
21
22
  const expiry = typeof raw === 'number' ? raw : typeof raw === 'string' ? Number(raw) : Number.NaN;
22
23
  return Number.isFinite(expiry) ? expiry : null;
23
24
  }
25
+ async function writeSecretFile(file, text) {
26
+ await mkdir(dirname(file), { recursive: true });
27
+ await atomicWriteTextAsync(file, text, { mode: 0o600 });
28
+ }
29
+ /**
30
+ * Write-behind for one file: at most one write in flight; requests made meanwhile coalesce into one follow-up that
31
+ * snapshots the table as it is then, so writes never reorder and the file converges on the newest state.
32
+ */
33
+ class WriteBehind {
34
+ write;
35
+ running = null;
36
+ dirty = false;
37
+ constructor(write) {
38
+ this.write = write;
39
+ }
40
+ request() {
41
+ if (this.running)
42
+ this.dirty = true;
43
+ else
44
+ this.running = this.drain();
45
+ }
46
+ async drain() {
47
+ try {
48
+ do {
49
+ this.dirty = false;
50
+ await this.write();
51
+ } while (this.dirty);
52
+ }
53
+ finally {
54
+ this.running = null;
55
+ }
56
+ }
57
+ get busy() {
58
+ return this.running !== null;
59
+ }
60
+ /** Resolves once the in-flight write and any coalesced follow-up have landed. */
61
+ flush() {
62
+ return this.running ?? Promise.resolve();
63
+ }
64
+ }
24
65
  /** Returned while settings.json cannot be read: auth counts as enabled and no password verifies against it. */
25
66
  const UNREADABLE_PASSWORD_HASH = 'unreadable';
26
67
  export class AuthStore {
@@ -41,6 +82,14 @@ export class AuthStore {
41
82
  oidcEnabled;
42
83
  oidcProbe;
43
84
  passkeyConfigFlag;
85
+ persistWrite;
86
+ // The in-memory tables are authoritative; disk is a write-behind copy so a slow fsync never blocks a request.
87
+ sessionsWriter = new WriteBehind(() => this.persistWrite(this.sessionsFile, JSON.stringify(this.sessions)).catch((error) => {
88
+ this.warnPersistence('Auth session persistence failed', this.sessionsFile, error, 'keeping the in-process session table available');
89
+ }));
90
+ attemptsWriter = new WriteBehind(() => this.persistWrite(this.attemptsFile, JSON.stringify(this.attempts)).catch(() => {
91
+ /* debug-level in Python */
92
+ }));
44
93
  constructor(opts) {
45
94
  this.stateDir = opts.stateDir;
46
95
  this.env = opts.env;
@@ -55,6 +104,15 @@ export class AuthStore {
55
104
  this.oidcEnabled = opts.oidcEnabled ?? (() => false);
56
105
  this.oidcProbe = opts.oidcProbe ?? (() => Promise.resolve());
57
106
  this.passkeyConfigFlag = opts.passkeyConfigFlag ?? (() => undefined);
107
+ this.persistWrite = opts.persistWrite ?? writeSecretFile;
108
+ }
109
+ /**
110
+ * Awaits every pending session and login-attempt write; orderly shutdown and restart call it before exiting. Loops
111
+ * until both writers are idle, because a request still being served can start a write while this one waits.
112
+ */
113
+ async flushPersistence() {
114
+ while (this.sessionsWriter.busy || this.attemptsWriter.busy)
115
+ await Promise.all([this.sessionsWriter.flush(), this.attemptsWriter.flush()]);
58
116
  }
59
117
  warnPersistence(prefix, artifact, error, consequence) {
60
118
  const err = error;
@@ -274,13 +332,7 @@ export class AuthStore {
274
332
  return sessions;
275
333
  }
276
334
  persistSessions() {
277
- try {
278
- mkdirSync(this.stateDir, { recursive: true });
279
- atomicWriteSecretJson(this.sessionsFile, this.sessions);
280
- }
281
- catch (error) {
282
- this.warnPersistence('Auth session persistence failed', this.sessionsFile, error, 'keeping the in-process session table available');
283
- }
335
+ this.sessionsWriter.request();
284
336
  }
285
337
  /** Test seam: the in-memory table, keyed by raw token. */
286
338
  get sessionTable() {
@@ -299,6 +351,8 @@ export class AuthStore {
299
351
  if (opts.oidcBinding) {
300
352
  record.oidc_mapping_fingerprint = opts.oidcBinding.mapping_fingerprint ?? null;
301
353
  record.oidc_profile_identity = opts.oidcBinding.profile_identity ?? null;
354
+ record.oidc_issuer = opts.oidcBinding.issuer ?? null;
355
+ record.oidc_subject = opts.oidcBinding.subject ?? null;
302
356
  if (opts.oidcBinding.owner)
303
357
  record.oidc_owner = true;
304
358
  }
@@ -376,6 +430,14 @@ export class AuthStore {
376
430
  Reflect.deleteProperty(this.sessions, token);
377
431
  this.persistSessions();
378
432
  }
433
+ /**
434
+ * Logout: resolves once the revocation is on disk, so a crash cannot revive a cookie the user was told is gone.
435
+ * Concurrent calls join the same pending write; ordinary verification never waits on disk.
436
+ */
437
+ async revokeSession(cookieValue) {
438
+ this.invalidateSession(cookieValue);
439
+ await this.sessionsWriter.flush();
440
+ }
379
441
  /**
380
442
  * Sliding renewal: extend a live session when its remaining lifetime has
381
443
  * dropped below TTL minus min(TTL/10, 1h). Returns true when extended.
@@ -451,22 +513,18 @@ export class AuthStore {
451
513
  }
452
514
  }
453
515
  saveLoginAttempts() {
454
- try {
455
- mkdirSync(this.stateDir, { recursive: true });
456
- atomicWriteSecretJson(this.attemptsFile, this.attempts);
457
- }
458
- catch {
459
- /* debug-level in Python */
460
- }
516
+ this.attemptsWriter.request();
461
517
  }
462
518
  checkLoginRate(ip) {
463
519
  const now = this.now();
464
- const attempts = (this.attempts[ip] ?? []).filter((t) => now - t < LOGIN_WINDOW);
520
+ const stored = this.attempts[ip] ?? [];
521
+ const attempts = stored.filter((t) => now - t < LOGIN_WINDOW);
465
522
  if (attempts.length)
466
523
  this.attempts[ip] = attempts;
467
524
  else
468
525
  Reflect.deleteProperty(this.attempts, ip);
469
- this.saveLoginAttempts();
526
+ if (attempts.length !== stored.length)
527
+ this.saveLoginAttempts();
470
528
  return attempts.length < LOGIN_MAX_ATTEMPTS;
471
529
  }
472
530
  recordLoginAttempt(ip) {
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/auth/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/auth/store.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,14 @@
1
+ import { type FileHandle } from 'node:fs/promises';
1
2
  /** Write every byte: `writeSync` may return a short count (disk pressure, signals), and a rename must never publish a prefix. */
2
3
  export declare function writeFully(fd: number, data: string | Uint8Array, write?: (fd: number, buffer: Buffer, offset: number, length: number) => number): void;
3
4
  export declare function atomicWriteText(path: string, text: string, opts?: {
4
5
  mode?: number;
5
6
  }): void;
6
- /** Atomic JSON write with a fixed 0600 mode (session and login-attempt stores). */
7
+ /** `writeFully` for a promise `FileHandle`, off the event loop. */
8
+ export declare function writeFullyAsync(handle: FileHandle, data: string | Uint8Array, write?: (handle: FileHandle, buffer: Buffer, offset: number, length: number) => Promise<number>): Promise<void>;
9
+ /** `atomicWriteText` on `node:fs/promises`, so a slow fsync never stalls the event loop. */
10
+ export declare function atomicWriteTextAsync(path: string, text: string, opts?: {
11
+ mode?: number;
12
+ }): Promise<void>;
13
+ /** Atomic JSON write with a fixed 0600 mode. */
7
14
  export declare function atomicWriteSecretJson(path: string, value: unknown): void;
package/dist/fs/atomic.js CHANGED
@@ -6,11 +6,14 @@
6
6
  * created with 0o666 so the kernel applies the process umask.
7
7
  */
8
8
  import { chmodSync, closeSync, fsyncSync, openSync, realpathSync, renameSync, statSync, unlinkSync, writeSync, lstatSync } from 'node:fs';
9
+ import { chmod, lstat, open, realpath, rename, stat, unlink } from 'node:fs/promises';
9
10
  import { basename, dirname, join } from 'node:path';
10
11
  let counter = 0;
12
+ const toBuffer = (data) => typeof data === 'string' ? Buffer.from(data, 'utf8') : Buffer.from(data.buffer, data.byteOffset, data.byteLength);
13
+ const tempPath = (writePath) => join(dirname(writePath), `.${basename(writePath)}.${process.pid}.${++counter}.tmp`);
11
14
  /** Write every byte: `writeSync` may return a short count (disk pressure, signals), and a rename must never publish a prefix. */
12
15
  export function writeFully(fd, data, write = writeSync) {
13
- const buffer = typeof data === 'string' ? Buffer.from(data, 'utf8') : Buffer.from(data.buffer, data.byteOffset, data.byteLength);
16
+ const buffer = toBuffer(data);
14
17
  let offset = 0;
15
18
  while (offset < buffer.length) {
16
19
  const written = write(fd, buffer, offset, buffer.length - offset);
@@ -37,7 +40,7 @@ export function atomicWriteText(path, text, opts = {}) {
37
40
  mode = undefined;
38
41
  }
39
42
  }
40
- const tmp = join(dirname(writePath), `.${basename(writePath)}.${process.pid}.${++counter}.tmp`);
43
+ const tmp = tempPath(writePath);
41
44
  // Existing or explicit mode: write privately then carry the mode over. New file: create with 0o666 so the kernel
42
45
  // applies the process umask exactly as an ordinary create would (0o600 under umask 077); no umask read needed.
43
46
  const fd = openSync(tmp, 'w', mode === undefined ? 0o666 : 0o600);
@@ -61,7 +64,53 @@ export function atomicWriteText(path, text, opts = {}) {
61
64
  throw error;
62
65
  }
63
66
  }
64
- /** Atomic JSON write with a fixed 0600 mode (session and login-attempt stores). */
67
+ /** `writeFully` for a promise `FileHandle`, off the event loop. */
68
+ export async function writeFullyAsync(handle, data, write = async (h, b, o, l) => (await h.write(b, o, l)).bytesWritten) {
69
+ const buffer = toBuffer(data);
70
+ let offset = 0;
71
+ while (offset < buffer.length) {
72
+ const written = await write(handle, buffer, offset, buffer.length - offset);
73
+ if (written <= 0)
74
+ throw new Error(`short write: ${String(offset)} of ${String(buffer.length)} bytes`);
75
+ offset += written;
76
+ }
77
+ }
78
+ /** `atomicWriteText` on `node:fs/promises`, so a slow fsync never stalls the event loop. */
79
+ export async function atomicWriteTextAsync(path, text, opts = {}) {
80
+ let writePath = path;
81
+ try {
82
+ if ((await lstat(path)).isSymbolicLink())
83
+ writePath = await realpath(path);
84
+ }
85
+ catch {
86
+ /* new file */
87
+ }
88
+ let mode = opts.mode;
89
+ if (mode === undefined) {
90
+ try {
91
+ mode = (await stat(writePath)).mode & 0o777;
92
+ }
93
+ catch {
94
+ mode = undefined;
95
+ }
96
+ }
97
+ const tmp = tempPath(writePath);
98
+ const handle = await open(tmp, 'w', mode === undefined ? 0o666 : 0o600);
99
+ try {
100
+ await writeFullyAsync(handle, text);
101
+ await handle.sync();
102
+ await handle.close();
103
+ if (mode !== undefined)
104
+ await chmod(tmp, mode);
105
+ await rename(tmp, writePath);
106
+ }
107
+ catch (error) {
108
+ await handle.close().catch(() => undefined);
109
+ await unlink(tmp).catch(() => undefined);
110
+ throw error;
111
+ }
112
+ }
113
+ /** Atomic JSON write with a fixed 0600 mode. */
65
114
  export function atomicWriteSecretJson(path, value) {
66
115
  atomicWriteText(path, JSON.stringify(value), { mode: 0o600 });
67
116
  }
@@ -1 +1 @@
1
- {"version":3,"file":"atomic.js","sourceRoot":"","sources":["../../src/fs/atomic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"atomic.js","sourceRoot":"","sources":["../../src/fs/atomic.ts"],"names":[],"mappings":"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"}