@objectstack/console 17.0.0-rc.6 → 17.0.0

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 (1046) hide show
  1. package/CHANGELOG.md +1099 -0
  2. package/dist/.objectui-sha +1 -1
  3. package/dist/assets/AdapterProvider-BpWMSLQH.js +3 -0
  4. package/dist/assets/{AiPendingActionsPage-DHam6u4d.js → AiPendingActionsPage-DAJUEqyC.js} +1 -1
  5. package/dist/assets/ApiConsolePage-CgXbOsFC.js +1 -0
  6. package/dist/assets/{AppDocsIndex-DMgpe3sR.js → AppDocsIndex-BgaIthca.js} +1 -1
  7. package/dist/assets/AppManagementPage-BvGPskyf.js +1 -0
  8. package/dist/assets/ApprovalsInboxPage-CxmrNrwP.js +1 -0
  9. package/dist/assets/{AuditLogPage-1tKc3thU.js → AuditLogPage-JahfQFnX.js} +1 -1
  10. package/dist/assets/{ComponentNavView-DBrVQtYX.js → ComponentNavView-DjiNAGys.js} +1 -1
  11. package/dist/assets/CreateViewDialog-CUvjCA1o.js +1 -0
  12. package/dist/assets/DashboardView-Cr-Q-16_.js +1 -0
  13. package/dist/assets/{DeveloperHubPage-DiecMLNF.js → DeveloperHubPage-DVKVm5k0.js} +1 -1
  14. package/dist/assets/{DocShell-CpxhuaS6.js → DocShell-C1VQpTIJ.js} +1 -1
  15. package/dist/assets/{ExpressionProvider-DD77oeF3.js → ExpressionProvider-qmd0nVCn.js} +1 -1
  16. package/dist/assets/FlowRunsPage-DL7MhL_U.js +1 -0
  17. package/dist/assets/{IntegrationsPage-DSw3u-B4.js → IntegrationsPage-Cq4mWRFh.js} +2 -2
  18. package/dist/assets/InterfaceListPage-CfhSyYAw.js +1 -0
  19. package/dist/assets/ManagedByBadge-DgsrLolr.js +1 -0
  20. package/dist/assets/MarketplaceAccessDenied-t8A0k9OX.js +1 -0
  21. package/dist/assets/MarketplaceInstalledPage-CRe2BiM2.js +1 -0
  22. package/dist/assets/MarketplacePackagePage-XSdk80Dd.js +4 -0
  23. package/dist/assets/MarketplacePage-CZjDbg5G.js +1 -0
  24. package/dist/assets/MetadataInspector-qQ85bFun.js +1 -0
  25. package/dist/assets/MetadataProvider-CnYsadFP.js +1 -0
  26. package/dist/assets/ObjectDataPage-D9kCSxvN.js +1 -0
  27. package/dist/assets/PageView-q1XSwpVo.js +1 -0
  28. package/dist/assets/ProfilePage-DeDhni58.js +1 -0
  29. package/dist/assets/{PublicFormsPage-C7OYcRBz.js → PublicFormsPage-BX6YXY8w.js} +1 -1
  30. package/dist/assets/RecordDetailView-DrVbrbaN.js +9 -0
  31. package/dist/assets/RecordFormPage-Bs9wX-M6.js +1 -0
  32. package/dist/assets/ReportDefaultInspector-BbbhDn34.js +3 -0
  33. package/dist/assets/ReportView-D_soBKL6.js +2 -0
  34. package/dist/assets/SearchResultsPage--Beqyte8.js +1 -0
  35. package/dist/assets/SettingsHub-BozLt7dt.js +1 -0
  36. package/dist/assets/SettingsView-CC3o9IGe.js +1 -0
  37. package/dist/assets/{SystemHubPage-CFpBjBvz.js → SystemHubPage-CBdrX4bx.js} +1 -1
  38. package/dist/assets/createDerive-C1PaRnFZ.js +1 -0
  39. package/dist/assets/data-adapter-yS4exRPT.js +24 -0
  40. package/dist/assets/framework-B8ndNKrd.js +38 -0
  41. package/dist/assets/getIcon-QmYxLBSb.js +1 -0
  42. package/dist/assets/{highlighted-body-OFNGDK62-I69SE9tf.js → highlighted-body-OFNGDK62-BPV_Giyg.js} +1 -1
  43. package/dist/assets/i18n-DLOdKEiB.js +9 -0
  44. package/dist/assets/index-DaeqUnH6.js +2 -0
  45. package/dist/assets/index-gaeYmjTV.css +2 -0
  46. package/dist/assets/infrastructure-ChmEYj6c.js +3 -0
  47. package/dist/assets/mermaid-GHXKKRXX-BrwYiPsC.js +1 -0
  48. package/dist/assets/metadata-admin-DqAvOmNf.js +25 -0
  49. package/dist/assets/plugin-calendar-CQVTjox_.js +1 -0
  50. package/dist/assets/plugin-charts-CBUIhVeW.js +7 -0
  51. package/dist/assets/plugin-chatbot-DsLGdfGx.js +120 -0
  52. package/dist/assets/plugin-dashboard-fdM1jm2j.js +6 -0
  53. package/dist/assets/plugin-form-Bv0Hi0E6.js +1 -0
  54. package/dist/assets/plugin-gantt-CRJpVrrP.js +63 -0
  55. package/dist/assets/plugin-grid-gHcTrjs3.js +8 -0
  56. package/dist/assets/plugin-kanban-CNm7DssD.js +1 -0
  57. package/dist/assets/plugin-map-TrYBEx8q.js +1 -0
  58. package/dist/assets/{plugin-markdown-C3ihtjLf.js → plugin-markdown-CbQeAjXv.js} +1 -1
  59. package/dist/assets/plugin-report-Bg1oh9SG.js +59 -0
  60. package/dist/assets/plugin-timeline-B30kCAGi.js +1 -0
  61. package/dist/assets/plugin-tree-Br5XanqO.js +1 -0
  62. package/dist/assets/plugin-view-CgDs-8T5.js +1 -0
  63. package/dist/assets/plugins-views-BxwTmeut.js +4 -0
  64. package/dist/assets/runtime-metadata-persistence-DDZN-tZg.js +1 -0
  65. package/dist/assets/{skeletons-Cs1pm-UR.js → skeletons-BWrJAbfN.js} +1 -1
  66. package/dist/assets/src-BBKXMp-o.js +19 -0
  67. package/dist/assets/src-CVuJHohL.js +1 -0
  68. package/dist/assets/{src-B67JaKZf.js → src-leh_hyM1.js} +1 -1
  69. package/dist/assets/ui-components-mPgY5chB.js +42 -0
  70. package/dist/assets/ui-layout-CRcyxP_X.js +1 -0
  71. package/dist/assets/{use-book-data-BpISrpLC.js → use-book-data-B2KPEJjv.js} +1 -1
  72. package/dist/assets/useSettingsLabel-Bl5L3RqQ.js +1 -0
  73. package/dist/assets/utils-L-_x2yPF.js +1 -0
  74. package/dist/assets/vendor-objectstack-DneBps14.js +155 -0
  75. package/dist/index.html +76 -4
  76. package/package.json +1 -1
  77. package/dist/assets/AdapterProvider-C11cY4c0.js +0 -2
  78. package/dist/assets/AdapterProvider-C11cY4c0.js.br +0 -0
  79. package/dist/assets/AdapterProvider-C11cY4c0.js.gz +0 -0
  80. package/dist/assets/AiPendingActionsPage-DHam6u4d.js.br +0 -0
  81. package/dist/assets/AiPendingActionsPage-DHam6u4d.js.gz +0 -0
  82. package/dist/assets/ApiConsolePage-BquGLVsn.js +0 -1
  83. package/dist/assets/ApiConsolePage-BquGLVsn.js.br +0 -0
  84. package/dist/assets/ApiConsolePage-BquGLVsn.js.gz +0 -0
  85. package/dist/assets/AppDocsIndex-DMgpe3sR.js.br +0 -0
  86. package/dist/assets/AppDocsIndex-DMgpe3sR.js.gz +0 -0
  87. package/dist/assets/AppManagementPage-Bw_HJtnj.js +0 -1
  88. package/dist/assets/AppManagementPage-Bw_HJtnj.js.br +0 -0
  89. package/dist/assets/AppManagementPage-Bw_HJtnj.js.gz +0 -0
  90. package/dist/assets/ApprovalsInboxPage-BieJRkeU.js +0 -1
  91. package/dist/assets/ApprovalsInboxPage-BieJRkeU.js.br +0 -0
  92. package/dist/assets/ApprovalsInboxPage-BieJRkeU.js.gz +0 -0
  93. package/dist/assets/AuditLogPage-1tKc3thU.js.br +0 -0
  94. package/dist/assets/AuditLogPage-1tKc3thU.js.gz +0 -0
  95. package/dist/assets/CreateViewDialog-BS4y-EfR.js +0 -1
  96. package/dist/assets/CreateViewDialog-BS4y-EfR.js.br +0 -0
  97. package/dist/assets/CreateViewDialog-BS4y-EfR.js.gz +0 -0
  98. package/dist/assets/DashboardView-BlFMYKJK.js +0 -1
  99. package/dist/assets/DashboardView-BlFMYKJK.js.br +0 -0
  100. package/dist/assets/DashboardView-BlFMYKJK.js.gz +0 -0
  101. package/dist/assets/DeveloperHubPage-DiecMLNF.js.br +0 -0
  102. package/dist/assets/DeveloperHubPage-DiecMLNF.js.gz +0 -0
  103. package/dist/assets/FlowRunsPage-D8wMDWjk.js +0 -1
  104. package/dist/assets/FlowRunsPage-D8wMDWjk.js.br +0 -0
  105. package/dist/assets/FlowRunsPage-D8wMDWjk.js.gz +0 -0
  106. package/dist/assets/IntegrationsPage-DSw3u-B4.js.br +0 -0
  107. package/dist/assets/IntegrationsPage-DSw3u-B4.js.gz +0 -0
  108. package/dist/assets/InterfaceListPage-CbwWqklU.js +0 -1
  109. package/dist/assets/InterfaceListPage-CbwWqklU.js.br +0 -0
  110. package/dist/assets/InterfaceListPage-CbwWqklU.js.gz +0 -0
  111. package/dist/assets/ManagedByBadge-CBwMKWiF.js +0 -1
  112. package/dist/assets/ManagedByBadge-CBwMKWiF.js.br +0 -0
  113. package/dist/assets/ManagedByBadge-CBwMKWiF.js.gz +0 -0
  114. package/dist/assets/MarketplaceAccessDenied-DEBuHOU-.js +0 -1
  115. package/dist/assets/MarketplaceAccessDenied-DEBuHOU-.js.br +0 -0
  116. package/dist/assets/MarketplaceAccessDenied-DEBuHOU-.js.gz +0 -0
  117. package/dist/assets/MarketplaceInstalledPage-D1VkI0Vo.js +0 -1
  118. package/dist/assets/MarketplaceInstalledPage-D1VkI0Vo.js.br +0 -0
  119. package/dist/assets/MarketplaceInstalledPage-D1VkI0Vo.js.gz +0 -0
  120. package/dist/assets/MarketplacePackagePage-cJJmubUp.js +0 -4
  121. package/dist/assets/MarketplacePackagePage-cJJmubUp.js.br +0 -0
  122. package/dist/assets/MarketplacePackagePage-cJJmubUp.js.gz +0 -0
  123. package/dist/assets/MarketplacePage-CyMpmsqJ.js +0 -1
  124. package/dist/assets/MarketplacePage-CyMpmsqJ.js.br +0 -0
  125. package/dist/assets/MarketplacePage-CyMpmsqJ.js.gz +0 -0
  126. package/dist/assets/MetadataInspector-D3Q9UYxF.js +0 -1
  127. package/dist/assets/MetadataInspector-D3Q9UYxF.js.br +0 -0
  128. package/dist/assets/MetadataInspector-D3Q9UYxF.js.gz +0 -0
  129. package/dist/assets/MetadataProvider-PtYALdF8.js +0 -1
  130. package/dist/assets/MetadataProvider-PtYALdF8.js.br +0 -0
  131. package/dist/assets/MetadataProvider-PtYALdF8.js.gz +0 -0
  132. package/dist/assets/ObjectDataPage-D_9SyqGu.js +0 -1
  133. package/dist/assets/ObjectDataPage-D_9SyqGu.js.br +0 -0
  134. package/dist/assets/ObjectDataPage-D_9SyqGu.js.gz +0 -0
  135. package/dist/assets/PageView-DE9Jb4nC.js +0 -1
  136. package/dist/assets/PageView-DE9Jb4nC.js.br +0 -0
  137. package/dist/assets/PageView-DE9Jb4nC.js.gz +0 -0
  138. package/dist/assets/ProfilePage-D6ZIjlTU.js +0 -1
  139. package/dist/assets/ProfilePage-D6ZIjlTU.js.br +0 -0
  140. package/dist/assets/ProfilePage-D6ZIjlTU.js.gz +0 -0
  141. package/dist/assets/PublicFormsPage-C7OYcRBz.js.br +0 -0
  142. package/dist/assets/PublicFormsPage-C7OYcRBz.js.gz +0 -0
  143. package/dist/assets/RecordDetailView-RvdjtkCZ.js +0 -9
  144. package/dist/assets/RecordDetailView-RvdjtkCZ.js.br +0 -0
  145. package/dist/assets/RecordDetailView-RvdjtkCZ.js.gz +0 -0
  146. package/dist/assets/RecordFormPage-C7Fn2jkc.js +0 -1
  147. package/dist/assets/RecordFormPage-C7Fn2jkc.js.br +0 -0
  148. package/dist/assets/RecordFormPage-C7Fn2jkc.js.gz +0 -0
  149. package/dist/assets/ReportDefaultInspector-By-3nQXp.js +0 -3
  150. package/dist/assets/ReportDefaultInspector-By-3nQXp.js.br +0 -0
  151. package/dist/assets/ReportDefaultInspector-By-3nQXp.js.gz +0 -0
  152. package/dist/assets/ReportView-DynZqTgH.js +0 -2
  153. package/dist/assets/ReportView-DynZqTgH.js.br +0 -0
  154. package/dist/assets/ReportView-DynZqTgH.js.gz +0 -0
  155. package/dist/assets/SearchResultsPage-seBReYj-.js +0 -1
  156. package/dist/assets/SearchResultsPage-seBReYj-.js.br +0 -0
  157. package/dist/assets/SearchResultsPage-seBReYj-.js.gz +0 -0
  158. package/dist/assets/SettingsHub-koseplY7.js +0 -1
  159. package/dist/assets/SettingsHub-koseplY7.js.br +0 -0
  160. package/dist/assets/SettingsHub-koseplY7.js.gz +0 -0
  161. package/dist/assets/SettingsView-W2hI4Z63.js +0 -1
  162. package/dist/assets/SettingsView-W2hI4Z63.js.br +0 -0
  163. package/dist/assets/SettingsView-W2hI4Z63.js.gz +0 -0
  164. package/dist/assets/SystemHubPage-CFpBjBvz.js.br +0 -0
  165. package/dist/assets/SystemHubPage-CFpBjBvz.js.gz +0 -0
  166. package/dist/assets/abap-CLvhMVsD.js.br +0 -0
  167. package/dist/assets/abap-CLvhMVsD.js.gz +0 -0
  168. package/dist/assets/abnfDiagram-N423BO3Z-Ck9FUrgJ.js.br +0 -0
  169. package/dist/assets/abnfDiagram-N423BO3Z-Ck9FUrgJ.js.gz +0 -0
  170. package/dist/assets/actionscript-3-Cs6JJXT5.js.br +0 -0
  171. package/dist/assets/actionscript-3-Cs6JJXT5.js.gz +0 -0
  172. package/dist/assets/ada-C5qYipkI.js.br +0 -0
  173. package/dist/assets/ada-C5qYipkI.js.gz +0 -0
  174. package/dist/assets/ahk-CA9gdOdF.js.br +0 -0
  175. package/dist/assets/ahk-CA9gdOdF.js.gz +0 -0
  176. package/dist/assets/ahk2-_6rzW9BS.js.br +0 -0
  177. package/dist/assets/ahk2-_6rzW9BS.js.gz +0 -0
  178. package/dist/assets/andromeeda-vGVdxbeo.js.br +0 -0
  179. package/dist/assets/andromeeda-vGVdxbeo.js.gz +0 -0
  180. package/dist/assets/angular-html-EvDzfMaC.js.br +0 -0
  181. package/dist/assets/angular-html-EvDzfMaC.js.gz +0 -0
  182. package/dist/assets/angular-ts-D_Fppbgk.js.br +0 -0
  183. package/dist/assets/angular-ts-D_Fppbgk.js.gz +0 -0
  184. package/dist/assets/apache-U0d_L8uA.js.br +0 -0
  185. package/dist/assets/apache-U0d_L8uA.js.gz +0 -0
  186. package/dist/assets/apex-KFGFyKwG.js.br +0 -0
  187. package/dist/assets/apex-KFGFyKwG.js.gz +0 -0
  188. package/dist/assets/apl-CMMvGKpa.js.br +0 -0
  189. package/dist/assets/apl-CMMvGKpa.js.gz +0 -0
  190. package/dist/assets/applescript-CCn79oCD.js.br +0 -0
  191. package/dist/assets/applescript-CCn79oCD.js.gz +0 -0
  192. package/dist/assets/ara-4CJ0cIlV.js.br +0 -0
  193. package/dist/assets/ara-4CJ0cIlV.js.gz +0 -0
  194. package/dist/assets/architectureDiagram-T3A2C74G-DJbnVK1q.js.br +0 -0
  195. package/dist/assets/architectureDiagram-T3A2C74G-DJbnVK1q.js.gz +0 -0
  196. package/dist/assets/asciidoc-SCjQUq34.js.br +0 -0
  197. package/dist/assets/asciidoc-SCjQUq34.js.gz +0 -0
  198. package/dist/assets/asm-Cmm7eHzH.js.br +0 -0
  199. package/dist/assets/asm-Cmm7eHzH.js.gz +0 -0
  200. package/dist/assets/astro-CYXUZjx4.js.br +0 -0
  201. package/dist/assets/astro-CYXUZjx4.js.gz +0 -0
  202. package/dist/assets/aurora-x-CDeNXAV0.js.br +0 -0
  203. package/dist/assets/aurora-x-CDeNXAV0.js.gz +0 -0
  204. package/dist/assets/awk-BWXHIvNe.js.br +0 -0
  205. package/dist/assets/awk-BWXHIvNe.js.gz +0 -0
  206. package/dist/assets/ayu-dark-DluEY0Gj.js.br +0 -0
  207. package/dist/assets/ayu-dark-DluEY0Gj.js.gz +0 -0
  208. package/dist/assets/ayu-light-C3h-C4tm.js.br +0 -0
  209. package/dist/assets/ayu-light-C3h-C4tm.js.gz +0 -0
  210. package/dist/assets/ayu-mirage-Bqwy1Gya.js.br +0 -0
  211. package/dist/assets/ayu-mirage-Bqwy1Gya.js.gz +0 -0
  212. package/dist/assets/ballerina-B7ZEbQpA.js.br +0 -0
  213. package/dist/assets/ballerina-B7ZEbQpA.js.gz +0 -0
  214. package/dist/assets/bat-qdxAdBWQ.js.br +0 -0
  215. package/dist/assets/bat-qdxAdBWQ.js.gz +0 -0
  216. package/dist/assets/beancount-D-usSTwE.js.br +0 -0
  217. package/dist/assets/beancount-D-usSTwE.js.gz +0 -0
  218. package/dist/assets/berry-DKpUyyne.js.br +0 -0
  219. package/dist/assets/berry-DKpUyyne.js.gz +0 -0
  220. package/dist/assets/bibtex-Ci_nEsc7.js.br +0 -0
  221. package/dist/assets/bibtex-Ci_nEsc7.js.gz +0 -0
  222. package/dist/assets/bicep-CUHmPFLl.js.br +0 -0
  223. package/dist/assets/bicep-CUHmPFLl.js.gz +0 -0
  224. package/dist/assets/bird2-CYIUgYqB.js.br +0 -0
  225. package/dist/assets/bird2-CYIUgYqB.js.gz +0 -0
  226. package/dist/assets/blade-mfXoORbc.js.br +0 -0
  227. package/dist/assets/blade-mfXoORbc.js.gz +0 -0
  228. package/dist/assets/blockDiagram-VBNYF7ZC-Qtci47Jq.js.br +0 -0
  229. package/dist/assets/blockDiagram-VBNYF7ZC-Qtci47Jq.js.gz +0 -0
  230. package/dist/assets/bsl-_VjlB9mv.js.br +0 -0
  231. package/dist/assets/bsl-_VjlB9mv.js.gz +0 -0
  232. package/dist/assets/c-mSN2GbH4.js.br +0 -0
  233. package/dist/assets/c-mSN2GbH4.js.gz +0 -0
  234. package/dist/assets/c3-D0apG41V.js.br +0 -0
  235. package/dist/assets/c3-D0apG41V.js.gz +0 -0
  236. package/dist/assets/c4Diagram-5PPSVZJV-DC9Uk9FW.js.br +0 -0
  237. package/dist/assets/c4Diagram-5PPSVZJV-DC9Uk9FW.js.gz +0 -0
  238. package/dist/assets/cadence-CQ2zXKGN.js.br +0 -0
  239. package/dist/assets/cadence-CQ2zXKGN.js.gz +0 -0
  240. package/dist/assets/cairo-DLTphjLi.js.br +0 -0
  241. package/dist/assets/cairo-DLTphjLi.js.gz +0 -0
  242. package/dist/assets/catppuccin-frappe-C9Q5zVZY.js.br +0 -0
  243. package/dist/assets/catppuccin-frappe-C9Q5zVZY.js.gz +0 -0
  244. package/dist/assets/catppuccin-latte-CtsyrtPq.js.br +0 -0
  245. package/dist/assets/catppuccin-latte-CtsyrtPq.js.gz +0 -0
  246. package/dist/assets/catppuccin-macchiato-R8nAf1vR.js.br +0 -0
  247. package/dist/assets/catppuccin-macchiato-R8nAf1vR.js.gz +0 -0
  248. package/dist/assets/catppuccin-mocha-DjuaAJKi.js.br +0 -0
  249. package/dist/assets/catppuccin-mocha-DjuaAJKi.js.gz +0 -0
  250. package/dist/assets/chapel-BG8u2Rih.js.br +0 -0
  251. package/dist/assets/chapel-BG8u2Rih.js.gz +0 -0
  252. package/dist/assets/chunk-2GRJ4B5K-C6KsYuNR.js.br +0 -0
  253. package/dist/assets/chunk-2GRJ4B5K-C6KsYuNR.js.gz +0 -0
  254. package/dist/assets/chunk-4I5QYGJK-CPsvNPUx.js.br +0 -0
  255. package/dist/assets/chunk-4I5QYGJK-CPsvNPUx.js.gz +0 -0
  256. package/dist/assets/chunk-5JV3BV7I-BrKM6vC-.js.br +0 -0
  257. package/dist/assets/chunk-5JV3BV7I-BrKM6vC-.js.gz +0 -0
  258. package/dist/assets/chunk-5RXB4S5H-CU_v2umt.js.br +0 -0
  259. package/dist/assets/chunk-5RXB4S5H-CU_v2umt.js.gz +0 -0
  260. package/dist/assets/chunk-5TONJI2A-Bdh0MHqz.js.br +0 -0
  261. package/dist/assets/chunk-5TONJI2A-Bdh0MHqz.js.gz +0 -0
  262. package/dist/assets/chunk-6Q2QTUOP-C_q0JPmG.js.br +0 -0
  263. package/dist/assets/chunk-6Q2QTUOP-C_q0JPmG.js.gz +0 -0
  264. package/dist/assets/chunk-7BUUIJ7U-Bb538aSH.js.br +0 -0
  265. package/dist/assets/chunk-7BUUIJ7U-Bb538aSH.js.gz +0 -0
  266. package/dist/assets/chunk-7Z6QIM7H-jM3JGv9o.js.br +0 -0
  267. package/dist/assets/chunk-7Z6QIM7H-jM3JGv9o.js.gz +0 -0
  268. package/dist/assets/chunk-GF5L2VYU-Dp_0e4Vj.js.br +0 -0
  269. package/dist/assets/chunk-GF5L2VYU-Dp_0e4Vj.js.gz +0 -0
  270. package/dist/assets/chunk-I66GZJ75-CLtbCU_E.js.br +0 -0
  271. package/dist/assets/chunk-I66GZJ75-CLtbCU_E.js.gz +0 -0
  272. package/dist/assets/chunk-J7OUQ5F2-C4uAdkrD.js.br +0 -0
  273. package/dist/assets/chunk-J7OUQ5F2-C4uAdkrD.js.gz +0 -0
  274. package/dist/assets/chunk-JG7HCLWE-lCTbN-f1.js.br +0 -0
  275. package/dist/assets/chunk-JG7HCLWE-lCTbN-f1.js.gz +0 -0
  276. package/dist/assets/chunk-JQJVKLGR-BlTMFaN6.js.br +0 -0
  277. package/dist/assets/chunk-JQJVKLGR-BlTMFaN6.js.gz +0 -0
  278. package/dist/assets/chunk-KEIR6QF5-ydf36Hye.js.br +0 -0
  279. package/dist/assets/chunk-KEIR6QF5-ydf36Hye.js.gz +0 -0
  280. package/dist/assets/chunk-NSK5VX7P-B7tNpEbR.js.br +0 -0
  281. package/dist/assets/chunk-NSK5VX7P-B7tNpEbR.js.gz +0 -0
  282. package/dist/assets/chunk-QR6OTTB3-B3mQWEI2.js.br +0 -0
  283. package/dist/assets/chunk-QR6OTTB3-B3mQWEI2.js.gz +0 -0
  284. package/dist/assets/chunk-R7FJI6CG-DsJHM8am.js.br +0 -0
  285. package/dist/assets/chunk-R7FJI6CG-DsJHM8am.js.gz +0 -0
  286. package/dist/assets/chunk-RYQCIY6F-B3DAS_Q-.js.br +0 -0
  287. package/dist/assets/chunk-RYQCIY6F-B3DAS_Q-.js.gz +0 -0
  288. package/dist/assets/chunk-U6XO7XAA-D-dXvZaW.js.br +0 -0
  289. package/dist/assets/chunk-U6XO7XAA-D-dXvZaW.js.gz +0 -0
  290. package/dist/assets/chunk-W5SLKNZC-DWOVkEVc.js.br +0 -0
  291. package/dist/assets/chunk-W5SLKNZC-DWOVkEVc.js.gz +0 -0
  292. package/dist/assets/chunk-WRU74C26-DR5g8owc.js.br +0 -0
  293. package/dist/assets/chunk-WRU74C26-DR5g8owc.js.gz +0 -0
  294. package/dist/assets/chunk-ZIRB5QZD-O39ZBUk3.js.br +0 -0
  295. package/dist/assets/chunk-ZIRB5QZD-O39ZBUk3.js.gz +0 -0
  296. package/dist/assets/clarity-CtfBBspg.js.br +0 -0
  297. package/dist/assets/clarity-CtfBBspg.js.gz +0 -0
  298. package/dist/assets/clojure-DqKBuwfJ.js.br +0 -0
  299. package/dist/assets/clojure-DqKBuwfJ.js.gz +0 -0
  300. package/dist/assets/cmake-Bj61d0ZC.js.br +0 -0
  301. package/dist/assets/cmake-Bj61d0ZC.js.gz +0 -0
  302. package/dist/assets/cobol-Bhp1bana.js.br +0 -0
  303. package/dist/assets/cobol-Bhp1bana.js.gz +0 -0
  304. package/dist/assets/codeql-oeQT6MSM.js.br +0 -0
  305. package/dist/assets/codeql-oeQT6MSM.js.gz +0 -0
  306. package/dist/assets/coffee-C17FjuDx.js.br +0 -0
  307. package/dist/assets/coffee-C17FjuDx.js.gz +0 -0
  308. package/dist/assets/common-lisp-Cv5bFMCO.js.br +0 -0
  309. package/dist/assets/common-lisp-Cv5bFMCO.js.gz +0 -0
  310. package/dist/assets/coq-DuBRPxYg.js.br +0 -0
  311. package/dist/assets/coq-DuBRPxYg.js.gz +0 -0
  312. package/dist/assets/cose-bilkent-JH36ORCC-CcXrYRrs.js.br +0 -0
  313. package/dist/assets/cose-bilkent-JH36ORCC-CcXrYRrs.js.gz +0 -0
  314. package/dist/assets/cpp-svqsdV-V.js.br +0 -0
  315. package/dist/assets/cpp-svqsdV-V.js.gz +0 -0
  316. package/dist/assets/createDerive-Byjn6nRi.js +0 -1
  317. package/dist/assets/createDerive-Byjn6nRi.js.br +0 -0
  318. package/dist/assets/createDerive-Byjn6nRi.js.gz +0 -0
  319. package/dist/assets/crystal-D9vhA8G_.js.br +0 -0
  320. package/dist/assets/crystal-D9vhA8G_.js.gz +0 -0
  321. package/dist/assets/csharp-oqKa8noW.js.br +0 -0
  322. package/dist/assets/csharp-oqKa8noW.js.gz +0 -0
  323. package/dist/assets/css-DkbmQzJL.js.br +0 -0
  324. package/dist/assets/css-DkbmQzJL.js.gz +0 -0
  325. package/dist/assets/csv-Dx-8-gkx.js.br +0 -0
  326. package/dist/assets/csv-Dx-8-gkx.js.gz +0 -0
  327. package/dist/assets/cue-CE9AQfxI.js.br +0 -0
  328. package/dist/assets/cue-CE9AQfxI.js.gz +0 -0
  329. package/dist/assets/cynefinDiagram-MW4NZA55-DuPIOMPB.js.br +0 -0
  330. package/dist/assets/cynefinDiagram-MW4NZA55-DuPIOMPB.js.gz +0 -0
  331. package/dist/assets/cypher-ClKdZ_lG.js.br +0 -0
  332. package/dist/assets/cypher-ClKdZ_lG.js.gz +0 -0
  333. package/dist/assets/cytoscape.esm-B-NFISlW.js.br +0 -0
  334. package/dist/assets/cytoscape.esm-B-NFISlW.js.gz +0 -0
  335. package/dist/assets/d-qD-0Kul2.js.br +0 -0
  336. package/dist/assets/d-qD-0Kul2.js.gz +0 -0
  337. package/dist/assets/dagre-Buvkdvvj.js.br +0 -0
  338. package/dist/assets/dagre-Buvkdvvj.js.gz +0 -0
  339. package/dist/assets/dagre-VZM6K2ZE-CHbs07zF.js.br +0 -0
  340. package/dist/assets/dagre-VZM6K2ZE-CHbs07zF.js.gz +0 -0
  341. package/dist/assets/dark-plus-Cs2F2srj.js.br +0 -0
  342. package/dist/assets/dark-plus-Cs2F2srj.js.gz +0 -0
  343. package/dist/assets/dart-CnvKMtbv.js.br +0 -0
  344. package/dist/assets/dart-CnvKMtbv.js.gz +0 -0
  345. package/dist/assets/data-adapter-BJj1HN8X.js +0 -24
  346. package/dist/assets/data-adapter-BJj1HN8X.js.br +0 -0
  347. package/dist/assets/data-adapter-BJj1HN8X.js.gz +0 -0
  348. package/dist/assets/dax-BkyTk9wS.js.br +0 -0
  349. package/dist/assets/dax-BkyTk9wS.js.gz +0 -0
  350. package/dist/assets/desktop-Dlh5hvp9.js.br +0 -0
  351. package/dist/assets/desktop-Dlh5hvp9.js.gz +0 -0
  352. package/dist/assets/diagram-7IWD3JNH-sPS-Y-CP.js.br +0 -0
  353. package/dist/assets/diagram-7IWD3JNH-sPS-Y-CP.js.gz +0 -0
  354. package/dist/assets/diagram-B4RE2ZJO-C4Essr7L.js.br +0 -0
  355. package/dist/assets/diagram-B4RE2ZJO-C4Essr7L.js.gz +0 -0
  356. package/dist/assets/diagram-LBJQPF4R-CluEJ_Yg.js.br +0 -0
  357. package/dist/assets/diagram-LBJQPF4R-CluEJ_Yg.js.gz +0 -0
  358. package/dist/assets/diagram-Q27KOJAE-D4lem9jQ.js.br +0 -0
  359. package/dist/assets/diagram-Q27KOJAE-D4lem9jQ.js.gz +0 -0
  360. package/dist/assets/diagram-UB23O5K3-Bfj6mHJD.js.br +0 -0
  361. package/dist/assets/diagram-UB23O5K3-Bfj6mHJD.js.gz +0 -0
  362. package/dist/assets/diff-woXpYk--.js.br +0 -0
  363. package/dist/assets/diff-woXpYk--.js.gz +0 -0
  364. package/dist/assets/dist-B7OHp69Q.js.br +0 -0
  365. package/dist/assets/dist-B7OHp69Q.js.gz +0 -0
  366. package/dist/assets/dist-D3VfqzjO.js.br +0 -0
  367. package/dist/assets/dist-D3VfqzjO.js.gz +0 -0
  368. package/dist/assets/docker-IyjqRm3v.js.br +0 -0
  369. package/dist/assets/docker-IyjqRm3v.js.gz +0 -0
  370. package/dist/assets/dotenv-_5a1GRtc.js.br +0 -0
  371. package/dist/assets/dotenv-_5a1GRtc.js.gz +0 -0
  372. package/dist/assets/dracula-BHWKrbxM.js.br +0 -0
  373. package/dist/assets/dracula-BHWKrbxM.js.gz +0 -0
  374. package/dist/assets/dracula-soft-5eyTD99u.js.br +0 -0
  375. package/dist/assets/dracula-soft-5eyTD99u.js.gz +0 -0
  376. package/dist/assets/dream-maker-DW3nJb8Q.js.br +0 -0
  377. package/dist/assets/dream-maker-DW3nJb8Q.js.gz +0 -0
  378. package/dist/assets/drillUrlFilters-DHAQHZbx.js.br +0 -0
  379. package/dist/assets/drillUrlFilters-DHAQHZbx.js.gz +0 -0
  380. package/dist/assets/ebnfDiagram-BXEA7PRR-BKXyHLd_.js.br +0 -0
  381. package/dist/assets/ebnfDiagram-BXEA7PRR-BKXyHLd_.js.gz +0 -0
  382. package/dist/assets/edge-DVm6-hiM.js.br +0 -0
  383. package/dist/assets/edge-DVm6-hiM.js.gz +0 -0
  384. package/dist/assets/elixir-BQoS1tEv.js.br +0 -0
  385. package/dist/assets/elixir-BQoS1tEv.js.gz +0 -0
  386. package/dist/assets/elm-D_TZK0Oc.js.br +0 -0
  387. package/dist/assets/elm-D_TZK0Oc.js.gz +0 -0
  388. package/dist/assets/emacs-lisp-c_oH4hRZ.js.br +0 -0
  389. package/dist/assets/emacs-lisp-c_oH4hRZ.js.gz +0 -0
  390. package/dist/assets/erDiagram-JOGREHBK-B6_uGYAF.js.br +0 -0
  391. package/dist/assets/erDiagram-JOGREHBK-B6_uGYAF.js.gz +0 -0
  392. package/dist/assets/erb-DFs7gCnY.js.br +0 -0
  393. package/dist/assets/erb-DFs7gCnY.js.gz +0 -0
  394. package/dist/assets/erlang-Cphh6RMH.js.br +0 -0
  395. package/dist/assets/erlang-Cphh6RMH.js.gz +0 -0
  396. package/dist/assets/everforest-dark-sB-x3p7T.js.br +0 -0
  397. package/dist/assets/everforest-dark-sB-x3p7T.js.gz +0 -0
  398. package/dist/assets/everforest-light-Df2xbC6M.js.br +0 -0
  399. package/dist/assets/everforest-light-Df2xbC6M.js.gz +0 -0
  400. package/dist/assets/exceljs.min-BYqCKPdJ.js.br +0 -0
  401. package/dist/assets/exceljs.min-BYqCKPdJ.js.gz +0 -0
  402. package/dist/assets/fennel-DQxkIbk2.js.br +0 -0
  403. package/dist/assets/fennel-DQxkIbk2.js.gz +0 -0
  404. package/dist/assets/fish-BJitypiv.js.br +0 -0
  405. package/dist/assets/fish-BJitypiv.js.gz +0 -0
  406. package/dist/assets/fluent-C03EYrpw.js.br +0 -0
  407. package/dist/assets/fluent-C03EYrpw.js.gz +0 -0
  408. package/dist/assets/fortran-fixed-form-DEKoE2YW.js.br +0 -0
  409. package/dist/assets/fortran-fixed-form-DEKoE2YW.js.gz +0 -0
  410. package/dist/assets/fortran-free-form-CYNrtFtB.js.br +0 -0
  411. package/dist/assets/fortran-free-form-CYNrtFtB.js.gz +0 -0
  412. package/dist/assets/framework-DDZiA4ii.js +0 -8
  413. package/dist/assets/framework-DDZiA4ii.js.br +0 -0
  414. package/dist/assets/framework-DDZiA4ii.js.gz +0 -0
  415. package/dist/assets/fsharp-D13ZGOAj.js.br +0 -0
  416. package/dist/assets/fsharp-D13ZGOAj.js.gz +0 -0
  417. package/dist/assets/ganttDiagram-PKOTCBZU-Cip5kKH4.js.br +0 -0
  418. package/dist/assets/ganttDiagram-PKOTCBZU-Cip5kKH4.js.gz +0 -0
  419. package/dist/assets/gdresource-xMC7jr7x.js.br +0 -0
  420. package/dist/assets/gdresource-xMC7jr7x.js.gz +0 -0
  421. package/dist/assets/gdscript-DYvRD3hg.js.br +0 -0
  422. package/dist/assets/gdscript-DYvRD3hg.js.gz +0 -0
  423. package/dist/assets/gdshader-CBce3t8t.js.br +0 -0
  424. package/dist/assets/gdshader-CBce3t8t.js.gz +0 -0
  425. package/dist/assets/genie-CV2tkWYe.js.br +0 -0
  426. package/dist/assets/genie-CV2tkWYe.js.gz +0 -0
  427. package/dist/assets/getIcon-DGZbbWGj.js +0 -1
  428. package/dist/assets/gherkin-DExj1W_8.js.br +0 -0
  429. package/dist/assets/gherkin-DExj1W_8.js.gz +0 -0
  430. package/dist/assets/git-commit-BSykSTBG.js.br +0 -0
  431. package/dist/assets/git-commit-BSykSTBG.js.gz +0 -0
  432. package/dist/assets/gitGraphDiagram-DS77QQ5N-CF75OjHf.js.br +0 -0
  433. package/dist/assets/gitGraphDiagram-DS77QQ5N-CF75OjHf.js.gz +0 -0
  434. package/dist/assets/github-dark-C-LZuMrd.js.br +0 -0
  435. package/dist/assets/github-dark-C-LZuMrd.js.gz +0 -0
  436. package/dist/assets/github-dark-default-DXG-b-1a.js.br +0 -0
  437. package/dist/assets/github-dark-default-DXG-b-1a.js.gz +0 -0
  438. package/dist/assets/github-dark-dimmed-Bx1FflLF.js.br +0 -0
  439. package/dist/assets/github-dark-dimmed-Bx1FflLF.js.gz +0 -0
  440. package/dist/assets/github-dark-high-contrast-B_tTalzw.js.br +0 -0
  441. package/dist/assets/github-dark-high-contrast-B_tTalzw.js.gz +0 -0
  442. package/dist/assets/github-light-EUqPIrTm.js.br +0 -0
  443. package/dist/assets/github-light-EUqPIrTm.js.gz +0 -0
  444. package/dist/assets/github-light-default-BXViO-2h.js.br +0 -0
  445. package/dist/assets/github-light-default-BXViO-2h.js.gz +0 -0
  446. package/dist/assets/github-light-high-contrast-B68TUdTA.js.br +0 -0
  447. package/dist/assets/github-light-high-contrast-B68TUdTA.js.gz +0 -0
  448. package/dist/assets/gleam-CSRkHgEL.js.br +0 -0
  449. package/dist/assets/gleam-CSRkHgEL.js.gz +0 -0
  450. package/dist/assets/glimmer-js-Cpr0NJvA.js.br +0 -0
  451. package/dist/assets/glimmer-js-Cpr0NJvA.js.gz +0 -0
  452. package/dist/assets/glimmer-ts-CYbTSzY6.js.br +0 -0
  453. package/dist/assets/glimmer-ts-CYbTSzY6.js.gz +0 -0
  454. package/dist/assets/glsl-C3yOxx6A.js.br +0 -0
  455. package/dist/assets/glsl-C3yOxx6A.js.gz +0 -0
  456. package/dist/assets/gn-ilITqXS6.js.br +0 -0
  457. package/dist/assets/gn-ilITqXS6.js.gz +0 -0
  458. package/dist/assets/gnuplot-7GGW24-e.js.br +0 -0
  459. package/dist/assets/gnuplot-7GGW24-e.js.gz +0 -0
  460. package/dist/assets/go-rLFTqkRN.js.br +0 -0
  461. package/dist/assets/go-rLFTqkRN.js.gz +0 -0
  462. package/dist/assets/graphlib-DS17s2tU.js.br +0 -0
  463. package/dist/assets/graphlib-DS17s2tU.js.gz +0 -0
  464. package/dist/assets/graphql-DlruBr94.js.br +0 -0
  465. package/dist/assets/graphql-DlruBr94.js.gz +0 -0
  466. package/dist/assets/groovy-CacY0gHj.js.br +0 -0
  467. package/dist/assets/groovy-CacY0gHj.js.gz +0 -0
  468. package/dist/assets/gruvbox-dark-hard-C820rvS2.js.br +0 -0
  469. package/dist/assets/gruvbox-dark-hard-C820rvS2.js.gz +0 -0
  470. package/dist/assets/gruvbox-dark-medium-BPjhmG05.js.br +0 -0
  471. package/dist/assets/gruvbox-dark-medium-BPjhmG05.js.gz +0 -0
  472. package/dist/assets/gruvbox-dark-soft-MrdJrrXF.js.br +0 -0
  473. package/dist/assets/gruvbox-dark-soft-MrdJrrXF.js.gz +0 -0
  474. package/dist/assets/gruvbox-light-hard-BC_s9l72.js.br +0 -0
  475. package/dist/assets/gruvbox-light-hard-BC_s9l72.js.gz +0 -0
  476. package/dist/assets/gruvbox-light-medium-BAWPOn9u.js.br +0 -0
  477. package/dist/assets/gruvbox-light-medium-BAWPOn9u.js.gz +0 -0
  478. package/dist/assets/gruvbox-light-soft-BSMLrYjP.js.br +0 -0
  479. package/dist/assets/gruvbox-light-soft-BSMLrYjP.js.gz +0 -0
  480. package/dist/assets/hack-Cn178EEI.js.br +0 -0
  481. package/dist/assets/hack-Cn178EEI.js.gz +0 -0
  482. package/dist/assets/haml-ReV9wHjP.js.br +0 -0
  483. package/dist/assets/haml-ReV9wHjP.js.gz +0 -0
  484. package/dist/assets/handlebars-D74Ug8_P.js.br +0 -0
  485. package/dist/assets/handlebars-D74Ug8_P.js.gz +0 -0
  486. package/dist/assets/haskell-D8IpX4py.js.br +0 -0
  487. package/dist/assets/haskell-D8IpX4py.js.gz +0 -0
  488. package/dist/assets/haxe-C8oCnwJJ.js.br +0 -0
  489. package/dist/assets/haxe-C8oCnwJJ.js.gz +0 -0
  490. package/dist/assets/hcl-Dh228itO.js.br +0 -0
  491. package/dist/assets/hcl-Dh228itO.js.gz +0 -0
  492. package/dist/assets/hjson-CxZEssPk.js.br +0 -0
  493. package/dist/assets/hjson-CxZEssPk.js.gz +0 -0
  494. package/dist/assets/hlsl-Cvrh5tZx.js.br +0 -0
  495. package/dist/assets/hlsl-Cvrh5tZx.js.gz +0 -0
  496. package/dist/assets/horizon-CE9ld1lL.js.br +0 -0
  497. package/dist/assets/horizon-CE9ld1lL.js.gz +0 -0
  498. package/dist/assets/horizon-bright-DSNQnXHK.js.br +0 -0
  499. package/dist/assets/horizon-bright-DSNQnXHK.js.gz +0 -0
  500. package/dist/assets/houston-CsvMBhTu.js.br +0 -0
  501. package/dist/assets/houston-CsvMBhTu.js.gz +0 -0
  502. package/dist/assets/html-BPYeLA3q.js.br +0 -0
  503. package/dist/assets/html-BPYeLA3q.js.gz +0 -0
  504. package/dist/assets/http-Dy2ncae7.js.br +0 -0
  505. package/dist/assets/http-Dy2ncae7.js.gz +0 -0
  506. package/dist/assets/hurl-Cb5XgwOM.js.br +0 -0
  507. package/dist/assets/hurl-Cb5XgwOM.js.gz +0 -0
  508. package/dist/assets/hxml-Dcm88srW.js.br +0 -0
  509. package/dist/assets/hxml-Dcm88srW.js.gz +0 -0
  510. package/dist/assets/hy-CZbG8q4J.js.br +0 -0
  511. package/dist/assets/hy-CZbG8q4J.js.gz +0 -0
  512. package/dist/assets/i18n-Darz-xgN.js +0 -9
  513. package/dist/assets/i18n-Darz-xgN.js.br +0 -0
  514. package/dist/assets/i18n-Darz-xgN.js.gz +0 -0
  515. package/dist/assets/imba-DsUTQ-LC.js.br +0 -0
  516. package/dist/assets/imba-DsUTQ-LC.js.gz +0 -0
  517. package/dist/assets/index-0lJaiIcB.js +0 -2
  518. package/dist/assets/index-0lJaiIcB.js.br +0 -0
  519. package/dist/assets/index-0lJaiIcB.js.gz +0 -0
  520. package/dist/assets/index-VKN7CDwN.css +0 -2
  521. package/dist/assets/index-VKN7CDwN.css.br +0 -0
  522. package/dist/assets/index-VKN7CDwN.css.gz +0 -0
  523. package/dist/assets/infrastructure-DG9xHrYB.js +0 -3
  524. package/dist/assets/infrastructure-DG9xHrYB.js.br +0 -0
  525. package/dist/assets/infrastructure-DG9xHrYB.js.gz +0 -0
  526. package/dist/assets/ini-B5eOa1yu.js.br +0 -5
  527. package/dist/assets/ini-B5eOa1yu.js.gz +0 -0
  528. package/dist/assets/ishikawaDiagram-WSZJBQD7-D8FhFMwb.js.br +0 -0
  529. package/dist/assets/ishikawaDiagram-WSZJBQD7-D8FhFMwb.js.gz +0 -0
  530. package/dist/assets/java-CCLYh7Ws.js.br +0 -0
  531. package/dist/assets/java-CCLYh7Ws.js.gz +0 -0
  532. package/dist/assets/javascript-B3ZoUvGD.js.br +0 -0
  533. package/dist/assets/javascript-B3ZoUvGD.js.gz +0 -0
  534. package/dist/assets/jinja-I6vrZFw_.js.br +0 -0
  535. package/dist/assets/jinja-I6vrZFw_.js.gz +0 -0
  536. package/dist/assets/jison-C7uQeUlv.js.br +0 -0
  537. package/dist/assets/jison-C7uQeUlv.js.gz +0 -0
  538. package/dist/assets/journeyDiagram-NVQOT4AX-C1y_DqRe.js.br +0 -0
  539. package/dist/assets/journeyDiagram-NVQOT4AX-C1y_DqRe.js.gz +0 -0
  540. package/dist/assets/json-DYyUca0x.js.br +0 -0
  541. package/dist/assets/json-DYyUca0x.js.gz +0 -0
  542. package/dist/assets/json5-BR5RXkoi.js.br +0 -0
  543. package/dist/assets/json5-BR5RXkoi.js.gz +0 -0
  544. package/dist/assets/jsonc-CYpm1nAK.js.br +0 -0
  545. package/dist/assets/jsonc-CYpm1nAK.js.gz +0 -0
  546. package/dist/assets/jsonl-CmCQp5Yx.js.br +0 -0
  547. package/dist/assets/jsonl-CmCQp5Yx.js.gz +0 -0
  548. package/dist/assets/jsonnet-CJTPZ8u_.js.br +0 -0
  549. package/dist/assets/jsonnet-CJTPZ8u_.js.gz +0 -0
  550. package/dist/assets/jssm-DXw9l8Rf.js.br +0 -0
  551. package/dist/assets/jssm-DXw9l8Rf.js.gz +0 -0
  552. package/dist/assets/jsx-Cb6Vub3Y.js.br +0 -0
  553. package/dist/assets/jsx-Cb6Vub3Y.js.gz +0 -0
  554. package/dist/assets/julia-BIoAlrTe.js.br +0 -0
  555. package/dist/assets/julia-BIoAlrTe.js.gz +0 -0
  556. package/dist/assets/just-CwqxWwqp.js.br +0 -0
  557. package/dist/assets/just-CwqxWwqp.js.gz +0 -0
  558. package/dist/assets/kanagawa-dragon-Bozd7klA.js.br +0 -0
  559. package/dist/assets/kanagawa-dragon-Bozd7klA.js.gz +0 -0
  560. package/dist/assets/kanagawa-lotus-BmuOG9ZW.js.br +0 -0
  561. package/dist/assets/kanagawa-lotus-BmuOG9ZW.js.gz +0 -0
  562. package/dist/assets/kanagawa-wave-BML5mF2J.js.br +0 -0
  563. package/dist/assets/kanagawa-wave-BML5mF2J.js.gz +0 -0
  564. package/dist/assets/kanban-definition-27J2QSJJ-DIUOavva.js.br +0 -0
  565. package/dist/assets/kanban-definition-27J2QSJJ-DIUOavva.js.gz +0 -0
  566. package/dist/assets/katex-CXMH3UgJ.js.br +0 -0
  567. package/dist/assets/katex-CXMH3UgJ.js.gz +0 -0
  568. package/dist/assets/kdl-CsD5j6eV.js.br +0 -0
  569. package/dist/assets/kdl-CsD5j6eV.js.gz +0 -0
  570. package/dist/assets/kotlin-DhhofPvG.js.br +0 -0
  571. package/dist/assets/kotlin-DhhofPvG.js.gz +0 -0
  572. package/dist/assets/kusto-C7mF5XQf.js.br +0 -0
  573. package/dist/assets/kusto-C7mF5XQf.js.gz +0 -0
  574. package/dist/assets/laserwave-C_8bwKvT.js.br +0 -0
  575. package/dist/assets/laserwave-C_8bwKvT.js.gz +0 -0
  576. package/dist/assets/latex-D7YcOmGi.js.br +0 -0
  577. package/dist/assets/latex-D7YcOmGi.js.gz +0 -0
  578. package/dist/assets/lean-CewbzKMR.js.br +0 -0
  579. package/dist/assets/lean-CewbzKMR.js.gz +0 -0
  580. package/dist/assets/less-DVTAwKKz.js.br +0 -0
  581. package/dist/assets/less-DVTAwKKz.js.gz +0 -0
  582. package/dist/assets/light-plus-DVQuIRkW.js.br +0 -0
  583. package/dist/assets/light-plus-DVQuIRkW.js.gz +0 -0
  584. package/dist/assets/liquid-DZU1d9jH.js.br +0 -0
  585. package/dist/assets/liquid-DZU1d9jH.js.gz +0 -0
  586. package/dist/assets/llvm-DqHOMS-s.js.br +0 -0
  587. package/dist/assets/llvm-DqHOMS-s.js.gz +0 -0
  588. package/dist/assets/log-BNLmms1o.js.br +0 -0
  589. package/dist/assets/log-BNLmms1o.js.gz +0 -0
  590. package/dist/assets/logo-Cluzi2Zq.js.br +0 -0
  591. package/dist/assets/logo-Cluzi2Zq.js.gz +0 -0
  592. package/dist/assets/lua-tuq8Rev2.js.br +0 -0
  593. package/dist/assets/lua-tuq8Rev2.js.gz +0 -0
  594. package/dist/assets/luau-C2pBCSgt.js.br +0 -0
  595. package/dist/assets/luau-C2pBCSgt.js.gz +0 -0
  596. package/dist/assets/make-Dixweg8N.js.br +0 -0
  597. package/dist/assets/make-Dixweg8N.js.gz +0 -0
  598. package/dist/assets/map-BaFkSB1l.js.br +0 -0
  599. package/dist/assets/map-BaFkSB1l.js.gz +0 -0
  600. package/dist/assets/maplibre-gl-DPzMTNDD.js.br +0 -0
  601. package/dist/assets/maplibre-gl-DPzMTNDD.js.gz +0 -0
  602. package/dist/assets/maplibre-gl-shared.mjs.br +0 -0
  603. package/dist/assets/maplibre-gl-shared.mjs.gz +0 -0
  604. package/dist/assets/maplibre-gl-worker.mjs.br +0 -0
  605. package/dist/assets/maplibre-gl-worker.mjs.gz +0 -0
  606. package/dist/assets/markdown-BYOwaDjH.js.br +0 -0
  607. package/dist/assets/markdown-BYOwaDjH.js.gz +0 -0
  608. package/dist/assets/marko-B27e1lfg.js.br +0 -0
  609. package/dist/assets/marko-B27e1lfg.js.gz +0 -0
  610. package/dist/assets/material-theme-Bm3Qr25_.js.br +0 -0
  611. package/dist/assets/material-theme-Bm3Qr25_.js.gz +0 -0
  612. package/dist/assets/material-theme-darker-2IIEA8gg.js.br +0 -0
  613. package/dist/assets/material-theme-darker-2IIEA8gg.js.gz +0 -0
  614. package/dist/assets/material-theme-lighter-uhdI0v04.js.br +0 -0
  615. package/dist/assets/material-theme-lighter-uhdI0v04.js.gz +0 -0
  616. package/dist/assets/material-theme-ocean-CHQ94UKr.js.br +0 -0
  617. package/dist/assets/material-theme-ocean-CHQ94UKr.js.gz +0 -0
  618. package/dist/assets/material-theme-palenight-B5W6OYN7.js.br +0 -0
  619. package/dist/assets/material-theme-palenight-B5W6OYN7.js.gz +0 -0
  620. package/dist/assets/matlab-D7qyCx1q.js.br +0 -0
  621. package/dist/assets/matlab-D7qyCx1q.js.gz +0 -0
  622. package/dist/assets/mdc-4Lg-bkXO.js.br +0 -0
  623. package/dist/assets/mdc-4Lg-bkXO.js.gz +0 -0
  624. package/dist/assets/mdx-DQZ5AkYe.js.br +0 -0
  625. package/dist/assets/mdx-DQZ5AkYe.js.gz +0 -0
  626. package/dist/assets/mermaid-BxpfTIzt.js.br +0 -0
  627. package/dist/assets/mermaid-BxpfTIzt.js.gz +0 -0
  628. package/dist/assets/mermaid-GHXKKRXX-BKnA-Tt-.js +0 -1
  629. package/dist/assets/mermaid-parser.core-BbBeSajF.js.br +0 -0
  630. package/dist/assets/mermaid-parser.core-BbBeSajF.js.gz +0 -0
  631. package/dist/assets/mermaid.core-Dc9p2r4P.js.br +0 -0
  632. package/dist/assets/mermaid.core-Dc9p2r4P.js.gz +0 -0
  633. package/dist/assets/metadata-admin-CQrvfQZw.js +0 -25
  634. package/dist/assets/metadata-admin-CQrvfQZw.js.br +0 -0
  635. package/dist/assets/metadata-admin-CQrvfQZw.js.gz +0 -0
  636. package/dist/assets/min-dark-BSWPekZh.js.br +0 -0
  637. package/dist/assets/min-dark-BSWPekZh.js.gz +0 -0
  638. package/dist/assets/min-light-DDpmG2fV.js.br +0 -0
  639. package/dist/assets/min-light-DDpmG2fV.js.gz +0 -0
  640. package/dist/assets/mindmap-definition-FAOFIHXS-TIsZfgu-.js.br +0 -0
  641. package/dist/assets/mindmap-definition-FAOFIHXS-TIsZfgu-.js.gz +0 -0
  642. package/dist/assets/mipsasm-BMqwQI7S.js.br +0 -0
  643. package/dist/assets/mipsasm-BMqwQI7S.js.gz +0 -0
  644. package/dist/assets/mojo-fg40_ntQ.js.br +0 -0
  645. package/dist/assets/mojo-fg40_ntQ.js.gz +0 -0
  646. package/dist/assets/monokai-B_bV9PQ9.js.br +0 -0
  647. package/dist/assets/monokai-B_bV9PQ9.js.gz +0 -0
  648. package/dist/assets/moonbit-DgjMoLWr.js.br +0 -0
  649. package/dist/assets/moonbit-DgjMoLWr.js.gz +0 -0
  650. package/dist/assets/move-BYnGhZoM.js.br +0 -0
  651. package/dist/assets/move-BYnGhZoM.js.gz +0 -0
  652. package/dist/assets/narrat-_X_XdTYD.js.br +0 -0
  653. package/dist/assets/narrat-_X_XdTYD.js.gz +0 -0
  654. package/dist/assets/nextflow-BJtWHP5T.js.br +0 -0
  655. package/dist/assets/nextflow-BJtWHP5T.js.gz +0 -0
  656. package/dist/assets/nextflow-groovy-DJMQeKeT.js.br +0 -0
  657. package/dist/assets/nextflow-groovy-DJMQeKeT.js.gz +0 -0
  658. package/dist/assets/nginx-nAXs0UmH.js.br +0 -0
  659. package/dist/assets/nginx-nAXs0UmH.js.gz +0 -0
  660. package/dist/assets/night-owl-DhmEMT88.js.br +0 -0
  661. package/dist/assets/night-owl-DhmEMT88.js.gz +0 -0
  662. package/dist/assets/night-owl-light-eJ-hLW7d.js.br +0 -0
  663. package/dist/assets/night-owl-light-eJ-hLW7d.js.gz +0 -0
  664. package/dist/assets/nim-CCdQjvI2.js.br +0 -0
  665. package/dist/assets/nim-CCdQjvI2.js.gz +0 -0
  666. package/dist/assets/nix-IvuFDN5E.js.br +0 -0
  667. package/dist/assets/nix-IvuFDN5E.js.gz +0 -0
  668. package/dist/assets/nord-Cb4Vim4T.js.br +0 -0
  669. package/dist/assets/nord-Cb4Vim4T.js.gz +0 -0
  670. package/dist/assets/nsis-CjNLYCLg.js.br +0 -0
  671. package/dist/assets/nsis-CjNLYCLg.js.gz +0 -0
  672. package/dist/assets/nushell-DHYfO66s.js.br +0 -0
  673. package/dist/assets/nushell-DHYfO66s.js.gz +0 -0
  674. package/dist/assets/objective-c-D1A_Heim.js.br +0 -0
  675. package/dist/assets/objective-c-D1A_Heim.js.gz +0 -0
  676. package/dist/assets/objective-cpp-BsSzOQcm.js.br +0 -0
  677. package/dist/assets/objective-cpp-BsSzOQcm.js.gz +0 -0
  678. package/dist/assets/ocaml-O90oeIOV.js.br +0 -0
  679. package/dist/assets/ocaml-O90oeIOV.js.gz +0 -0
  680. package/dist/assets/odin-B1RWQWA5.js.br +0 -0
  681. package/dist/assets/odin-B1RWQWA5.js.gz +0 -0
  682. package/dist/assets/one-dark-pro-CLwyXe_n.js.br +0 -0
  683. package/dist/assets/one-dark-pro-CLwyXe_n.js.gz +0 -0
  684. package/dist/assets/one-light-D7Lr4KcI.js.br +0 -0
  685. package/dist/assets/one-light-D7Lr4KcI.js.gz +0 -0
  686. package/dist/assets/openscad-BUDT5pXO.js.br +0 -0
  687. package/dist/assets/openscad-BUDT5pXO.js.gz +0 -0
  688. package/dist/assets/org-DhkRzv3S.js.br +0 -0
  689. package/dist/assets/org-DhkRzv3S.js.gz +0 -0
  690. package/dist/assets/pascal-4ZHwLPI5.js.br +0 -0
  691. package/dist/assets/pascal-4ZHwLPI5.js.gz +0 -0
  692. package/dist/assets/pegDiagram-VL7TDLO6-BrUvPfjL.js.br +0 -0
  693. package/dist/assets/pegDiagram-VL7TDLO6-BrUvPfjL.js.gz +0 -0
  694. package/dist/assets/perl-iLGR5v3R.js.br +0 -0
  695. package/dist/assets/perl-iLGR5v3R.js.gz +0 -0
  696. package/dist/assets/php-DgsNzQlf.js.br +0 -0
  697. package/dist/assets/php-DgsNzQlf.js.gz +0 -0
  698. package/dist/assets/pieDiagram-7S7Q4E2Y-BNPIri0N.js.br +0 -0
  699. package/dist/assets/pieDiagram-7S7Q4E2Y-BNPIri0N.js.gz +0 -0
  700. package/dist/assets/pkl-ot-7Btpt.js.br +0 -0
  701. package/dist/assets/pkl-ot-7Btpt.js.gz +0 -0
  702. package/dist/assets/plastic-DQwYfKfQ.js.br +0 -0
  703. package/dist/assets/plastic-DQwYfKfQ.js.gz +0 -0
  704. package/dist/assets/plsql-DGHpHOYJ.js.br +0 -0
  705. package/dist/assets/plsql-DGHpHOYJ.js.gz +0 -0
  706. package/dist/assets/plugin-calendar-DI5hFrRH.js +0 -1
  707. package/dist/assets/plugin-calendar-DI5hFrRH.js.br +0 -0
  708. package/dist/assets/plugin-calendar-DI5hFrRH.js.gz +0 -0
  709. package/dist/assets/plugin-charts-BuotHBLk.js +0 -7
  710. package/dist/assets/plugin-charts-BuotHBLk.js.br +0 -0
  711. package/dist/assets/plugin-charts-BuotHBLk.js.gz +0 -0
  712. package/dist/assets/plugin-chatbot-BGloefT3.js +0 -120
  713. package/dist/assets/plugin-chatbot-BGloefT3.js.br +0 -0
  714. package/dist/assets/plugin-chatbot-BGloefT3.js.gz +0 -0
  715. package/dist/assets/plugin-dashboard-CaNG1Od0.js +0 -6
  716. package/dist/assets/plugin-dashboard-CaNG1Od0.js.br +0 -0
  717. package/dist/assets/plugin-dashboard-CaNG1Od0.js.gz +0 -0
  718. package/dist/assets/plugin-dashboard-DnNKJB60.css.br +0 -0
  719. package/dist/assets/plugin-dashboard-DnNKJB60.css.gz +0 -0
  720. package/dist/assets/plugin-form-BA3fYsSc.js +0 -1
  721. package/dist/assets/plugin-form-BA3fYsSc.js.br +0 -0
  722. package/dist/assets/plugin-form-BA3fYsSc.js.gz +0 -0
  723. package/dist/assets/plugin-gantt-eVbYEb51.js +0 -63
  724. package/dist/assets/plugin-gantt-eVbYEb51.js.br +0 -0
  725. package/dist/assets/plugin-gantt-eVbYEb51.js.gz +0 -0
  726. package/dist/assets/plugin-grid-B73zsrgO.js +0 -8
  727. package/dist/assets/plugin-grid-B73zsrgO.js.br +0 -0
  728. package/dist/assets/plugin-grid-B73zsrgO.js.gz +0 -0
  729. package/dist/assets/plugin-kanban-BiX4SvpU.js +0 -1
  730. package/dist/assets/plugin-kanban-BiX4SvpU.js.br +0 -0
  731. package/dist/assets/plugin-kanban-BiX4SvpU.js.gz +0 -0
  732. package/dist/assets/plugin-map-5lRITB8H.css.br +0 -0
  733. package/dist/assets/plugin-map-5lRITB8H.css.gz +0 -0
  734. package/dist/assets/plugin-map-D8odPW8M.js +0 -1
  735. package/dist/assets/plugin-map-D8odPW8M.js.br +0 -0
  736. package/dist/assets/plugin-map-D8odPW8M.js.gz +0 -0
  737. package/dist/assets/plugin-markdown-C3ihtjLf.js.br +0 -0
  738. package/dist/assets/plugin-markdown-C3ihtjLf.js.gz +0 -0
  739. package/dist/assets/plugin-report-W3tKaUTG.js +0 -59
  740. package/dist/assets/plugin-report-W3tKaUTG.js.br +0 -0
  741. package/dist/assets/plugin-report-W3tKaUTG.js.gz +0 -0
  742. package/dist/assets/plugin-timeline-DneQi3FN.js +0 -1
  743. package/dist/assets/plugin-timeline-DneQi3FN.js.br +0 -0
  744. package/dist/assets/plugin-timeline-DneQi3FN.js.gz +0 -0
  745. package/dist/assets/plugin-tree-Dg-UoQrg.js +0 -1
  746. package/dist/assets/plugin-tree-Dg-UoQrg.js.br +0 -0
  747. package/dist/assets/plugin-tree-Dg-UoQrg.js.gz +0 -0
  748. package/dist/assets/plugin-view-DMMnDypy.js +0 -1
  749. package/dist/assets/plugin-view-DMMnDypy.js.br +0 -0
  750. package/dist/assets/plugin-view-DMMnDypy.js.gz +0 -0
  751. package/dist/assets/plugins-views-GVcESCR3.js +0 -4
  752. package/dist/assets/plugins-views-GVcESCR3.js.br +0 -0
  753. package/dist/assets/plugins-views-GVcESCR3.js.gz +0 -0
  754. package/dist/assets/po-BiJDBrnU.js.br +0 -0
  755. package/dist/assets/po-BiJDBrnU.js.gz +0 -0
  756. package/dist/assets/poimandres-DRFjx7u4.js.br +0 -0
  757. package/dist/assets/poimandres-DRFjx7u4.js.gz +0 -0
  758. package/dist/assets/polar-C7UOKdEL.js.br +0 -0
  759. package/dist/assets/polar-C7UOKdEL.js.gz +0 -0
  760. package/dist/assets/postcss-BXeXVLqQ.js.br +0 -0
  761. package/dist/assets/postcss-BXeXVLqQ.js.gz +0 -0
  762. package/dist/assets/powerquery-DNMTfnFr.js.br +0 -0
  763. package/dist/assets/powerquery-DNMTfnFr.js.gz +0 -0
  764. package/dist/assets/powershell-CCSX75yM.js.br +0 -0
  765. package/dist/assets/powershell-CCSX75yM.js.gz +0 -0
  766. package/dist/assets/prisma-DMgNhnYS.js.br +0 -0
  767. package/dist/assets/prisma-DMgNhnYS.js.gz +0 -0
  768. package/dist/assets/prolog-iXnhIJG7.js.br +0 -0
  769. package/dist/assets/prolog-iXnhIJG7.js.gz +0 -0
  770. package/dist/assets/proto-DB4EqR-F.js.br +0 -0
  771. package/dist/assets/proto-DB4EqR-F.js.gz +0 -0
  772. package/dist/assets/pug-C1Xkn2-1.js.br +0 -0
  773. package/dist/assets/pug-C1Xkn2-1.js.gz +0 -0
  774. package/dist/assets/puppet-CDv2pdJW.js.br +0 -0
  775. package/dist/assets/puppet-CDv2pdJW.js.gz +0 -0
  776. package/dist/assets/purescript-9MfHhQsQ.js.br +0 -0
  777. package/dist/assets/purescript-9MfHhQsQ.js.gz +0 -0
  778. package/dist/assets/python-gzcpVVnB.js.br +0 -0
  779. package/dist/assets/python-gzcpVVnB.js.gz +0 -0
  780. package/dist/assets/qml-DaaPxMrD.js.br +0 -0
  781. package/dist/assets/qml-DaaPxMrD.js.gz +0 -0
  782. package/dist/assets/qss-Fe1Jh2GI.js.br +0 -0
  783. package/dist/assets/qss-Fe1Jh2GI.js.gz +0 -0
  784. package/dist/assets/quadrantDiagram-CIZ2JOQS-BpL1Kl6d.js.br +0 -0
  785. package/dist/assets/quadrantDiagram-CIZ2JOQS-BpL1Kl6d.js.gz +0 -0
  786. package/dist/assets/r-CrJekUTE.js.br +0 -0
  787. package/dist/assets/r-CrJekUTE.js.gz +0 -0
  788. package/dist/assets/racket-DcIDlBhZ.js.br +0 -0
  789. package/dist/assets/racket-DcIDlBhZ.js.gz +0 -0
  790. package/dist/assets/railroadDiagram-AXF67PYL-CY1JovP6.js.br +0 -0
  791. package/dist/assets/railroadDiagram-AXF67PYL-CY1JovP6.js.gz +0 -0
  792. package/dist/assets/raku-B3gFvitq.js.br +0 -0
  793. package/dist/assets/raku-B3gFvitq.js.gz +0 -0
  794. package/dist/assets/razor-DmNdBrA0.js.br +0 -0
  795. package/dist/assets/razor-DmNdBrA0.js.gz +0 -0
  796. package/dist/assets/rbs-C0MpOrj4.js.br +0 -0
  797. package/dist/assets/rbs-C0MpOrj4.js.gz +0 -0
  798. package/dist/assets/red-DX1BQOs8.js.br +0 -0
  799. package/dist/assets/red-DX1BQOs8.js.gz +0 -0
  800. package/dist/assets/reg-CRGYupPL.js.br +0 -0
  801. package/dist/assets/reg-CRGYupPL.js.gz +0 -0
  802. package/dist/assets/regexp-723CALth.js.br +0 -0
  803. package/dist/assets/regexp-723CALth.js.gz +0 -0
  804. package/dist/assets/rel-BtDbiS_P.js.br +0 -0
  805. package/dist/assets/rel-BtDbiS_P.js.gz +0 -0
  806. package/dist/assets/requirementDiagram-LRYGKXZP-TRTGy9-6.js.br +0 -0
  807. package/dist/assets/requirementDiagram-LRYGKXZP-TRTGy9-6.js.gz +0 -0
  808. package/dist/assets/riscv-Ckw8ddFX.js.br +0 -0
  809. package/dist/assets/riscv-Ckw8ddFX.js.gz +0 -0
  810. package/dist/assets/rolldown-runtime-C0FnF6B9.js.br +0 -5
  811. package/dist/assets/rolldown-runtime-C0FnF6B9.js.gz +0 -0
  812. package/dist/assets/ron-VUp2lXgN.js.br +0 -0
  813. package/dist/assets/ron-VUp2lXgN.js.gz +0 -0
  814. package/dist/assets/rose-pine-aMsaMD1D.js.br +0 -0
  815. package/dist/assets/rose-pine-aMsaMD1D.js.gz +0 -0
  816. package/dist/assets/rose-pine-dawn-8PwUyIlP.js.br +0 -0
  817. package/dist/assets/rose-pine-dawn-8PwUyIlP.js.gz +0 -0
  818. package/dist/assets/rose-pine-moon-DO-qXg-I.js.br +0 -0
  819. package/dist/assets/rose-pine-moon-DO-qXg-I.js.gz +0 -0
  820. package/dist/assets/rosmsg-CAekHB0j.js.br +0 -0
  821. package/dist/assets/rosmsg-CAekHB0j.js.gz +0 -0
  822. package/dist/assets/rough.esm-Dy-Kn_BL.js.br +0 -0
  823. package/dist/assets/rough.esm-Dy-Kn_BL.js.gz +0 -0
  824. package/dist/assets/rst-BLglG3Y_.js.br +0 -0
  825. package/dist/assets/rst-BLglG3Y_.js.gz +0 -0
  826. package/dist/assets/ruby-CacEyOQN.js.br +0 -0
  827. package/dist/assets/ruby-CacEyOQN.js.gz +0 -0
  828. package/dist/assets/runtime-metadata-persistence-D4a_EoZt.js +0 -1
  829. package/dist/assets/runtime-metadata-persistence-D4a_EoZt.js.br +0 -0
  830. package/dist/assets/runtime-metadata-persistence-D4a_EoZt.js.gz +0 -0
  831. package/dist/assets/rust-Cfkwpbl8.js.br +0 -0
  832. package/dist/assets/rust-Cfkwpbl8.js.gz +0 -0
  833. package/dist/assets/sankeyDiagram-W5VNT64P-Hj-Un0bp.js.br +0 -0
  834. package/dist/assets/sankeyDiagram-W5VNT64P-Hj-Un0bp.js.gz +0 -0
  835. package/dist/assets/sas-C_K_aNQk.js.br +0 -0
  836. package/dist/assets/sas-C_K_aNQk.js.gz +0 -0
  837. package/dist/assets/sass-DXrisJhu.js.br +0 -0
  838. package/dist/assets/sass-DXrisJhu.js.gz +0 -0
  839. package/dist/assets/scala-BiFt_7mu.js.br +0 -0
  840. package/dist/assets/scala-BiFt_7mu.js.gz +0 -0
  841. package/dist/assets/scheme-DQCgrYNe.js.br +0 -0
  842. package/dist/assets/scheme-DQCgrYNe.js.gz +0 -0
  843. package/dist/assets/scss-D2XZndG8.js.br +0 -0
  844. package/dist/assets/scss-D2XZndG8.js.gz +0 -0
  845. package/dist/assets/sdbl-bTVj8UrX.js.br +0 -0
  846. package/dist/assets/sdbl-bTVj8UrX.js.gz +0 -0
  847. package/dist/assets/sequenceDiagram-SI44F4Z6-iGYyf5AF.js.br +0 -0
  848. package/dist/assets/sequenceDiagram-SI44F4Z6-iGYyf5AF.js.gz +0 -0
  849. package/dist/assets/shaderlab-TOUzSsQk.js.br +0 -0
  850. package/dist/assets/shaderlab-TOUzSsQk.js.gz +0 -0
  851. package/dist/assets/shellscript-DoDh9O3W.js.br +0 -0
  852. package/dist/assets/shellscript-DoDh9O3W.js.gz +0 -0
  853. package/dist/assets/skeletons-Cs1pm-UR.js.br +0 -0
  854. package/dist/assets/skeletons-Cs1pm-UR.js.gz +0 -0
  855. package/dist/assets/slack-dark-DnToyrRv.js.br +0 -0
  856. package/dist/assets/slack-dark-DnToyrRv.js.gz +0 -0
  857. package/dist/assets/slack-ochin-B2OO5cIa.js.br +0 -0
  858. package/dist/assets/slack-ochin-B2OO5cIa.js.gz +0 -0
  859. package/dist/assets/smalltalk-BHpQb5nM.js.br +0 -0
  860. package/dist/assets/smalltalk-BHpQb5nM.js.gz +0 -0
  861. package/dist/assets/smithy-Dgaz7aur.js.br +0 -0
  862. package/dist/assets/smithy-Dgaz7aur.js.gz +0 -0
  863. package/dist/assets/snazzy-light-4G7pJPwS.js.br +0 -0
  864. package/dist/assets/snazzy-light-4G7pJPwS.js.gz +0 -0
  865. package/dist/assets/solarized-dark-UdsmMDCL.js.br +0 -0
  866. package/dist/assets/solarized-dark-UdsmMDCL.js.gz +0 -0
  867. package/dist/assets/solarized-light-C1IUL_tW.js.br +0 -0
  868. package/dist/assets/solarized-light-C1IUL_tW.js.gz +0 -0
  869. package/dist/assets/solidity-Bj7E1mRn.js.br +0 -0
  870. package/dist/assets/solidity-Bj7E1mRn.js.gz +0 -0
  871. package/dist/assets/soy-BDOoR3HV.js.br +0 -0
  872. package/dist/assets/soy-BDOoR3HV.js.gz +0 -0
  873. package/dist/assets/sparql-D_iOobhT.js.br +0 -0
  874. package/dist/assets/sparql-D_iOobhT.js.gz +0 -0
  875. package/dist/assets/splunk-BC2Px7Mm.js.br +0 -0
  876. package/dist/assets/splunk-BC2Px7Mm.js.gz +0 -0
  877. package/dist/assets/sql-DDaoNBOY.js.br +0 -0
  878. package/dist/assets/sql-DDaoNBOY.js.gz +0 -0
  879. package/dist/assets/src-0qbDl74X.js.br +0 -0
  880. package/dist/assets/src-0qbDl74X.js.gz +0 -0
  881. package/dist/assets/src-B67JaKZf.js.br +0 -0
  882. package/dist/assets/src-B67JaKZf.js.gz +0 -0
  883. package/dist/assets/src-BfBcf0cI.js +0 -1
  884. package/dist/assets/src-BfBcf0cI.js.br +0 -0
  885. package/dist/assets/src-BfBcf0cI.js.gz +0 -0
  886. package/dist/assets/src-DndKl5iC.js +0 -19
  887. package/dist/assets/src-DndKl5iC.js.br +0 -0
  888. package/dist/assets/src-DndKl5iC.js.gz +0 -0
  889. package/dist/assets/src-DwpgXgLE.js.br +0 -0
  890. package/dist/assets/src-DwpgXgLE.js.gz +0 -0
  891. package/dist/assets/ssh-config-BgfXC-Er.js.br +0 -0
  892. package/dist/assets/ssh-config-BgfXC-Er.js.gz +0 -0
  893. package/dist/assets/stata-BfvhQgBh.js.br +0 -0
  894. package/dist/assets/stata-BfvhQgBh.js.gz +0 -0
  895. package/dist/assets/stateDiagram-OKZ733FA-B-kn5M6g.js.br +0 -0
  896. package/dist/assets/stateDiagram-OKZ733FA-B-kn5M6g.js.gz +0 -0
  897. package/dist/assets/stylus-B6D30XZt.js.br +0 -0
  898. package/dist/assets/stylus-B6D30XZt.js.gz +0 -0
  899. package/dist/assets/surrealql-7gu956ad.js.br +0 -0
  900. package/dist/assets/surrealql-7gu956ad.js.gz +0 -0
  901. package/dist/assets/svelte-DSCVGEXc.js.br +0 -0
  902. package/dist/assets/svelte-DSCVGEXc.js.gz +0 -0
  903. package/dist/assets/swift-CyEgAFGc.js.br +0 -0
  904. package/dist/assets/swift-CyEgAFGc.js.gz +0 -0
  905. package/dist/assets/swimlanes-SLNWSIFB-sV1QkjXA.js.br +0 -0
  906. package/dist/assets/swimlanes-SLNWSIFB-sV1QkjXA.js.gz +0 -0
  907. package/dist/assets/synthwave-84-nFMaYfgc.js.br +0 -0
  908. package/dist/assets/synthwave-84-nFMaYfgc.js.gz +0 -0
  909. package/dist/assets/system-verilog-Dh5ihWbf.js.br +0 -0
  910. package/dist/assets/system-verilog-Dh5ihWbf.js.gz +0 -0
  911. package/dist/assets/systemd-BxMlprV5.js.br +0 -0
  912. package/dist/assets/systemd-BxMlprV5.js.gz +0 -0
  913. package/dist/assets/talonscript-CohzipZa.js.br +0 -0
  914. package/dist/assets/talonscript-CohzipZa.js.gz +0 -0
  915. package/dist/assets/tasl-DMoTqEGO.js.br +0 -0
  916. package/dist/assets/tasl-DMoTqEGO.js.gz +0 -0
  917. package/dist/assets/tcl-CZd0xW_V.js.br +0 -0
  918. package/dist/assets/tcl-CZd0xW_V.js.gz +0 -0
  919. package/dist/assets/templ-0sZ2htc8.js.br +0 -0
  920. package/dist/assets/templ-0sZ2htc8.js.gz +0 -0
  921. package/dist/assets/terraform-DswuEJGm.js.br +0 -0
  922. package/dist/assets/terraform-DswuEJGm.js.gz +0 -0
  923. package/dist/assets/tex-nulmLfzO.js.br +0 -0
  924. package/dist/assets/tex-nulmLfzO.js.gz +0 -0
  925. package/dist/assets/timeline-definition-Z64GVDOM-DMClsS2j.js.br +0 -0
  926. package/dist/assets/timeline-definition-Z64GVDOM-DMClsS2j.js.gz +0 -0
  927. package/dist/assets/tokyo-night-oM2G3aXe.js.br +0 -0
  928. package/dist/assets/tokyo-night-oM2G3aXe.js.gz +0 -0
  929. package/dist/assets/toml-CcmNWLt0.js.br +0 -0
  930. package/dist/assets/toml-CcmNWLt0.js.gz +0 -0
  931. package/dist/assets/ts-tags-97776d1y.js.br +0 -0
  932. package/dist/assets/ts-tags-97776d1y.js.gz +0 -0
  933. package/dist/assets/tsx-D0-aSICp.js.br +0 -0
  934. package/dist/assets/tsx-D0-aSICp.js.gz +0 -0
  935. package/dist/assets/turtle-ByJddavk.js.br +0 -0
  936. package/dist/assets/turtle-ByJddavk.js.gz +0 -0
  937. package/dist/assets/twig-C13VO0dK.js.br +0 -0
  938. package/dist/assets/twig-C13VO0dK.js.gz +0 -0
  939. package/dist/assets/typescript-ITQieXu3.js.br +0 -0
  940. package/dist/assets/typescript-ITQieXu3.js.gz +0 -0
  941. package/dist/assets/typespec-BRdr0IET.js.br +0 -0
  942. package/dist/assets/typespec-BRdr0IET.js.gz +0 -0
  943. package/dist/assets/typst-1SSu9v36.js.br +0 -0
  944. package/dist/assets/typst-1SSu9v36.js.gz +0 -0
  945. package/dist/assets/ui-components-q_9kKTqi.js +0 -72
  946. package/dist/assets/ui-components-q_9kKTqi.js.br +0 -0
  947. package/dist/assets/ui-components-q_9kKTqi.js.gz +0 -0
  948. package/dist/assets/ui-layout-nESZUqD7.js +0 -1
  949. package/dist/assets/ui-layout-nESZUqD7.js.br +0 -0
  950. package/dist/assets/ui-layout-nESZUqD7.js.gz +0 -0
  951. package/dist/assets/use-book-data-BpISrpLC.js.br +0 -0
  952. package/dist/assets/use-book-data-BpISrpLC.js.gz +0 -0
  953. package/dist/assets/usePackageL10n-9fP2GgDK.js.br +0 -0
  954. package/dist/assets/usePackageL10n-9fP2GgDK.js.gz +0 -0
  955. package/dist/assets/useSettingsLabel-QE1nXNTt.js +0 -1
  956. package/dist/assets/useSettingsLabel-QE1nXNTt.js.br +0 -0
  957. package/dist/assets/useSettingsLabel-QE1nXNTt.js.gz +0 -0
  958. package/dist/assets/utils-CFdPTF34.js +0 -1
  959. package/dist/assets/utils-CFdPTF34.js.br +0 -0
  960. package/dist/assets/utils-CFdPTF34.js.gz +0 -0
  961. package/dist/assets/v-DBj4K9d_.js.br +0 -0
  962. package/dist/assets/v-DBj4K9d_.js.gz +0 -0
  963. package/dist/assets/vala-zf12oZj6.js.br +0 -0
  964. package/dist/assets/vala-zf12oZj6.js.gz +0 -0
  965. package/dist/assets/vb-DOwzaHZ0.js.br +0 -0
  966. package/dist/assets/vb-DOwzaHZ0.js.gz +0 -0
  967. package/dist/assets/vendor-charts-DAI87uet.js.br +0 -0
  968. package/dist/assets/vendor-charts-DAI87uet.js.gz +0 -0
  969. package/dist/assets/vendor-dndkit-CQdzTF9d.js.br +0 -0
  970. package/dist/assets/vendor-dndkit-CQdzTF9d.js.gz +0 -0
  971. package/dist/assets/vendor-i18n-DeMInx63.js.br +0 -0
  972. package/dist/assets/vendor-i18n-DeMInx63.js.gz +0 -0
  973. package/dist/assets/vendor-icons-core-B25E_7o5.js.br +0 -0
  974. package/dist/assets/vendor-icons-core-B25E_7o5.js.gz +0 -0
  975. package/dist/assets/vendor-markdown-DjBjpmKk.js.br +0 -0
  976. package/dist/assets/vendor-markdown-DjBjpmKk.js.gz +0 -0
  977. package/dist/assets/vendor-objectstack-CVsc1isW.js +0 -186
  978. package/dist/assets/vendor-objectstack-CVsc1isW.js.br +0 -0
  979. package/dist/assets/vendor-objectstack-CVsc1isW.js.gz +0 -0
  980. package/dist/assets/vendor-radix-D1dussIM.js.br +0 -0
  981. package/dist/assets/vendor-radix-D1dussIM.js.gz +0 -0
  982. package/dist/assets/vendor-react-BgOXCBVK.js.br +0 -0
  983. package/dist/assets/vendor-react-BgOXCBVK.js.gz +0 -0
  984. package/dist/assets/vendor-sentry-DlmtNsBO.js.br +0 -0
  985. package/dist/assets/vendor-sentry-DlmtNsBO.js.gz +0 -0
  986. package/dist/assets/vendor-ui-utils-BGw4RtYu.js.br +0 -0
  987. package/dist/assets/vendor-ui-utils-BGw4RtYu.js.gz +0 -0
  988. package/dist/assets/vendor-zod-CBDIIwrA.js.br +0 -0
  989. package/dist/assets/vendor-zod-CBDIIwrA.js.gz +0 -0
  990. package/dist/assets/vennDiagram-T6HMQDX7-CrP23lgd.js.br +0 -0
  991. package/dist/assets/vennDiagram-T6HMQDX7-CrP23lgd.js.gz +0 -0
  992. package/dist/assets/verilog-B2gwz-sJ.js.br +0 -0
  993. package/dist/assets/verilog-B2gwz-sJ.js.gz +0 -0
  994. package/dist/assets/vesper-DdrHHSXu.js.br +0 -0
  995. package/dist/assets/vesper-DdrHHSXu.js.gz +0 -0
  996. package/dist/assets/vhdl-BroJfC0k.js.br +0 -0
  997. package/dist/assets/vhdl-BroJfC0k.js.gz +0 -0
  998. package/dist/assets/viml-DvXPmvsu.js.br +0 -0
  999. package/dist/assets/viml-DvXPmvsu.js.gz +0 -0
  1000. package/dist/assets/vitesse-black-fwtXNY1n.js.br +0 -0
  1001. package/dist/assets/vitesse-black-fwtXNY1n.js.gz +0 -0
  1002. package/dist/assets/vitesse-dark-BZCL-v6S.js.br +0 -0
  1003. package/dist/assets/vitesse-dark-BZCL-v6S.js.gz +0 -0
  1004. package/dist/assets/vitesse-light-VbXTXTou.js.br +0 -0
  1005. package/dist/assets/vitesse-light-VbXTXTou.js.gz +0 -0
  1006. package/dist/assets/vue-Bq5B5kjG.js.br +0 -0
  1007. package/dist/assets/vue-Bq5B5kjG.js.gz +0 -0
  1008. package/dist/assets/vue-html-d0F-gcUX.js.br +0 -0
  1009. package/dist/assets/vue-html-d0F-gcUX.js.gz +0 -0
  1010. package/dist/assets/vue-vine-C_jSoY9V.js.br +0 -0
  1011. package/dist/assets/vue-vine-C_jSoY9V.js.gz +0 -0
  1012. package/dist/assets/vyper-CgoNMtux.js.br +0 -0
  1013. package/dist/assets/vyper-CgoNMtux.js.gz +0 -0
  1014. package/dist/assets/wardleyDiagram-T6FBY63Y-DSw6poZ6.js.br +0 -0
  1015. package/dist/assets/wardleyDiagram-T6FBY63Y-DSw6poZ6.js.gz +0 -0
  1016. package/dist/assets/wasm-BnjxR4X6.js.br +0 -0
  1017. package/dist/assets/wasm-BnjxR4X6.js.gz +0 -0
  1018. package/dist/assets/wasm-ByWQv1Qj.js.br +0 -0
  1019. package/dist/assets/wasm-ByWQv1Qj.js.gz +0 -0
  1020. package/dist/assets/wenyan-C8pVoKbM.js.br +0 -0
  1021. package/dist/assets/wenyan-C8pVoKbM.js.gz +0 -0
  1022. package/dist/assets/wgsl-BsKzXJz4.js.br +0 -0
  1023. package/dist/assets/wgsl-BsKzXJz4.js.gz +0 -0
  1024. package/dist/assets/wikitext-ClFFjSW2.js.br +0 -0
  1025. package/dist/assets/wikitext-ClFFjSW2.js.gz +0 -0
  1026. package/dist/assets/wit-DdvCle-K.js.br +0 -0
  1027. package/dist/assets/wit-DdvCle-K.js.gz +0 -0
  1028. package/dist/assets/wolfram-DLL8P-h_.js.br +0 -0
  1029. package/dist/assets/wolfram-DLL8P-h_.js.gz +0 -0
  1030. package/dist/assets/xml-BgwO9svv.js.br +0 -0
  1031. package/dist/assets/xml-BgwO9svv.js.gz +0 -0
  1032. package/dist/assets/xsl-Ci-Eh2uW.js.br +0 -0
  1033. package/dist/assets/xsl-Ci-Eh2uW.js.gz +0 -0
  1034. package/dist/assets/xychartDiagram-ELKLHX3M-BVUFqBDL.js.br +0 -0
  1035. package/dist/assets/xychartDiagram-ELKLHX3M-BVUFqBDL.js.gz +0 -0
  1036. package/dist/assets/yaml-BnkSoqfe.js.br +0 -0
  1037. package/dist/assets/yaml-BnkSoqfe.js.gz +0 -0
  1038. package/dist/assets/zenscript-BnlCZFoB.js.br +0 -0
  1039. package/dist/assets/zenscript-BnlCZFoB.js.gz +0 -0
  1040. package/dist/assets/zig-CMLA9XwU.js.br +0 -0
  1041. package/dist/assets/zig-CMLA9XwU.js.gz +0 -0
  1042. package/dist/index.html.br +0 -0
  1043. package/dist/index.html.gz +0 -0
  1044. package/dist/stats.html +0 -4950
  1045. package/dist/vite.svg.br +0 -0
  1046. package/dist/vite.svg.gz +0 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,1104 @@
1
1
  # @objectstack/console
2
2
 
3
+ ## 17.0.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 19d8948: Console (objectui) refreshed to `09987b680d53`. Frontend changes in this range:
8
+
9
+ Derived from the changesets objectui declared over the range — 41 releasing of 45 changesets added across 57 non-merge commits; omitted: 4 release-nothing changesets, 13 commits carrying no changeset (they ship no package code).
10
+
11
+ - **minor** — **BREAKING** — `ApproveOutcome` / `RejectOutcome` are now derived from `@objectstack/spec` instead of hand-transcribed (objectui#3783). Same failure class #3220 cleared from the same file for `P… (objectui `d9ce38529`)
12
+ - **minor** — **BREAKING** — Retire the `capability-multiselect` field widget name, which existed only on the docs-site registration path and which nothing ever stamped (objectui#3308, ADR-0049 enforce-or-rem… (objectui `ecae40064`)
13
+ - **patch** — `record:details` section editor now offers the `name` i18n anchor (objectui `2937bcf7d`)
14
+ - **patch** — 相关列表 Add 选择器兑现 `add.picker.filter`:作者限定的候选范围现在真的生效 (objectui `c2ecbaed9`)
15
+ - **patch** — The plan card's "Building…" badge follows the console UI locale, like every other label on it (objectui#3837) (objectui `b3439f420`)
16
+ - **patch** — `record:related_list`: an `add` without `add.picker` no longer takes the whole related list down. (objectui `acc34c57b`)
17
+ - **patch** — 修复 `objectui dev` 生成的临时 app 的 CSS 管线:整套从 Tailwind 3 迁到 Tailwind 4 (objectui `8277053bd`)
18
+ - **patch** — Backfill the last 17 missing locale keys and both remaining template-key families, emptying the call-site key ratchet (objectui#3546, slice seven — final) (objectui `f9faa7d62`)
19
+ - **patch** — `preview.draftBar` speaks one second person in `es` — the draft-preview banner no longer switches from tú to usted when a Spanish user publishes (#3844) (objectui `b750823f0`)
20
+ - **patch** — An empty `disabled` predicate no longer refuses to run the action (objectui#3848) (objectui `56ff0916e`)
21
+ - **patch** — Give `@object-ui/react-runtime`'s React peer range an upper bound: `peerDependencies.react` narrows from `>=18` to `^18.0.0 || ^19.0.0`, the spelling the other 30 react peers in t… (objectui `d11996ea5`)
22
+ - **patch** — 回填 `perm` + `home` 两命名空间 14 个缺失语言 key,十个语言包补齐(#3546 切片六) (objectui `e64a52ec3`)
23
+ - **patch** — `disabled: ''` no longer greys out the remaining five action surfaces (objectui#3849) (objectui `f0a625aa7`)
24
+ - **patch** — Generated temp apps now declare every package they import, at ranges anchored to this repo (objectui `c32323e1e`)
25
+ - **patch** — An action declaring `disabled: ''` is no longer greyed out forever (objectui#3842) (objectui `993336f7c`)
26
+ - **patch** — Backfill the `marketplace` and `preview` namespaces' 37 missing locale keys plus the `marketplace.disclosure.runtime.` template-key family (objectui#3546, slice five) (objectui `844d17fc9`)
27
+ - **patch** — Four spec keys the renderers already honoured are now discoverable from the published `inputs` (objectui `aca561a77`)
28
+ - **patch** — Export `hasDeclaredVisibilityGate` from the package barrel (objectui#3835) (objectui `d3e738af8`)
29
+ - **patch** — Server-declared actions declaring `visible: false` are now hidden instead of rendered as live buttons (objectui#3835) (objectui `d3e738af8`)
30
+ - **patch** — Backfill the `console` namespace's 41 missing locale keys plus the `console.ai.group.` template family (objectui#3546, slice four) (objectui `f5f874491`)
31
+ - **patch** — Grid row actions: the inline button budget is now spent on the primaries that actually render (objectui `14c59c0b9`)
32
+ - **patch** — `action:bar` member actions declaring `visible: false` are now hidden instead of rendered (objectui `794c497c5`)
33
+ - **patch** — Remove the scaffold's unused pinned icon dependency, and make its generated schema interface reachable (objectui `c85268256`)
34
+ - **patch** — Action-face member actions declaring `visible: false` are now hidden instead of rendered (objectui `b5980f471`)
35
+ - **patch** — data-objectstack: pass the server's `drillRanges` date-bucket drill scope through `queryDataset` (restores date drill-through) (objectui `376567890`)
36
+ - **patch** — `record:details` 的 `sections` 输入说明改为从 spec 形状派生的对象形,不再教已被退役的「Section IDs」 (objectui `4178d5a2e`)
37
+ - **patch** — data-objectstack: type `queryDataset`'s result `fields[]` as the spec's `AnalyticsResult.fields[]` element instead of a hand-written copy (objectui `d83f6b3de`)
38
+ - **patch** — Backfill the auth family's 54 missing locale keys — `auth` 26 + `oauth` 16 + `acceptInvitation` 12 (objectui#3546, slice three) (objectui `7864f0340`)
39
+ - **patch** — Row actions declaring `visible: false` are now hidden instead of rendered (objectui `97b63d761`)
40
+ - **patch** — `parseAiQuotaError` now reads the AI quota refusal code from all three shapes the cloud 429 producers use, instead of only the flat `error`-holds-the-code dialect. (objectui `2a54e860c`)
41
+ - **patch** — console: hold the environment list's create CTA with a skeleton until entitlements resolve, instead of showing a label that is about to be overwritten (objectui#3482, part of clou… (objectui `0ef94cae1`)
42
+ - **patch** — Dataset-bound metric cards honour their declared `colorVariant` (objectui#3359, objectstack#5010 ruling B) (objectui `c4c0ac897`)
43
+ - **patch** — Record page header action predicates now speak CEL, like every other action surface (objectui `e24d767e4`)
44
+ - **patch** — `record:highlights` publishes the `readonly` entry key, so an AI author can discover it from the manifest (objectui `7b3e04820`)
45
+ - **patch** — Fix saved list-view preferences never reading back (density, column widths, sort, hidden columns, inline edit) (objectui `7e2b7e94c`)
46
+ - **patch** — `BulkActionParam.options` entries now accept the widget config the renderer already forwards (objectui `d229dfa7b`)
47
+ - **patch** — Ask the view composer for a container's view identities instead of deriving `list.name || 'list'`, so the default list view's translated label resolves (objectui `b691f060e`)
48
+ - **patch** — Record detail pages: a header ⟳ that refreshes the record, its related lists and its tab counts in place — no browser reload (objectui `54233b14a`)
49
+ - **patch** — Resolve `_views` translation keys by the bare view name only — the prefixed full name is no longer a second candidate (objectui `32413ec24`)
50
+ - **patch** — Action params that inherit a field's options now keep the keys that field declared (objectui `fbc23e094`)
51
+ - **patch** — fix(plugin-grid): don't render a row "⋮" trigger that opens an empty menu (objectui `1a33b1aba`)
52
+
53
+ ⚠️ 2 of these carry a breaking change: 2 by the author's own breaking annotation in the changeset body — objectui declares no `major` inside a launch window (`scripts/check-changeset-no-major.mjs`). Each is marked **BREAKING** in the list above — read them before compiling the release record.
54
+
55
+ **In this console build, declared nowhere** — objectui merged 13 commits in this range with no `.changeset/*.md`. The code is inside the pin above and ships here, but nothing upstream declared them, so they appear in no objectui CHANGELOG and in no entry above. Listed by subject rather than counted, because a count cannot tell a dependency bump from a form-behaviour change (objectstack#6174); the upstream gate that would prevent this is objectui#3387.
56
+
57
+ - _(no changeset)_ docs(layout): page-header 的 Responsive Behavior 按 PageHeader 现状改写 Spacing 一行 (#3902) (#3915) (objectui `09987b680`)
58
+ - _(no changeset)_ docs(layout): align PageHeader Styling/Container with the code and make its demo use the component (#3786, #3787) (#3905) (objectui `50fa3766e`)
59
+ - _(no changeset)_ docs(scripts): 删除 scripts/README.md —— 一份无门禁覆盖、无入站链接的第二份清单 (#3882) (objectui `47f607854`)
60
+ - _(no changeset)_ fix(test): runner 的包级 test 入口指回仓根配置,不再落到 app 的 vite.config (#3746) (#3869) (objectui `39136cccb`)
61
+ - _(no changeset)_ ci(skills): skills 指南正文反引号里的仓内路径上门禁,豁免走双向陈旧检测的 baseline (#3735) (#3864) (objectui `74370641d`)
62
+ - _(no changeset)_ docs(ROADMAP): P1.12.3 / P1.16 九条同源漂移按现实改写 (#3738) (#3858) (objectui `6402e253f`)
63
+ - _(no changeset)_ docs(skills): console-development.md 顶部注记的搬家归因改成 04-21→04-23 的 commit 链,cccdf84d7 降为其中一步 (#3737) (#3856) (objectui `6422aa891`)
64
+ - _(no changeset)_ fix(scripts): check-i18n-en-drift 的显式 base 提为权威,解析不出即失败 (#3766) (#3821) (objectui `32bd84236`)
65
+ - _(no changeset)_ docs(layout): page-header 两处文档按组件实读收敛到 subtitle,删掉不存在的 breadcrumbs (#3785) (objectui `f9d70a72e`)
66
+ - _(no changeset)_ docs(ci): 去掉 check-lint-coverage.mjs 头注里的 object-ui 规则点数,并把守卫扩到该文件 (#3279) (#3784) (objectui `4028adfc3`)
67
+ - _(no changeset)_ fix(docs): 按清单校正 9 行 peer 陈述,并把断言加宽到整个 Peer Dependencies 区块 (#3750) (#3779) (objectui `00b9451d8`)
68
+ - _(no changeset)_ ci(changeset): 改了发版包 src/ 却没带 changeset 的 PR 一律失败,空 frontmatter 为显式豁免 (#3387) (#3769) (objectui `a4f837c7d`)
69
+ - _(no changeset)_ docs(hooks): guard-shared-stash header says 32 self-test cases, with the counting rule (#3721) (#3763) (objectui `dbc44b4be`)
70
+
71
+ <!-- adr-0087: not-required (no-migration-prescription) Neither break reaches a consumer of @objectstack/console, which publishes objectui's built SPA and exports no objectui type. capability-multiselect was registered only on registerFields(), whose sole caller is objectui's docs site, so the name was unreachable on the live registerAllFields() path and a field still carrying it degrades to its declared type renderer — the defined behaviour for an unregistered widget, with permission-facet-link unchanged as what is actually stamped. ApproveOutcome/RejectOutcome narrow a TypeScript type exported by @object-ui/plugin-chatbot, a package objectstack neither publishes nor re-exports; the removed ApproveOutcome.id was already undefined at runtime, so no shipped behaviour changes and there is nothing for the ledger to prescribe. -->
72
+
73
+ objectui range: `b1204af0a1f7...09987b680d53`
74
+
75
+ - 379b749: Console (objectui) refreshed to `0cf8f0f70d10`. Frontend changes in this range:
76
+
77
+ Derived from the changesets objectui declared over the range — 24 releasing of 24 changesets added across 66 non-merge commits; omitted: 42 commits carrying no changeset (they ship no package code).
78
+
79
+ - **minor** — **BREAKING** — Reclaim the natural names `GestureType` and `GestureConfig` (objectui#3363). (objectui `e6fdbdcc4`)
80
+ - **minor** — **BREAKING** — Track the `@objectstack` family at `17.0.0-rc.5` (objectui#3560). (objectui `48132f7e6`)
81
+ - **patch** — metadata-admin: name the offending key when only one union member ever read the value (objectui `be9cd38ac`)
82
+ - **patch** — System Hub: a card count that failed to load no longer renders as `0` (objectui `c1a18ed99`)
83
+ - **patch** — Count System Hub's Organizations card through `sys_organization`, the object the framework actually registers — it asked for `sys_org`, which does not exist, so the card read `0`… (objectui `278f57c36`)
84
+ - **patch** — metadata-admin: name the offending column when `config.columns` is rejected (objectui `949b2f147`)
85
+ - **patch** — Declare the retired `system/{users,organizations,roles,positions}` console URLs as redirects onto the framework-owned system objects (objectui#3655). (objectui `9961df297`)
86
+ - **patch** — Point the last four navigation producers at the canonical metadata-admin routes instead of the deprecated `component/metadata` alias, removing a redirect hop from each (objectui#3… (objectui `d2fd044b7`)
87
+ - **patch** — `view.readonlyTooltip` — the tooltip on a view tab's read-only lock — is retranslated in the eight packs (ja/ko/de/fr/es/pt/ru/ar) that still described the retired "duplicate to c… (objectui `33526fd51`)
88
+ - **patch** — Send the console host's legacy URL redirects straight to the canonical metadata-admin routes instead of routing them through the deprecated `component/metadata/resource` alias (ob… (objectui `7883c0250`)
89
+ - **patch** — Match the built-in pseudo-routes on whole path segments, so a mistyped app name can no longer render a different app (objectui#3638). (objectui `5f752a089`)
90
+ - **patch** — Make the zero-app console's "Object Manager" / "Datasources" entries resolve, and give that branch a not-found screen instead of a blank one (objectui#3610). (objectui `fa3ba5bf1`)
91
+ - **patch** — Point the four remaining "Settings" senders at the system hub `/apps/setup/system` instead of the bare `/apps/setup` (objectui#3611). (objectui `6b3d47b34`)
92
+ - **patch** — Render the `/home` Administration group as a real group, so its nine system-administration entries are reachable (objectui#3609). (objectui `13b72c740`)
93
+ - **patch** — `console.objectView.systemViewReadonly` and `console.objectView.expandToPage` are translated in the eight packs that stored English for them, so a Japanese, Korean, German, French… (objectui `4dcd52abe`)
94
+ - **patch** — metadata-admin: restore per-field diagnostics when editing an invalid stored `view` (objectui `c993ff26a`)
95
+ - **patch** — Point the "System Settings" entries at the system hub `/apps/setup/system` instead of the bare `/apps/setup` (objectui#3590). (objectui `d1be43673`)
96
+ - **patch** — Converge dashboard widget `compareTo` on the executor's `{ kind, dimension? }` contract, and make the dataset path actually render a comparison (objectui `4bc6c2340`)
97
+ - **patch** — metadata-admin no longer false-rejects a stored `view` that has been pinned or reordered. The editor's live client-side validation judged BOTH the create and the edit draft with t… (objectui `4cf76ce45`)
98
+ - **patch** — The organization-management console is translatable. The 90 keys under `organization.*` — the org layout and its tabs, the members list, the whole invitation flow, organization se… (objectui `42ae5c62a`)
99
+ - **patch** — Complete `packages/runner/vite.config.ts`'s workspace alias table to the full transitive import closure, so `@object-ui/runner` boots and builds from the monorepo sources without… (objectui `03f25f7a3`)
100
+ - **patch** — Runner in-app navigation now carries the current query string across to the pushed URL instead of `pushState`-ing a bare path. Opening the Runner with `?api=<base>` and clicking a… (objectui `04fb8b8ab`)
101
+ - **patch** — The no-apps empty state's "Create Your First App" CTA now opens the app-creation flow instead of silently bouncing the user back to the landing page. It called `navigate('/create-… (objectui `9089d8503`)
102
+ - **patch** — The five locale keys behind #3546's eight no-fallback `t()` call sites are now defined in all ten packs, so the built-in-view toasts, the activity-timeline source link, the wizard… (objectui `6d762da7a`)
103
+
104
+ ⚠️ 2 of these carry a breaking change: 2 by the author's own breaking annotation in the changeset body — objectui declares no `major` inside a launch window (`scripts/check-changeset-no-major.mjs`). Each is marked **BREAKING** in the list above — read them before compiling the release record.
105
+
106
+ **In this console build, declared nowhere** — objectui merged 42 commits in this range with no `.changeset/*.md`. The code is inside the pin above and ships here, but nothing upstream declared them, so they appear in no objectui CHANGELOG and in no entry above. Listed by subject rather than counted, because a count cannot tell a dependency bump from a form-behaviour change (objectstack#6174); the upstream gate that would prevent this is objectui#3387.
107
+
108
+ - _(no changeset)_ docs(ROADMAP): P1.12 Routes/Tests 两条 PermissionManagementPage 记录按现实改写 (#3704) (#3714) (objectui `0cf8f0f70`)
109
+ - _(no changeset)_ test(scripts): gate version literals written into docs prose (#3711) (objectui `36bf20235`)
110
+ - _(no changeset)_ test(app-shell): pin what `invalid_value` at a union node means, and decline the relaxation (#3706) (objectui `f1310e40f`)
111
+ - _(no changeset)_ fix(react-runtime,sdui-parser,console): 补上三包声明了 MIT 却从未随包发布的许可证文本,并加门禁封死该类 (#3696, #3702) (#3703) (objectui `2267d6399`)
112
+ - _(no changeset)_ docs(ROADMAP): rewrite P1.12.2 + Permission Management to the post-#3673/#3699 reality (#3700) (#3705) (objectui `35e84b65f`)
113
+ - _(no changeset)_ test(scripts): 棘轮陈旧消息按实际成因分句,覆盖全部三条退休路径 (#3674) (#3701) (objectui `45cdd4cb4`)
114
+ - _(no changeset)_ chore(console): remove the orphaned SystemObjectViewPage + systemObjects dead code (#3672) (#3699) (objectui `b19f54f39`)
115
+ - _(no changeset)_ docs(cli): point the Node row at root engines, drop the ghost spec compatibility row (#3698) (objectui `d46b40324`)
116
+ - _(no changeset)_ docs(plugin-tree): add the `## License` section the other 36 published READMEs carry (#3664) (#3695) (objectui `3e601773e`)
117
+ - _(no changeset)_ docs(packages): retire the dead release-metadata §Compatibility block from 36 package READMEs (#3688) (objectui `4747344da`)
118
+ - _(no changeset)_ fix(cli,create-plugin): drop the `templates` files entry neither package has ever had (#3665) (#3687) (objectui `dcff16e06`)
119
+ - _(no changeset)_ docs(ci): type-check 作业行补两道 i18n 门禁,并把该表的钉粒度降到步骤级 (#3653) (#3683) (objectui `9cd84de2e`)
120
+ - _(no changeset)_ docs(agents): 补一条 prettier 假红护栏(#3682) (#3684) (objectui `074ec53d6`)
121
+ - _(no changeset)_ chore(deps): remove the unwired prettier devDependency (#3657) (#3681) (objectui `f953b5884`)
122
+ - _(no changeset)_ docs(runner): 按实测闭合 §Features 插件断言,三处 main.tsx 订正为 App.tsx (#3619) (#3652) (#3676) (objectui `0fcd57199`)
123
+ - _(no changeset)_ chore(deps): Bump mermaid from 11.16.0 to 11.16.1 (#3675) (objectui `2ce5c31f0`)
124
+ - _(no changeset)_ feat(scripts): en 文案改动必须由九个译文包同批跟改的门禁 (#3650) (#3659) (objectui `880e06905`)
125
+ - _(no changeset)_ docs(scripts): 按真实机制改写两处 Lychee 门禁描述,并删掉 judgeHref 重复注释 (#3587) (#3648) (#3656) (objectui `f4b828857`)
126
+ - _(no changeset)_ test(app-shell): 把 MetadataRedirectStub 同步回宿主实现,并用整链断言钉住转录真实性 (#3661) (#3671) (objectui `e98702190`)
127
+ - _(no changeset)_ test(scripts): gate that package.json `files` entries exist on disk (#3663) (#3667) (objectui `fe4d4da37`)
128
+ - _(no changeset)_ docs(runner): 把 README 两处开放集合的插件措辞按实测闭合 (#3632) (#3644) (objectui `c6acd7b8f`)
129
+ - _(no changeset)_ test(filter-parity): 给两处 spec 词表减法加排除项存活棘轮 (#3628) (#3640) (objectui `1e635d654`)
130
+ - _(no changeset)_ fix(plugin-tree): ship the MIT LICENSE the package.json files field already declares (#3647) (#3662) (objectui `dae1ac41e`)
131
+ - _(no changeset)_ docs(runner): §vite.config.ts 改写为指路真实文件 + 点名两个承重不变量 (#3643) (#3651) (objectui `93c261992`)
132
+ - _(no changeset)_ feat(scripts): check-doc-links 扫描面第四扩 packages/\*/README.md,并付清入场价的 11 条死链 (#3622) (#3649) (objectui `0d5da5394`)
133
+ - _(no changeset)_ docs(runner): §Add Custom Routes 改写为指向 Add Custom Schemas 的元数据路由说明 (#3618) (#3646) (objectui `54dd7ec1f`)
134
+ - _(no changeset)_ docs(runner): 删掉 Best Practices 里复活的环境变量配置面 (#3617) (#3633) (objectui `d9a03fe9a`)
135
+ - _(no changeset)_ docs(runner): README §Features 的 Hot Reload 按两个 loader 分路限定 (#3620) (#3634) (objectui `8098c8585`)
136
+ - _(no changeset)_ fix(docs,scripts): 清掉 9 条包 README 死链,并让链接门禁认站内绝对 URL (#3603) (#3629) (objectui `0e4ea07b2`)
137
+ - _(no changeset)_ test(types): drop 37 spec-retired DROPPED_SCHEMA_EXPORTS rows, add liveness ratchet (#3601) (#3623) (objectui `2904a7cd3`)
138
+ - _(no changeset)_ docs(runner): README §Development Workflow 按两个 loader 的真相改写第 1、3 步 (#3604) (#3621) (objectui `8d5418e59`)
139
+ - _(no changeset)_ docs(runner): 删掉 runner.mdx 的幽灵目录与「内置示例 schema」断言,重写 Package Information (#3577) (#3616) (objectui `616353ad1`)
140
+ - _(no changeset)_ docs(contributing): 按真实 root scripts 重写三条死的开发服务器命令 (#3596) (#3615) (objectui `ee3b42021`)
141
+ - _(no changeset)_ feat(scripts): check-doc-links 扫描面第三扩 CONTRIBUTING/ROADMAP/docs (#3572) (#3589) (objectui `6632114bc`)
142
+ - _(no changeset)_ docs(runner): 删掉 README 两处虚构能力面,修正 404 文档链接 (#3576) (#3602) (objectui `622c23082`)
143
+ - _(no changeset)_ docs(contributing): 按现状改写文档目录说明,站点源是 content/docs/ (#3584) (#3597) (objectui `74387e314`)
144
+ - _(no changeset)_ chore(scripts): remove dead start-app.mjs, fix stale MetadataLoader comment (#3591) (objectui `39477b03b`)
145
+ - _(no changeset)_ docs(contributing): 按现状改写链接门禁分工,换掉三条死的"正确示例"路由 (#3570) (#3585) (objectui `7a1a449c8`)
146
+ - _(no changeset)_ docs(runner): 记录 `api` 查询参数这一真实的元数据加载配置面 (#3537) (#3581) (objectui `632c07c5b`)
147
+ - _(no changeset)_ fix(tsconfig): 根 tsconfig.node.json 加 noEmit,堵住全仓排放 (#3574) (objectui `c35fed098`)
148
+ - _(no changeset)_ docs: 修正 CONTRIBUTING.md / ROADMAP.md 的 3 条死链 (#3545) (#3571) (objectui `d126607dc`)
149
+ - _(no changeset)_ fix(fields): 编辑弹窗 datetime/date 字段回显存量值 (#3565) (objectui `b785a77b3`)
150
+
151
+ objectui range: `7dfbeb704e1e...0cf8f0f70d10`
152
+
153
+ <!-- adr-0087: not-required (already-registered dashboard-widget-action-aria-removed) 本条目声明的两处破坏都落在 objectui 自家 npm 包的 TypeScript 导出面(@object-ui/types / core / react / mobile 的类型重命名与 re-export 移除),而 @objectstack/console 发布的是按 pin SHA 构建的冻结 SPA 产物、不转发这些类型入口,所以没有需要新登记的元数据迁移。区间内唯一触及元数据作者面的处方是 dashboard.widgets[] 的 actionUrl/actionType/actionIcon/aria 改为具名报错并附 os migrate meta --from 16 —— 那是 objectstack 自己 protocol-17 的改动,已由 packages/spec/src/conversions/registry.ts 的 dashboard-widget-action-aria-removed 登记(surface 逐字覆盖这四个键,toMajor 17,带 apply 与 fixture),并列在 packages/spec/src/migrations/registry.ts step17 的 conversionIds 中;该条目在 merge base 上即已存在,本 PR 未新增任何台账条目。 -->
154
+
155
+ - 8607a55: Console (objectui) refreshed to `1bb77aa24514`. Frontend changes in this range:
156
+
157
+ - fix(flow-runner): honor a screen field's `visibleWhen` — render and validation (framework#3528) (#2899)
158
+ - fix(i18n): unconditional Chinese in the chatbot confirm card and field inspector (#2884, #2885) (#2900)
159
+ - fix(actions): one precedence for `target`/`execute`, and stop mislabeling server-side `body` (#2896) (#2895)
160
+ - fix(i18n): close the last three zh-branch gaps (#2871, part 3) (#2898)
161
+ - feat(grid): compute all eleven spec column summary aggregations (#2890)
162
+ - feat(console): make `delegated_admin` reachable and narrow both role pickers (framework#3697) (#2891)
163
+ - fix(app-shell): localize the two DeclaredActionsBar strings that bypassed i18n (#2762 P0-3) (#2894)
164
+ - fix(i18n): delete the four `pick({en,zh})` clones (#2871, part 2) (#2893)
165
+ - fix(views): the five per-view-type configs speak the spec vocabulary (#2231 phase 3) (#2892)
166
+ - feat(grid): gate list row Edit/Delete and bulk delete on the effective operation set (objectstack#3720) (#2889)
167
+ - feat(charts): honor `ChartAxis.stepSize`, `ChartConfig.description` and `.height` (framework#3752) (#2888)
168
+ - fix(i18n): retire four hand-rolled zh/en branches (#2871, part 1) (#2887)
169
+ - feat(charts): ObjectChart honors the spec `ChartConfig` author shape (#2880) (#2883)
170
+ - fix(hooks): stop calling translation hooks inside try/catch (#2879) (#2881)
171
+ - fix(charts): a fieldless `count` aggregate keyed its value column `undefined` (framework#3701) (#2878)
172
+ - fix(i18n): make `en` the complete source of truth for grid import and set-password (#2872 b/c) (#2877)
173
+ - fix(auth): localize the ADR-0069 remediation gate and the auth split-panel (#2870) (#2875)
174
+ - fix(metadata-admin): drop the SkillPreview "Required Permissions" panel (framework#3686) (#2874)
175
+ - feat(console): scoped-invitation placement — invite straight into a unit and positions (framework ADR-0105 D8) (#2868)
176
+ - fix(attachments): read the storage service's new error envelope so gated downloads keep their friendly copy (objectstack#3675) (#2869)
177
+ - fix(fls): wire real per-caller FLS into import targets and grid columns, drop dead field.permissions shape (objectstack#3661) (#2866)
178
+ - fix(page,field): consume the spec's type/label/maxLength keys (framework#1878 §3 recheck) (#2867)
179
+ - fix(cloud-connection): localize the Cloud Connection panel (objectstack#3589 follow-up) (#2865)
180
+ - fix(dashboard,charts): send widget query options to the server, order funnel stages by the pipeline (#2864)
181
+ - fix(action): honor the spec disabled predicate on every action-rendering surface (#1885 follow-through) (#2863)
182
+
183
+ objectui range: `09c6a177bb4a...1bb77aa24514`
184
+
185
+ - b96c11b: Console (objectui) refreshed to `2cb8d78e24ad`. Frontend changes in this range:
186
+
187
+ - fix(console): dispatch flow actions from every surface + cover the screen-flow round trip (framework#3528) (#2833)
188
+ - feat(approvals): typed output pickers, quick-path guard, expression completion (framework#3447, #2829) (#2831)
189
+ - fix(console): make a paused screen flow completable, and stop the runner from tearing down its host (framework#3528) (#2830)
190
+ - feat(fields): adopt the file-as-reference value shape — ObjectStack ADR-0104 D3 wave 2 (PR-7) (#2828)
191
+ - fix(console): resolve a modal action's `target` as a page, not an object (#3530) (#2826)
192
+ - feat(approvals): dynamic decision-output fields + expression approver editing (framework#3447 P2) (#2827)
193
+ - feat: render the server's effective API operation set (#3391 PR-4) (#2823)
194
+ - fix(console): approval timeline attachment chip shows its name and opens (#2820) (#2821)
195
+ - fix(i18n): localize FileField upload widget + approvals snapshot field labels (#2819)
196
+ - feat(report)!: drop SpecReportColumn/SpecReportGrouping re-exports + retire the legacy ReportViewer chart fallback (#3463) (#2816)
197
+ - feat(plugin-grid): "Import as historical data" option in the Import Wizard (framework #3479) (#2815)
198
+ - feat(app-shell): toast when a save silently dropped read-only fields (framework #3431/#3455) (#2814)
199
+ - fix(app-shell): remove never-firing `record-change` option from the flow trigger picker (#3427) (#2812)
200
+ - fix(form): scroll+focus the first errored field on invalid submit (#2793) (#2813)
201
+ - feat(approvals): label pending-approver chips with their group (objectui#2807) (#2811)
202
+ - feat(approvals): label pending-approver chips with their group (objectui#2807) (#2811)
203
+ - fix(approvals): surface the admin override for a stuck request in the inbox (#3424) (#2810)
204
+ - feat(studio): first-class notify flow node in the Studio palette + inspector (#2808)
205
+ - feat(app-shell): Studio flow start node offers a "Record created or updated" trigger (#3427) (#2809)
206
+ - fix: read spec-canonical keys for dashboard header title and field length rules (#2806)
207
+ - fix(kanban): surface off-column records in an Uncategorized lane (#2792) (#2804)
208
+ - fix(approvals): Approval Center density + amount emphasis (#2762 P2) (#2805)
209
+ - fix(i18n): 补齐记录详情审批按钮与弹窗的国际化文案 (#2791)
210
+ - fix(approvals): Approval Center triage + drawer readability pass (#2762 P1-2/3/4/5, P2) (#2803)
211
+ - feat(app-shell): surface step warnings in the Flow Runs panel (#3407) (#2802)
212
+ - feat(studio): surface the enable.searchable toggle in ObjectSettingsPanel (#2800) (#2801)
213
+ - feat(app-shell): localize the automations flow designer & inspector (en-US + zh-CN) (#2796)
214
+ - feat(form): consume spec-aligned FormView buttons/defaults in ObjectForm (#2790)
215
+ - fix(approvals): Approval Center UX pass — badge nowrap, approve confirm, progress bar, localized declared actions (#2762) (#2789)
216
+ - feat(app-shell): group/coalesce repeat notifications in the message center (#2765) (#2788)
217
+ - fix(app-shell): 首页与消息中心的未国际化文案 (#2787)
218
+ - fix(app-shell): give inline `lookup` action params a real record picker (#3405) (#2786)
219
+ - fix(app-shell): map raw sys_activity rows in the inbox Activity tab (#2781) (#2782)
220
+ - fix(app-shell): i18n the "Switch Object" breadcrumb dropdown label (#2783)
221
+ - fix(data-table): keep right-pinned action column header sticky on horizontal scroll (#2785)
222
+ - fix(app-shell): keep list-origin back link when switching detail tabs (#2775)
223
+
224
+ objectui range: `cf2d56e32a11...2cb8d78e24ad`
225
+
226
+ - d69918d: Console (objectui) refreshed to `4a4829d0ef39`. Frontend changes in this range:
227
+
228
+ - fix(fields): emit the spec's `$notContains`, and keep `secret` out of inline edit (#2901) (#2940)
229
+ - fix(detail): distinguish "in approval (editable)" from locked, and stop losing write warnings (#2914)
230
+ - fix(types): zod example teaches the Zod 4 `.issues` accessor, and `examples/` is type-checked (#2919) (#2939)
231
+ - fix(plugin-grid,plugin-form,cli,+2): type-check the last five unchecked packages, and fix the two runtime bugs hiding there (#2919) (#2936)
232
+ - fix(views): ListView reads the spec-canonical `filter` (#2890) (#2935)
233
+ - fix(console,runner): render the approvals inbox against one ticking clock, and lint both packages (#2927) (#2930)
234
+ - feat(lint): run ESLint on PRs, and cover every package (#2923) (#2928)
235
+ - feat(setup): the datasource list shows the real connect verdict, with the operator-facing reason (framework#3827) (#2926)
236
+ - fix(fields,core,detail): make the sharing-rule dialog usable — i18n, a picker that lists people, and permission-aware CTAs (#2920)
237
+ - fix(detail): the approval band honors the node's `lockRecord` instead of assuming every approval locks (#2902) (#2906)
238
+ - fix(console): the API console lists the whole AI family, and the tool preview stops linking to a 404 (framework#3718) (#2925)
239
+ - fix(runner): type-check the package at all, fix the hidden DataSource violation (#2917) (#2922)
240
+ - fix(console): the API console's AI group lists the routes that exist (framework#3718) (#2921)
241
+ - fix(plugin-map): drop the `maplibre-gl@6` default import + gate type-check in CI (#2911) (#2915)
242
+ - fix(i18n): compose the AI-model diagnostics summary client-side (#2886) (#2912)
243
+ - fix(flow-designer): read approver value sources off the schema instead of mirroring them (framework#3508 follow-up) (#2910)
244
+ - feat(i18n): complete the locale backfill — all ten packs reach full key parity (#2872) (#2909)
245
+ - fix(list): show real match total in record-count bar under server pagination (#2873)
246
+ - fix(i18n): the change card's Confirm button sent text the cloud gate rejects, + parity ratchet (#2905)
247
+ - feat(i18n): translate the four highest-traffic namespaces into the eight trailing locales (#2872 part a) (#2903)
248
+
249
+ objectui range: `1bb77aa24514...4a4829d0ef39`
250
+
251
+ - 3c416a1: Console (objectui) refreshed to `6314e87f2d49`. Frontend changes in this range:
252
+
253
+ Derived from the changesets objectui declared over the range — 27 releasing of 30 changesets added across 43 non-merge commits; omitted: 3 release-nothing changesets, 14 commits carrying no changeset (they ship no package code).
254
+
255
+ - **minor** — **BREAKING** — Retire the `global_nav` Studio designer surfaces, and track the `@objectstack` family at `17.0.0-rc.6` (objectstack#7100 / objectstack#6888). (objectui `38ab5054f`)
256
+ - **minor** — One fullscreen long-text editor, hoisted to the package both render paths may import (objectui `cb1340058`)
257
+ - **minor** — i18n: retire the orphaned `report.editor.*` namespace — 105 of its 106 keys, in all ten locale packs (~1050 translated strings) (objectui `fa511094a`)
258
+ - **minor** — `/accept-invitation/:invitationId` is one route, one component, one namespace — the console now renders the invitation page that actually shows you the invitation (objectui `0e67b53ff`)
259
+ - **patch** — Inline-editing an `address` on the record detail page now edits it as real sub-fields, instead of collapsing it to one text box reading `[Object]` and saving a string over the str… (objectui `6314e87f2`)
260
+ - **patch** — An image field's declared `maxSize` is enforced before the upload starts, not after it finishes (objectui `433ff9fd3`)
261
+ - **patch** — A `Field.address` value now reads as a formatted postal address on the record detail page, instead of stringified JSON. (objectui `e2e6360c2`)
262
+ - **patch** — Renaming a freshly-created view now persists — `updateView` reads and writes the same row, instead of reading the published overlay and losing the edit into a rejected partial wri… (objectui `b42558a4c`)
263
+ - **patch** — Using a list's filter panel no longer overwrites the view's source-declared `filter` for everyone (objectui `f8595a054`)
264
+ - **patch** — A list emptied by the view's own filter says "no records match", instead of inviting you to create your first record (objectui `f8595a054`)
265
+ - **patch** — An illegal gantt dependency link now says why it was refused, instead of doing nothing (objectui `e1ade8f03`)
266
+ - **patch** — The gantt's conflict dialog shows the number of affected tasks again, not a literal `{2}` (objectui `828549a9a`)
267
+ - **patch** — An action rendered in the overflow menu, as an icon or inside a group now reaches the runner carrying the same authored keys as the same action rendered inline — `action:menu`, `a… (objectui `d6e5124a3`)
268
+ - **patch** — A rejected Kanban drag rolls the card back on both data ownerships, not just when the board owns its own records (objectui `2c8ad7cdb`)
269
+ - **patch** — ObjectGrid's bulk-bar **Clear** now unticks the row checkboxes, instead of only removing the toolbar (objectui `51ab34e34`)
270
+ - **patch** — Conditional required (`requiredWhen`) now decides at SUBMIT time too — the star and the validator can no longer disagree (objectui `b1e42d09b`)
271
+ - **patch** — fix(app-shell): the top-bar bell polls the inbox on every console surface, not only inside an app (#4110) (objectui `7b0783232`)
272
+ - **patch** — An `autoTrigger` action that spills past `action:bar`'s `maxVisible` now still runs — `action:menu` consumes the flag instead of dropping it. (objectui `debad2796`)
273
+ - **patch** — The first-run setup wizard no longer drops a brand-new owner outside the console (objectui `1f34b3825`)
274
+ - **patch** — The AI build conversation no longer blanks itself the moment the preview opens (objectui `e16fd9597`)
275
+ - **patch** — `features.passkeys` and `features.magicLink` are documented as reserved, so enabling them no longer implies a login-page entry point that does not exist (objectui `564252cd8`)
276
+ - **patch** — `/setup` is a real address again — the console gets a stable deep link into platform administration instead of bouncing you back to home (objectui `b3f665b49`)
277
+ - **patch** — `?runAction=create_environment` is no longer consumed when the environments toolbar has no create action to run it on. (objectui `bf2fd3d1f`)
278
+ - **patch** — The build-history panel tells an operator a 503 means "the commit store could not be reached — retry", instead of `commits HTTP 503` (objectui `f7c6430ec`)
279
+ - **patch** — Stop the report config panel being titled "Title", and the view-settings colour section "Color" (objectui `ff84b0523`)
280
+ - **patch** — Fail when a `t()` call site's arguments are not the holes its `en` value has, and delete the three that were inert (objectui `5f40de7d4`)
281
+ - **patch** — `DatasetWidget`'s option-color / dimension-label probe now rides the host's authenticated fetch (`SchemaRendererContext.apiFetch`) instead of the bare global `fetch`. (objectui `ee7a68d2d`)
282
+
283
+ ⚠️ 1 of these carries a breaking change: 1 by the author's own breaking annotation in the changeset body — objectui declares no `major` inside a launch window (`scripts/check-changeset-no-major.mjs`). Each is marked **BREAKING** in the list above — read them before compiling the release record.
284
+
285
+ **In this console build, declared nowhere** — objectui merged 14 commits in this range with no `.changeset/*.md`. The code is inside the pin above and ships here, but nothing upstream declared them, so they appear in no objectui CHANGELOG and in no entry above. Listed by subject rather than counted, because a count cannot tell a dependency bump from a form-behaviour change (objectstack#6174); the upstream gate that would prevent this is objectui#3387.
286
+
287
+ - _(no changeset)_ fix(editor,markdown): complete the vite alias tables so the per-package test task resolves (#4218) (objectui `a9a67ec5b`)
288
+ - _(no changeset)_ ci(turbo): derive the `lint` and `build` inputs guards from each package's real program (#4184, #4185) (#4200) (objectui `a5b1b8917`)
289
+ - _(no changeset)_ ci(turbo): derive the test inputs guard from each package's Vitest config program (#4178) (#4188) (objectui `2b9428338`)
290
+ - _(no changeset)_ ci(turbo): derive the type-check inputs guard from each package's tsc program (#3514) (#4176) (objectui `eb5f8cea0`)
291
+ - _(no changeset)_ docs(ci): pin the 'can never be required, structurally' bullet to the YAML it quotes (#4170) (#4175) (objectui `c27c8981f`)
292
+ - _(no changeset)_ ci(shadcn): close the three declared alarm-channel gaps (#3586) (#4174) (objectui `e63853173`)
293
+ - _(no changeset)_ docs(links): scan the app READMEs and the rest of the repo root (#4148) (#4173) (objectui `da8109300`)
294
+ - _(no changeset)_ chore(site): ignore the AGENTS.md/CLAUDE.md that `next dev` mints, and turn the minting off (#4172) (objectui `0ead48368`)
295
+ - _(no changeset)_ docs(ci): stop the Merge Queue section keeping its own copy of the subscriber list (#4154) (#4171) (objectui `6eb40b8d7`)
296
+ - _(no changeset)_ docs: repair QUICK_REFERENCE's dead commands and layout claims, and pin them (#4149) (#4159) (objectui `521a37bd0`)
297
+ - _(no changeset)_ docs(ci): drop the fourth hand-copy of the object-ui ratchet list, and gate the page (#3782) (#4153) (objectui `492223d9a`)
298
+ - _(no changeset)_ docs: repair and pin QUICK_REFERENCE's Current Release block, drop the console README's hand-written versions (#4143) (#4150) (objectui `43b2e4565`)
299
+ - _(no changeset)_ docs: drop the hardcoded package versions from the utilities pages and correct the data-objectstack README install line (#4125, #4130) (#4144) (objectui `d86d372ad`)
300
+ - _(no changeset)_ docs(console-starter): correct the 'Without a backend' root-route paragraph (#4102) (#4142) (objectui `148ade326`)
301
+
302
+ <!-- adr-0087: not-required (already-registered action-global-nav-location-removed) The one breaking entry in this range is objectui#4169, which drops the Studio designer surfaces for the `global_nav` action location. The spec-side retirement of that enum value landed in this repo with objectstack#7100 / #6888 and is already on the ledger as the conversion `action-global-nav-location-removed` (packages/spec/src/conversions/registry.ts) plus its protocol-17 semantic entry; this pin bump ships the console catching up to that decision and changes no spec surface of its own, so it registers nothing new. -->
303
+
304
+ objectui range: `92c0b1f403f7...6314e87f2d49`
305
+
306
+ - 98eec7e: Console (objectui) refreshed to `665661ab0932`. Frontend changes in this range:
307
+
308
+ Derived from the changesets objectui declared over the range — 72 releasing of 78 changesets added across 82 non-merge commits; omitted: 6 release-nothing changesets, 6 commits carrying no changeset (they ship no package code).
309
+
310
+ - **minor** — The editable dashboard grid renders dataset-bound widgets — and says so visibly when it cannot (objectui `b8bda9af8`)
311
+ - **minor** — One legacy detector, two dashboard surfaces — the editable grid stops rendering a silent blank chart (objectui `8640cec19`)
312
+ - **minor** — One `SchemaNode`, and one label vocabulary — the union wins, and labels resolve where the locale lives (objectui `c1d939f7f`)
313
+ - **minor** — `BaseSchema.ariaLabel` declares the keyed i18n vocabulary the renderer actually resolves, `.disabled` accepts the predicate string it actually evaluates, and the keyed shape final… (objectui `f65025339`)
314
+ - **minor** — Console chrome reaches the bundle — the list switcher, the aggregate footer, the dialog a11y fallbacks and the whole Settings namespace screen stop being English on non-English co… (objectui `ae10a01b9`)
315
+ - **minor** — fix(core): bare-string filter options — docs/examples stop teaching it, the runtime lift warns (objectui#4356) (objectui `f279debf5`)
316
+ - **minor** — fix(fields): `formatPercent` renders percentage points directly — ties round half-up and extremes keep every digit (objectui `52d878a3b`)
317
+ - **minor** — `BaseSchema.visible` accepts the predicate string the renderer evaluates (objectui `3d9769a31`)
318
+ - **minor** — One home for the number-display policy — and a percent stops meaning two different things between a list cell and a dashboard measure (objectui `92250d648`)
319
+ - **minor** — `ViewNavigationConfig` IS the spec's navigation config — the second spelling stops requiring `mode` (objectui#4588) (objectui `ab04728b0`)
320
+ - **minor** — `NavigationConfig.mode` is optional — the type now says what the hook does (objectui `a84385b47`)
321
+ - **minor** — `exportOptions` is the spec's object form: `streaming` is declared, `'pdf'` is retired, and the alignment comment is finally true (objectui `1f9b90547`)
322
+ - **minor** — `SchemaRenderer` states its real contract — a typed, required `schema` and a deliberate forwarding surface (objectui `3f5f87cc7`)
323
+ - **minor** — Dashboard dataset measures follow the display locale (objectui#4566). (objectui `eb7f586b6`)
324
+ - **minor** — The `DataSource` contract carries `deleteView`'s per-home outcomes (#4564) (objectui `bec3e14cb`)
325
+ - **minor** — `formatPercent` groups its output and follows the display locale — the last tooltip/cell channel (objectui#4553). (objectui `36310dc88`)
326
+ - **minor** — `deleteView` removes every home the view has — deleting a draft-only saved view no longer silently no-ops (objectui `537a0d19c`)
327
+ - **minor** — Kanban: a drop that makes fields required now collects them instead of dead-ending (objectui `fa2125400`)
328
+ - **minor** — `DashboardRenderer` and `ListView` serve the props they declare — the index signature stops erasing them (objectui `7084f7dfc`)
329
+ - **minor** — `MetadataClient.get()` returns the item body its docblock always promised — the field half of the permission matrix is alive again (objectui `479cc7b46`)
330
+ - **minor** — The date formatter's last three en-US channels now follow the display locale (objectui#4272). (objectui `ebb4e0ee3`)
331
+ - **minor** — Publish `normalizeChartSchema` from the package entry. (objectui `5fac01193`)
332
+ - **minor** — The timeline's gantt bucket labels and its row-label default speak the session language (objectui `0082db8fd`)
333
+ - **minor** — Inspectors can block Save — a formula that does not parse no longer saves and publishes as the live field definition (objectui `553099c15`)
334
+ - **minor** — fix(plugin-timeline): dates follow the active locale instead of a hardcoded en-US (objectui `01c918807`)
335
+ - **minor** — An app you are not allowed to open now says so, instead of reporting that it may still be publishing (objectui `932cbcd6b`)
336
+ - **minor** — `calendar-view` has no declared-but-inert inputs left: `allowCreate` works, `colorMapping` is retired (objectui#4454, objectui#4493) (objectui `515328f75`)
337
+ - **minor** — The data lane now honors `set-auth-token`, so impersonation takes effect at all (#4467). (objectui `5cc847c31`)
338
+ - **minor** — fix(plugin-grid): cross-page "select all N matching" replays the host's real query — or abstains — instead of fanning out unfiltered (objectui `7ffd61658`)
339
+ - **minor** — A null-keyed group renders as an explicit bucket instead of silently vanishing from a chart (objectui#4466) (objectui `3fc2971b5`)
340
+ - **minor** — fix(list): an `OBJECT_API_DISABLED` list request renders an honest cannot-work state instead of the empty state (objectui `2e3b0c0ef`)
341
+ - **minor** — fix(detail): lookup field values link to the referenced record (objectui `b953a9702`)
342
+ - **minor** — `chatbot` and `chatbot-enhanced` now pass only whitelisted DOM props to their host element (objectui#4431) (objectui `dde7283e4`)
343
+ - **patch** — fix(components,plugin-dashboard): a static-data `table` widget renders instead of crashing (objectui `a3ae40407`)
344
+ - **patch** — Doc comments no longer cite `@objectstack/spec` symbols the pinned spec has retired (objectui `92876f097`)
345
+ - **patch** — `SpecResponsiveConfig` is now the spec's responsive config rather than a hand copy that said it was (objectui `c9115444b`)
346
+ - **patch** — SpecBridge lifts a legacy bare `exportOptions` array to the spec's object form, so a spec-authored view's declared export formats reach the grid (objectui#4585). (objectui `f148a6499`)
347
+ - **patch** — Console: restore `crypto.randomUUID` on insecure origins so list views stop crashing on LAN IPs (objectui `25b983366`)
348
+ - **patch** — Report and dataset-preview measures follow the display locale (objectui#4575) (objectui `cb315f2a3`)
349
+ - **patch** — Settings save: render the fail-closed crypto refusal as its own state instead of a generic save failure (objectui `36a4124d5`)
350
+ - **patch** — The Studio Data pillar's grid no longer issues a duplicate `find()` on every render (#4567). (objectui `98eb4fc8e`)
351
+ - **patch** — the connector node's Input section derives typed fields from the action descriptor's `inputSchema` (objectui `082ca7bf3`)
352
+ - **patch** — fix(app-shell): every CelPredicateField binds its label, so the RLS row-filter editors have an accessible name (objectui `609820db3`)
353
+ - **patch** — Gantt tooltip numbers and currency follow the display locale (objectui#4553). (objectui `a90888230`)
354
+ - **patch** — The default-inspector family and its panel hosts gate Save on CEL errors — a hook guard, an action predicate or a validation rule that does not parse no longer saves (objectui `298769f46`)
355
+ - **patch** — ObjectGrid's record-detail date fallback follows the display locale (objectui#4541). (objectui `4270c11f3`)
356
+ - **patch** — Gantt tooltip currency re-formats when the tenant currency resolves (objectui#4542). (objectui `db4ad6bb5`)
357
+ - **patch** — All CEL-hosting inspectors block Save on parse faults — a page block or formatting rule whose condition does not parse no longer saves (objectui `dd3adbdc1`)
358
+ - **patch** — `@object-ui/fields` and `@object-ui/plugin-editor` stop publishing their test declarations (objectui `8f60d732e`)
359
+ - **patch** — A row-level-security policy authored under a package is now saved — Studio's package door carries every facet the permission editor can author (objectui `aa45fd771`)
360
+ - **patch** — fix(plugin-grid): the list link column renders a real anchor when the host publishes record URLs (objectui `f56541826`)
361
+ - **patch** — The permission matrix models the server's artifact tier — no Save that 403s on a code-declared set (objectui `878140be9`)
362
+ - **patch** — fix(app-shell): the console record header honors `userActions` predicates (objectui `af52932c6`)
363
+ - **patch** — fix(plugin-grid): the cross-page "Select all N matching" banner works under external pagination (objectui `77d6f2830`)
364
+ - **patch** — The permission matrix honors `allowRuntimeCreate` — and its read-only badge names the gate that actually tripped (objectui `172c73e6e`)
365
+ - **patch** — fix(plugin-detail): the record detail header honors `userActions` predicates (objectui `b3889504e`)
366
+ - **patch** — fix(i18n): every date branch threads the active locale, so a `zh` session no longer renders half its dates in English (objectui `06915b025`)
367
+ - **patch** — The multi-dimension pivot branch buckets a null first-dimension value instead of dropping its bar (objectui#4497) (objectui `aca27fac6`)
368
+ - **patch** — Members & invitations tabs gate their affordances by org role instead of letting the server's 403 be the UI (#4475) (objectui `6d641c9df`)
369
+ - **patch** — The console shows a standing impersonation banner, with an exit that fails loudly (#4467). (objectui `5cc847c31`)
370
+ - **patch** — fix(plugin-list): ListView hands the child grid the query behind the window it passes down (objectui `7ffd61658`)
371
+ - **patch** — A dashboard chart's null-value bucket now reads the app's language instead of the English `(None)` (objectui `54d34d2a1`)
372
+ - **patch** — Dashboard global filters sourced from `optionsFrom` now commit the RAW value instead of the display label. (objectui `844ed3aea`)
373
+ - **patch** — `object-calendar` / `view:calendar`: the renderer now consumes or declares every prop it forwards, instead of spreading the authored node into `ObjectCalendar` (objectui `3e579d692`)
374
+ - **patch** — Organization & invitation console: translate the English holdouts a zh session was left reading (#4474) (objectui `58bebf638`)
375
+ - **patch** — `calendar-view` consumes or declares every prop it forwards — an authored `onEventClick` can no longer crash a click (objectui `c5756ff40`)
376
+ - **patch** — `DashboardRenderer`'s widget grid now passes only whitelisted DOM props to its container (objectui#4432) (objectui `0bf3f44a4`)
377
+ - **patch** — fix(print): `window.print()` produces a usable page, and the Print buttons say what they do (objectui `31ab1ac9d`)
378
+ - **patch** — authored ISO `currentDate` reaches the calendar as a `Date`; unparseable input falls back to the default instead of crashing (objectui `395e154a6`)
379
+ - **patch** — console: an inaccessible landing app bounces to `/home` instead of stranding the user on a chrome-less page (objectui `bc77f7d3d`)
380
+ - **patch** — "Set as Default" and drag-reorder work again on saved views — the adapter's `updateView` was being called unbound (objectui#4463). (objectui `338e2c421`)
381
+ - **patch** — The copied invitation link is one the recipient can actually open — both copy sites resolve through the console mount instead of rebuilding it from `BASE_URL` (objectui `a610bf2ff`)
382
+
383
+ **In this console build, declared nowhere** — objectui merged 6 commits in this range with no `.changeset/*.md`. The code is inside the pin above and ships here, but nothing upstream declared them, so they appear in no objectui CHANGELOG and in no entry above. Listed by subject rather than counted, because a count cannot tell a dependency bump from a form-behaviour change (objectstack#6174); the upstream gate that would prevent this is objectui#3387.
384
+
385
+ - _(no changeset)_ fix(examples): catalog entries author the keys their renderers read (#4624) (#4630) (objectui `665661ab0`)
386
+ - _(no changeset)_ fix(site): the catalog gallery registers every plugin its entries need (#4616) (#4628) (objectui `69eb6b22b`)
387
+ - _(no changeset)_ fix(examples,docs): the dashboard gallery renders working charts again — filtered-\* entries leave the retired shape (#4600) (#4615) (objectui `e028dfcd8`)
388
+ - _(no changeset)_ fix(site): SchemaNode crosses to SchemaRenderer through the bridge — the docs site builds again (#4617) (#4621) (objectui `3dc9a8233`)
389
+ - _(no changeset)_ docs(plugin-list): the sort remedy names a stored denormalised field, not a formula (#4335) (#4560) (objectui `794dd1c4b`)
390
+ - _(no changeset)_ chore(types): bring e2e/ under a tsconfig; fix what 30 never-compiled specs accumulated (#4471) (#4478) (objectui `5ad7f7730`)
391
+
392
+ objectui range: `6d77acfe3125...665661ab0932`
393
+
394
+ - a0151e9: Console (objectui) refreshed to `6d77acfe3125`. Frontend changes in this range:
395
+
396
+ Derived from the changesets objectui declared over the range — 99 releasing of 115 changesets added across 123 non-merge commits; omitted: 16 release-nothing changesets, 11 commits carrying no changeset (they ship no package code).
397
+
398
+ - **minor** — **BREAKING** — `rowHeightToDensityMode` answers only for the five spec row heights — the coerce-to-`comfortable` fallback is gone (objectui `fe52a0406`)
399
+ - **minor** — **BREAKING** — `bridgeListView` maps the five row heights the spec admits, and only those — the four dead spellings are gone (objectui `d7f3e308b`)
400
+ - **minor** — **BREAKING** — The action renderers publish the modern `UIActionSchema`, and every `forwardRef` renderer's props parameter is annotated so its declared types survive (objectui `dc2aa3e77`)
401
+ - **minor** — `MetricWidgetProps` / `MetricCardProps` declare the DOM pass-through their spread has always accepted (objectui `f24427334`)
402
+ - **minor** — `useObjectChat` declares the message shape it actually hands back (objectui `eec2e4fd1`)
403
+ - **minor** — grid row menu — the built-in Edit/Delete predicate declarations are derived from the spec-owned authoring type, not hand-restated (objectui `24bb2de4f`)
404
+ - **minor** — **BREAKING** — Retire two post-retirement dead surfaces (#4364, #4368). Both were measured at this branch point rather than taken from their cards, and one card's premise only half held. (objectui `2a40f699d`)
405
+ - **minor** — **BREAKING** — Retire `ActionEngine`'s event-mapping API (objectui#3368). `ActionEngine.addMapping()`, `ActionEngine.dispatch()`, the private `mappings` registry behind them, and the exported `A… (objectui `2459a3e70`)
406
+ - **minor** — i18n: retire the reader-less `common.search` key from all ten locale packs (objectui `ac853ce92`)
407
+ - **minor** — **BREAKING** — `@object-ui/plugin-chatbot`'s `ChatMessage` is now one type instead of two (objectui `3256b141f`)
408
+ - **minor** — **BREAKING** — Retire four zero-consumer declared surfaces (dead-surface sweep batch 3, #4328). Each was measured as declared-but-never-read at the branch point, and each is removed rather than… (objectui `d9d346307`)
409
+ - **minor** — fix(app-shell): a transient 404 no longer retires the shared inbox feed for the page's lifetime (objectui `ca269fecd`)
410
+ - **minor** — console: seed the UI language from the tenant's server-side locale (objectui `78fa33141`)
411
+ - **minor** — ObjectGrid's host-driven pagination mode is a declared interface instead of twelve `(rest as any)` reads (objectui `51ac39f73`)
412
+ - **minor** — `resolveHostAppSegment` is published from `@object-ui/app-shell`'s package root, and the console's local copy of it is deleted (objectui `e4d1c085e`)
413
+ - **minor** — An unloadable app list no longer lands you on `/home` as though you had no default app — and the Applications page's Set-as-default / Disable / Delete now actually write (objectui `3b7d1cc6d`)
414
+ - **minor** — **BREAKING** — Close `ActionDef` — delete the `[key: string]: any` index signature and converge `visible` / `disabled` on the spec's unified shape. (objectui `ee66e2ebf`)
415
+ - **minor** — Internal `/forms/:name` renders inside the console shell, and an internal submit lands on the record it just created (objectui `90e792e11`)
416
+ - **minor** — The console's language menu now asks the app which locales it actually ships, instead of always offering the same ten. (objectui `66fb4fae2`)
417
+ - **minor** — **BREAKING** — data-objectstack: retire the phantom `CloudOperations` surface — the class, its three `Cloud*` types, and the module that claimed to integrate a cloud namespace no client has ever… (objectui `2776b110b`)
418
+ - **minor** — `element:record_picker` publishes `sort`, `limit` and `emptyText` as authoring inputs (objectui#4167). (objectui `bb68488ff`)
419
+ - **minor** — **BREAKING** — Stop declaring 14 symbols under names `@objectstack/spec` owns at `17.0.0-rc.6` (objectui#4167, objectstack#4115). (objectui `bb68488ff`)
420
+ - **patch** — fix(react): the spec bridge abstains on a non-string `rowHeight` instead of coercing it to a density, matching core (objectui `47f551b06`)
421
+ - **patch** — `element:button`'s action forward is excess-property checked again — a misspelled key on that payload is now a compile error, not silence (objectui `b4d3c2204`)
422
+ - **patch** — standalone ObjectGrid resolves off-spec `rowHeight` to compact, matching ListView and the spec bridge, instead of silently styling it as medium (objectui `5e514c424`)
423
+ - **patch** — The spec bridge abstains on prototype-member `rowHeight` spellings instead of leaking a function into `density`. (objectui `8f85f8bed`)
424
+ - **patch** — fix(plugin-calendar): authoring `events` on a `calendar-view` node no longer takes the calendar down (objectui `49b9de6a6`)
425
+ - **patch** — Every plain `<button>` now declares its `type`. HTML defaults an untyped button to `type="submit"`, so any of these buttons would submit the form it was composed into instead of r… (objectui `d0c3b26ca`)
426
+ - **patch** — `AiChatPage` narrows the chat hook's messages through the exported `toRuntimeMessages` adapter instead of five casts (objectui `d8d0d665d`)
427
+ - **patch** — KPI cards no longer write their own schema onto the DOM — `MetricWidget` and `MetricCard` keep `SchemaRenderer`'s schema-shaped props out of the `...props` spread (objectui#4357). (objectui `306c10136`)
428
+ - **patch** — fields: the currency adornment has one symbol channel (objectui `3a9021e26`)
429
+ - **patch** — `@object-ui/components` compiles under `noImplicitAny` — the workspace's last strict-relaxing package (objectui `4dadf0d3d`)
430
+ - **patch** — data-table row menu — the built-in Edit/Delete predicate parameters are derived from the authoring type, not hand-restated (objectui `4b70d287c`)
431
+ - **patch** — Replace the three `messages as any` casts at the `@object-ui/types` ↔ `@object-ui/plugin-chatbot` `ChatMessage` boundary with one explicit typed adapter (`toRuntimeMessages` / `au… (objectui `37bbc42d1`)
432
+ - **patch** — Currency amounts now follow each currency's own ISO 4217 fraction-digit convention instead of a hardcoded 2 (objectui#4361). (objectui `0f2134831`)
433
+ - **patch** — Analytics: `ObjectChart` consumes the shared label-net helpers instead of a third copy (objectui `0b49d6032`)
434
+ - **patch** — Inline-edit toggle reads "Edit fields" without an I18nProvider, matching every locale pack (objectui `e076fd50f`)
435
+ - **patch** — `@object-ui/plugin-detail` now declares `react-router-dom` as a peer dependency (`^6.0.0 || ^7.0.0`), the range its three siblings already use. (objectui `456aac831`)
436
+ - **patch** — refactor(app-shell): collapse the metadata-admin designer table's byte-identical key pairs (objectui `f762f5bdf`)
437
+ - **patch** — Analytics: the dimension label net's fetch-and-memo glue is written once, not once per surface (objectui `ee26e65e7`)
438
+ - **patch** — Six i18n keys no longer render as raw key strings on hosts with no `I18nProvider` (objectui#4396) (objectui `dad805d8f`)
439
+ - **patch** — Publishing a view from the console no longer serves a five-minute-stale override map — every writer now routes through one invalidation seam (objectui `d2f6e6b1b`)
440
+ - **patch** — `ActionParamDialog`'s `select` branch no longer renders a hardcoded English `Select...` placeholder. The fallback used when an action param declares no `placeholder` of its own no… (objectui `5bf09fdba`)
441
+ - **patch** — i18n: the two search placeholders become pack values, and four values the packs served in English get translated (objectui `bb58d1d61`)
442
+ - **patch** — Analytics: a LOCAL select dimension on a table / pivot widget — and on a dataset-bound report — now renders its option label through the locale bundle (objectui `326a70f32`)
443
+ - **patch** — A gantt task titled `A$&B` no longer prints `{{title}}` back into its own delete dialog — the two hand-rolled provider-less fallback interpolators are literal, like i18next (objectui `0ca6096ff`)
444
+ - **patch** — fix(app-shell): the metadata-admin designer's own i18n table uses the typographic ellipsis (objectui `b31827358`)
445
+ - **patch** — i18n copy: one ellipsis glyph across the ten packs, `usted` in the es draft-preview empty state, and a pt sentence that stops contracting `de` onto its own hole (objectui `3e19fe78a`)
446
+ - **patch** — i18n: `createSafeTranslation`'s provider-less fallback now honours a call site's inline `defaultValue` (objectui `d46f9b8c4`)
447
+ - **patch** — Every view write path now invalidates the override map — a created, renamed or deleted view is no longer shadowed by a five-minute-stale batch read (objectui `85a3082e6`)
448
+ - **patch** — `detail.showEmptyRelated` renders Russian and Arabic again — the "+N empty" button no longer falls through to English at the counts it takes most often (objectui `2fea4d2fa`)
449
+ - **patch** — Retire the dormant bespoke object-detail page factory and its seven widgets (objectui `275d7df13`)
450
+ - **patch** — fix(fields): `formatCurrency` keeps both cents digits on a fractional amount (objectui `d2e2caf40`)
451
+ - **patch** — `pickLocalized` reads own properties only, and takes only string values, on every limb (objectui `405e80875`)
452
+ - **patch** — fix(dashboard,i18n): KPI cards and dashboard filters resolve authored labels instead of dropping them (#4032) (objectui `7e4f0e530`)
453
+ - **patch** — Home's action centre badges everything that is waiting, not the five rows it has room for (objectui `de627792e`)
454
+ - **patch** — The Applications page's search box no longer takes the page out on the first keystroke when an app carries a non-string label (objectui `3b4d78ea0`)
455
+ - **patch** — The console's Applications page is localized — its own chrome only, never the server's words (objectui#4307). (objectui `734d186a0`)
456
+ - **patch** — Studio's read-only packages stop advertising writability they do not have — the `access` header badge and the `Data → Form` layout caption now report the gate that actually govern… (objectui `f046f885a`)
457
+ - **patch** — List sort: the relational hint stops recommending a formula field, the one type the server refuses to sort by (objectui `7f1cb3323`)
458
+ - **patch** — Numbers render in the user's locale, and a `Field.number` year is no longer `2,026` (objectui `45e1949b4`)
459
+ - **patch** — `record:related_list` and the detail synthesizer now declare two shapes they already accepted at runtime. (objectui `63fe8fdda`)
460
+ - **patch** — Home's action centre stops counting messages the user has already read, and the inbox is read once per page instead of twice (#4316, #4225) (objectui `bed18a5c2`)
461
+ - **patch** — `object-map` reads its configuration from the declared `map` input only — `filter` is the query filter, and a map authored with both stopped rendering markers (objectui `b388d0eb0`)
462
+ - **patch** — Analytics surfaces now run resolved select-option labels through the locale bundle — the chart legend and the related list on one page stop disagreeing (objectui `5900ac56f`)
463
+ - **patch** — Home's action centre no longer says "You're all caught up" to a user whose inbox it failed to read (#4235) (objectui `771466aa5`)
464
+ - **patch** — Action confirm dialogs and success toasts now honour the bundle's translated `confirmText` / `successMessage`, not just `label` (objectui#4265). (objectui `ceccdcfa3`)
465
+ - **patch** — A collapsed sidebar now survives a reload — `SidebarProvider` reads the `sidebar_state` cookie it has always written (objectui `f5e114348`)
466
+ - **patch** — Form actions no longer carry a record id across an object boundary (#4292). (objectui `9461dd395`)
467
+ - **patch** — API Console renders the Storage group again — its catalog key now names the canonical `file-storage` slot instead of the route (objectui `a00d23c0d`)
468
+ - **patch** — List sort: the picker stops borrowing the filter whitelist, and a header click is no longer a one-way door out of the view's declared sort (objectui `33c32bf33`)
469
+ - **patch** — Dashboard `combo` widgets draw as combos on the dataset path — the dataset owns the data, the author owns the presentation (objectui `3c6e84cca`)
470
+ - **patch** — A `type: 'form'` action fired from a record now EDITS that record instead of creating a duplicate (objectui `6d8231cc4`)
471
+ - **patch** — fix(plugin-detail): synthesize page components in the spec's `properties` carrier so Studio page-create can persist (objectui `35997cea5`)
472
+ - **patch** — `DeclaredActionsBar` reads `visible` / `disabled` off the typed action def instead of through `(action as any)`. (objectui `ee66e2ebf`)
473
+ - **patch** — Pivot buckets encode an empty dimension value as JSON `null`, so it no longer collides with a row whose value is literally the placeholder character (objectui `49ae9f42d`)
474
+ - **patch** — fix(dashboard): resolve a dotted dimension's labels on table and pivot dataset widgets (objectui `436681e72`)
475
+ - **patch** — `DeclaredActionsBar` binds its row through the shared `usePredicateRecordContext` (objectui `4cb0562b5`)
476
+ - **patch** — `list-view` now reads its `dataSource` binding through the shared `ElementDataSourceGate` instead of a private copy of the precedence table (objectui `37cd8e4ff`)
477
+ - **patch** — metadata-admin: diagnose a path on the right-hand side of `==` / `!=` in a visibility predicate (objectui `b95412031`)
478
+ - **patch** — A dataset dimension on a dotted relationship path now renders its option labels instead of the raw stored enum (objectui `613b16707`)
479
+ - **patch** — Retire `params.newTab` on a url action — `openIn: 'new-tab'` is the sanctioned spelling (objectui `d6aa1726a`)
480
+ - **patch** — The second metadata client class surfaces the runtime authoring gate's advisories instead of discarding them (objectui `605b74720`)
481
+ - **patch** — fix(console): a Setup-only environment lands on `/home`, not Setup's all-zero System Overview (objectui `234238ed7`)
482
+ - **patch** — `richtext` fields are placed like the long-form fields they are — four layout sets stopped spelling the type three ways the spec rejects (objectui `c32a8a1bf`)
483
+ - **patch** — A dependency-gated option list no longer deletes the field's stored value on mount (objectui `bc64bfe0f`)
484
+ - **patch** — Inline edit no longer offers a record picker for a spec-spelled `autonumber` field that carries a `reference_to` (objectui `6d01319dd`)
485
+ - **patch** — metadata-admin: retire the standalone `validation` resource, and move `ValidationPreview` onto the embedded path the framework actually evaluates (objectui#4132) (objectui `3032107dd`)
486
+ - **patch** — `record:details` stops publishing a `layout` key the spec removed and the renderer never honoured (objectui `7d04b0e84`)
487
+ - **patch** — The Unpublished-app banner now reads the ADR-0045 publish gate `_unpublished`, not the navigation flag `hidden` — so a published app that is merely kept out of the launcher no lon… (objectui `690ae0f04`)
488
+ - **patch** — fix(detail): inline edit no longer destroys array values or flattens types on the record page (objectui `e7663f2ff`)
489
+ - **patch** — A dashboard date filter's default has one spelling again — the bare preset name — and the `{ preset }` object becomes a documented legacy alias with a retirement window (objectui `abb0f81d3`)
490
+ - **patch** — The bell popover's and Home's "see all" drills open inside an app the user can actually open, not the setup app (objectui `f812de6bd`)
491
+ - **patch** — A `password` or `secret` field on the record detail page is no longer inline-editable: it renders no pencil / double-click affordance and produces no editor, on both the details b… (objectui `5e2e9fa8c`)
492
+ - **patch** — `DatasourcePreview` no longer renders three key groups `DatasourceSchema` rejects (objectui#4131). `retryPolicy`, `healthCheck` and `capabilities` were removed from the datasource… (objectui `ab37c5f59`)
493
+ - **patch** — Set-default on a saved view fires its write again — a stored `id` can no longer rename the tab out from under the overlay read (objectui `79a40adae`)
494
+ - **patch** — The bell's Approvals and Activity tabs fill in on Home, Organizations and the AI screen — from the same fetch the cards below them already use (objectui `8b971f826`)
495
+ - **patch** — Studio surfaces the runtime authoring gate's advisory findings instead of discarding them client-side (objectui `c0f9a4bd5`)
496
+ - **patch** — An inline per-locale label now renders its locale's string at the thirteen read sites the `@objectstack/spec` 17.0.0-rc.6 bump exposed (objectui `bb68488ff`)
497
+
498
+ ⚠️ 10 of these carry a breaking change: 10 by the author's own breaking annotation in the changeset body — objectui declares no `major` inside a launch window (`scripts/check-changeset-no-major.mjs`). Each is marked **BREAKING** in the list above — read them before compiling the release record.
499
+
500
+ **In this console build, declared nowhere** — objectui merged 11 commits in this range with no `.changeset/*.md`. The code is inside the pin above and ships here, but nothing upstream declared them, so they appear in no objectui CHANGELOG and in no entry above. Listed by subject rather than counted, because a count cannot tell a dependency bump from a form-behaviour change (objectstack#6174); the upstream gate that would prevent this is objectui#3387.
501
+
502
+ - _(no changeset)_ chore(lint): bring e2e/ under the lint gate; fix the 3 errors it exposes (#4456) (#4470) (objectui `6d77acfe3`)
503
+ - _(no changeset)_ fix(scripts): check-type-check-coverage sees a chain entry whose project is missing (#4347) (#4449) (objectui `8b33a42af`)
504
+ - _(no changeset)_ docs(agents): state the git stash ban in AGENTS.md §9 as a rule of its own (#4448) (objectui `c7360f6f8`)
505
+ - _(no changeset)_ chore(config): retire the dead tailwind.config.js eslint ignore; reword the postcss blind-spot docblock (#4350) (#4444) (objectui `6a0f4a598`)
506
+ - _(no changeset)_ docs(tests): qualify the last two present-tense paths-ignore twins (#4384) (#4395) (objectui `2329d9032`)
507
+ - _(no changeset)_ docs: resolve the four suspected-dead repo paths in content/docs prose (#3867) (#4393) (objectui `2f58c8ba2`)
508
+ - _(no changeset)_ docs(ci): close the falsified paths-ignore sweep — three named sites plus five found (#4381) (#4382) (objectui `079f15571`)
509
+ - _(no changeset)_ docs(ci): correct the four remaining copies of the falsified paths-ignore premise (#4369) (#4380) (objectui `63c75d0fd`)
510
+ - _(no changeset)_ docs: correct the paths-ignore claim in three agent-facing texts, and the metadataTypeRegistry verdict (#3857, #3859) (#4371) (objectui `1bbd856e0`)
511
+ - _(no changeset)_ chore(config): delete three Tailwind config files nothing reads (#4065, #4066) (#4349) (objectui `78b6c4a88`)
512
+ - _(no changeset)_ docs(agents): require commit-then-revert for reverse verification (#4301) (#4339) (objectui `c880799bc`)
513
+
514
+ <!-- adr-0087: not-required (no-migration-prescription) All ten declared-breaking entries in this range are TypeScript declaration surfaces of objectui's OWN npm packages, judged one by one against their upstream changesets rather than as a batch: `@object-ui/core` (`rowHeightToDensityMode`'s coerce-to-`comfortable` fallback; `ActionEngine.addMapping()` / `dispatch()` / the `ActionMapping` interface; `ActionDef`'s `[key: string]: any` index signature), `@object-ui/react` (`bridgeListView`'s four `rowHeight` spellings `RowHeightSchema` never admitted), `@object-ui/components` (six exported action declarations moving from the deprecated `ActionSchema` to `UIActionSchema`), `@object-ui/types` + `@object-ui/permissions` (`ObjectLevelPermission` and the batch-3 zero-consumer surfaces), `@object-ui/plugin-chatbot` (`ChatMessage` collapsing from two exported types to one, a widening), `@object-ui/data-objectstack` (the phantom `CloudOperations` class and its three `Cloud*` types), and the fourteen symbols renamed off names `@objectstack/spec` owns at `17.0.0-rc.6`. None of them is reachable through `@objectstack/console`, which publishes a frozen prebuilt SPA: its `files` list is `["dist", "README.md", "CHANGELOG.md"]` and its sole `exports` entry is `./package.json`, so it forwards no `@object-ui/*` module entry point and re-exports none of these types. No `packages/spec` schema, authorable metadata key or protocol surface changes in this range, so there is no stored-metadata rewrite for `objectstack migrate meta` to prescribe and therefore no ADR-0087 ledger entry to write or to name. Where a prescription does exist it runs the opposite way and is already this repo's own: `ActionDef`'s unified three-arm `visible` / `disabled` shape and the fourteen renamed symbols are objectui CATCHING UP to spec `17.0.0-rc.6`, whose spec-side halves landed in objectstack's own PRs and were disposed of there. This bump adds no ledger entry and claims none. -->
515
+
516
+ objectui range: `6314e87f2d49...6d77acfe3125`
517
+
518
+ - 072806a: Console (objectui) refreshed to `785b8a5d432c` — the 2026-08-02 objectui batch reaches v17 (#4665).
519
+
520
+ Until this pin moves, a merged objectui fix exists only on objectui's `main`: the
521
+ release pipeline clones objectui at `.objectui-sha`, so anything newer is simply not
522
+ in the artifact the platform ships, and its frontend changeset never reaches the
523
+ platform's release history (#3340). Four of the seven PRs merged that day changed
524
+ published packages, and one of them is **breaking for authoring** — so that
525
+ migration is written out here, in the layer the release notes are compiled from,
526
+ rather than left implicit in a SHA.
527
+
528
+ ## Breaking for authoring — an action param's picker target is `reference`, and only `reference` (objectui#3203)
529
+
530
+ `ActionParam` in `@object-ui/types` no longer declares the nine resolved-side picker
531
+ keys: `referenceTo`, `displayField`, `idField`, `descriptionField`, `titleFormat`,
532
+ `lookupColumns`, `lookupFilters`, `lookupPageSize`, `dependsOn`.
533
+
534
+ Migration:
535
+
536
+ - **Inline picker target** — rewrite to `reference`:
537
+ FROM `{ name: 'account_id', type: 'lookup', referenceTo: 'account' }`
538
+ TO `{ name: 'account_id', type: 'lookup', reference: 'account' }`
539
+ - **The other eight** — make the param **field-backed** and it inherits the whole
540
+ picker group from the object field: `{ field: 'account_id' }`.
541
+
542
+ **This removes a compile-time illusion, not a capability.** Those keys were never
543
+ storable: `@objectstack/spec`'s `ActionParamSchema` is `.strict()`, its authorable key
544
+ list carries `reference` and not `referenceTo`, and its alias table names
545
+ `referenceto → reference` by hand — so an authored `referenceTo` has always been a
546
+ hard parse rejection on the server. Only `tsc` waved it through, against objectui's
547
+ public type, which meant the mistake surfaced at publish time instead of at the
548
+ authoring keystroke. `ActionParam` is now derived from the spec schema
549
+ (`Omit< z.input< typeof ActionParamSchema >, 'type' >`), so the authoring type and
550
+ the parser can no longer disagree about a spelling, and `resolveActionParams()`
551
+ additionally names any resolved-only key it meets in a dev-mode warning with the
552
+ prescription above — covering params authored in plain JS or JSON, which `tsc` never
553
+ sees.
554
+
555
+ ## Also author-visible in this batch
556
+
557
+ - **An unrecognised dashboard date-filter value is skipped and named, not compared**
558
+ (objectui#3196, `@object-ui/core` minor — the other half of #4475). A `date` /
559
+ `dateRange` value that is neither a known preset nor a parseable date used to fall
560
+ through to "bare string means equality on that day", so a typo
561
+ (`defaultValue: 'last_7_dayz'`) reached the backend as `WHERE created_at = $1` and
562
+ answered `200 OK` with zero rows — indistinguishable from "this range has no data".
563
+ Such a filter is now dropped with a `console.warn` naming the filter, the offending
564
+ value and the accepted spellings; the widget's numbers go from 0 to unfiltered.
565
+ - **`record:activity` fetches a feed instead of rendering a permanently empty one**
566
+ (objectui#3204, `@object-ui/plugin-detail`). The block's eleven declared inputs were
567
+ filters over a hard-coded `items={[]}`; the feed now resolves from `items` → a
568
+ mounted `DiscussionContext` → a self-fetch of `sys_activity` scoped to the bound
569
+ record, and the read-side inputs actually filter. `showSubscriptionToggle` is
570
+ labelled `NOT IMPLEMENTED` in its own input description rather than left looking
571
+ configurable.
572
+ - **A fetching activity feed says "loading", not "No activity recorded"**
573
+ (objectui#3210, `@object-ui/plugin-detail` patch). The declared `loading` prop was
574
+ destructured into `_loading` and never read, so the panel asserted the record had no
575
+ activity for the whole duration of every fetch.
576
+ - **`managedBy: 'system'` → `'system-data'` follow-through** (objectui#3214): the
577
+ Console now speaks the vocabulary this platform's retirement left standing.
578
+
579
+ Full frontend range below. `fix(ci)` / CI-only commits are omitted — they release
580
+ nothing and are not in the shipped bundle.
581
+
582
+ - fix(fields)!: FieldWidgetComponentProps stops claiming to have every key (#3221) (#3230)
583
+ - fix(app-shell): inspectors read and write the expression envelope (#3218) (#3228)
584
+ - fix(app-shell): flow simulator evaluates a `{ dialect, source }` edge guard (#3216) (#3217)
585
+ - feat(types,core,app-shell)!: follow the `managedBy: 'system'` → `'system-data'` retirement (objectstack#3355) (#3214)
586
+ - fix(app-shell): flow branch editor stamps an id on the edges it creates (#3202) (#3215)
587
+ - fix(plugin-detail): a fetching activity feed says "loading", not "No activity recorded" (#3205) (#3210)
588
+ - feat(plugin-detail): record:activity fetches a feed instead of rendering an empty one (#3165) (#3204)
589
+ - fix(types,app-shell)!: `reference` 是 action param 唯一可作者化的 picker 目标 (#3174) (#3203)
590
+ - fix(deps): #3184 可合并版 —— focus-scope 栈驱逐竞态补丁,解冲突 + 补丁存废说明 (#3200)
591
+ - fix(core): 未知的 date filter 值改为跳过并警告,不再降级成永不命中的等值 (#3151) (#3196)
592
+ - fix(types): retarget the objectstack#4171 inverted pins at their real trigger (#3177) (#3194)
593
+ - fix(components,grid): a grid's search box searches the list, not the page you can see (#3118) (#3192)
594
+ - feat(core): declare the 18 spec-owned action keys ActionDef absorbed silently (#3190)
595
+ - fix(app-shell): actually compile `spec-symbol-parity.test.ts`'s type assertions (#3181) (#3187)
596
+ - feat(app-shell): wire navigation action items to the console action runtime (framework#4509) (#3180)
597
+ - feat(deps)!: upgrade to @objectstack/spec 17.0.0-rc.1 and retire the wait timeout fields (#3101) (#3178)
598
+ - fix(studio,timeline,list): 表单设计器解析对象翻译;timeline 认它自己配置的日期字段 (#3134, #3129) (#3175)
599
+ - feat(flow-designer)!: the script node authors a function call, and nothing else (framework#4343) (#3170)
600
+ - fix(studio): stop offering the retired `action.shortcut` / `action.bulkEnabled` keys (#3154)
601
+ - fix(dashboard): date 型 globalFilter 的预设名默认值应提升为区间 (objectstack#4475) (#3150)
602
+ - fix(dashboard,report): honor the declared percent scale so a ratio of 1 renders as 100.0% (#3136) (#3140)
603
+ - fix(charts): name the slices — pie/donut legends lost their labels to a `type` dimension (#3135) (#3138)
604
+ - fix(approvals): record-header Reject fires after one dialog again (#3126) (#3128)
605
+ - fix(console): binding-reach 探针少报了自己 6 个块的覆盖面,而且是静默的 (#3149) (#3153)
606
+ - fix(flow-designer): the default path is the edge marker, not the branch (#3148)
607
+ - fix(plugin-list,plugin-form): 在注册表路径上把 dataSource 接到 list-view / embeddable-form (#3144) (#3147)
608
+ - fix(actions): one placement rule for `locations` — declare it or it renders nowhere (#3145)
609
+ - fix(app-shell): datasource preview 不再报告读副本数量 (objectstack#4468) (#3143)
610
+ - feat(grid): aggregate single-call mode for bulk actions — execution: 'aggregate' (#3141)
611
+ - fix(form): `required` is presence, not truthiness — `false` and `0` are values (#3137)
612
+ - fix(environment): localize the entitlement dialog + read cloud's nested error envelope (#3130)
613
+ - fix(i18n): resolve qualified view ids (#3132)
614
+
615
+ objectui range: `7d9734d5e321...785b8a5d432c`
616
+
617
+ - 302e972: Console (objectui) refreshed to `7d9734d5e321`. Frontend changes in this range:
618
+
619
+ - feat(core): say which column identity key won, out loud (#3104 PR3) (#3124)
620
+ - fix(detail): Attachments become a peer tab with a live count badge, and their copy is translated (objectstack#4358) (#3123)
621
+ - fix(console,app-shell): readable reassign hand-off + "System" label for svc:\* audit actors (objectstack#4365, objectstack#4366) (#3121)
622
+ - fix(fields): lookup multi-value hydration batches via $in and shows loading instead of the empty placeholder (#3108) (#3120)
623
+ - fix(list,grid,detail,tree,core): every column resolver reads one key (#3104 PR2) (#3122)
624
+ - fix(core,list): 列身份归一到 ingestion chokepoint — 一列一个身份 (#3104 PR1) (#3119)
625
+ - fix(detail): a related list has one sorting semantics instead of two (#3106) (#3113)
626
+ - feat(components,grid,list): a column-header sort orders the whole list, not the page you can see (#3106) (#3112)
627
+ - fix(data-objectstack): a string `$orderby` reaches the server as a sort, not a list of character indices (#3106) (#3109)
628
+ - fix(types,core): the `*Validation` five derive from spec 17, and the engine stops disagreeing with the server (#3103) (#3107)
629
+ - fix(app-shell): lookup-param helpText only renders when the param actually degraded to a raw-id input (#3094) (#3095)
630
+ - fix(form): numeric/boolean option values survive selection typed (#3090 PR3b) (#3100)
631
+ - fix(list,detail): sorting a lookup column stops ordering by an invisible key (#3096) (#3102)
632
+ - feat(flow-designer): the script node's form authors what the executor runs (framework#4278) (#3099)
633
+ - fix(form): declare the runtime field metadata slot, ban the spec FormField misimport (#3090 PR3a) (#3097)
634
+ - fix(console): LocalizationFetchProvider retries a transient /me/localization failure (#3098)
635
+ - fix(app-shell,i18n): drop the developer-voiced default form subtitle (#3093)
636
+ - fix(form): spec-vocabulary fields stop crashing the standalone form; every surface names the boundary (#3090) (#3092)
637
+ - fix(form): harden the spec↔runtime form-field chokepoint, derive SelectOption, complete FormFieldSchema (#3090) (#3091)
638
+ - fix(types,layout): navigation metadata stops losing the spec fields the renderer already honours (objectstack#4115) (#3088)
639
+
640
+ objectui range: `bebaebd39ace...7d9734d5e321`
641
+
642
+ - 7fa2aae: Console (objectui) refreshed to `8aad9fd50b16`. Frontend changes in this range:
643
+
644
+ Derived from the changesets objectui declared over the range — 61 releasing of 61 changesets added across 67 non-merge commits; omitted: 6 commits carrying no changeset (they ship no package code).
645
+
646
+ - **minor** — Build and publish `@object-ui/fields/style.css` — the subpath the package has always declared and never shipped (objectui `b19162d62`)
647
+ - **minor** — fix(timeline): the timeline binds to the date axis the view actually declares (#3129) (objectui `bd863fe49`)
648
+ - **minor** — Give composite and grouped field widgets a real accessible name: the form renderer now associates its label by IDREF for widgets that declare `labelling: 'group'`, instead of emit… (objectui `c3b01a71c`)
649
+ - **minor** — `PageComponentSchema.dataSource` now reaches every object-bound block, not just `list-view` — and `element:record_picker` stops discarding `view` (objectstack#6953). (objectui `5bfaabde0`)
650
+ - **minor** — **BREAKING** — fields: remove the docs-demo registration path (`registerFields` + `createFieldRenderer`), and host the docs field examples in a real form (objectui `65bb513dc`)
651
+ - **patch** — Action-face predicates written against the canonical `record.` root now evaluate (objectui `8aad9fd50`)
652
+ - **patch** — The console no longer reads `/meta/*` before it knows whether it has a session, and a failed request now says which request failed (objectui `41d602274`)
653
+ - **patch** — Run `sys_approval_request`'s server-declared decision actions on the business record page, and retire the hard-coded two-button approval path (objectui#3055). (objectui `99782f961`)
654
+ - **patch** — The inbox popover now spells out what the bell badge is made of (objectui `8c60819a6`)
655
+ - **patch** — `page:card` publishes `children` instead of the retired `body`, and `page:section` / `page:footer` / `page:sidebar` publish the `children` slot they render (objectui `0ef9dfd8b`)
656
+ - **patch** — Register `approvals:inbox` as a component ref, and stop sending Home's "pending approvals" card into the setup app (objectstack#7231). (objectui `28c38567b`)
657
+ - **patch** — Create forms now open with the object schema's declared `defaultValue`s (objectui `f0c9a9042`)
658
+ - **patch** — Fix `objectui init` scaffolding an app that renders neither components nor styles. (objectui `85fb95bf5`)
659
+ - **patch** — `objectui doctor` now diagnoses Tailwind 4 instead of Tailwind 3 (objectui `59df371f7`)
660
+ - **patch** — `objectui init` now versions the project it scaffolds against the CLI that wrote it, and stops writing a `tailwind.config.js` Tailwind 4 never reads. (objectui `0a09793f2`)
661
+ - **patch** — The Studio RLS editor no longer authors the retired `rowLevelSecurity[].priority` key (objectstack#7130) (objectui `5419f552a`)
662
+ - **patch** — Studio's widget config panel no longer authors the retired `actionUrl` widget key (objectui `c1e1e6b41`)
663
+ - **patch** — Resolve a `select` field declared `multiple: true` to the `field:multiselect` widget, so the object form's visible label actually names the chip picker it renders (objectui#3986). (objectui `11c1e71e8`)
664
+ - **patch** — Name the `InspectorComboField` trigger: the visible label now owns it, and an anonymous combo no longer compiles (objectui#3997). (objectui `1037e1a3f`)
665
+ - **patch** — `object-timeline` and `record:line_items` now apply the filter / sort / row cap they are given, so a named `dataSource.view` narrows them instead of contributing nothing (objectui `523be4820`)
666
+ - **patch** — `plugin-map` 加载时不再向控制台打印 `Registering object-map...` (objectui `9ad21b6c4`)
667
+ - **patch** — `navigation-renderer` 的 `items` 声明为 `required: true` —— 校验器不再放过必崩的节点 (objectui `f3b2874e1`)
668
+ - **patch** — Group-labelled field widgets now consume the host label's IDREF in their readonly and zero-option states, so the visible label names something there too (objectui `c97a45e8c`)
669
+ - **patch** — The `div` deprecation notice is now reported once per module load, not once per render (objectui#3965) (objectui `0fa5e4da9`)
670
+ - **patch** — Metadata-admin inspectors: the shared text / number / select field labels now name their control (objectui `dffeeefb7`)
671
+ - **patch** — Built-in `select` fields: the form's label, validation message and required state now reach the control (objectui `0cbdca888`)
672
+ - **patch** — `PageComponentSchema.dataSource` now reaches the remaining object-bound public blocks: `object-gantt` / `object-timeline` / `object-map` / `object-pivot` / `object-master-detail-f… (objectui `022002aba`)
673
+ - **patch** — Page block inspector: the input hints inside the properties panel follow the session's language (objectui `65d6c0783`)
674
+ - **patch** — `BulkActionDialog` required params: the control now announces the required state, and the visual `*` stays out of its accessible name (objectui `18c42c65f`)
675
+ - **patch** — `registerLayout()` 的 `inputs` 声明面与渲染器实现对齐 —— 校验器不再对正确写法报假诊断 (objectui `6bd6a4d76`)
676
+ - **patch** — A form-hosted `multiselect` field is now NAMED by its visible label. It was the residual of objectui#3961: that issue's probe audited six widgets and fixed them, and re-running th… (objectui `d8a0be424`)
677
+ - **patch** — fix(metadata-admin): page block inspector chrome follows the locale (objectui `708aaf8e4`)
678
+ - **patch** — `record:related_list` — the declared `filter` reaches the query, and the Add button answers to the same gate as its dialog (objectui `c4768a760`)
679
+ - **patch** — `ActionParamDialog` boolean params: the dialog now owns the control id, so the checkbox is named once instead of twice (objectui `cdc0e44c8`)
680
+ - **patch** — Blank predicates and non-predicate values are no longer gates, at the last three entries that still judged them (objectui#3955, objectui#3957, objectui#3960) (objectui `0109f5418`)
681
+ - **patch** — `page-header` 注册补 `isContainer: true` —— 校验器不再对文档承诺的 children 写法报 `not-a-container` (objectui `82f8dfffd`)
682
+ - **patch** — Page block inspector: the PROPERTIES panel's curated field labels now follow the session locale instead of always rendering English (objectui `62c644168`)
683
+ - **patch** — An empty predicate is no longer a declared gate anywhere (objectui#3850, objectui#3862) (objectui `ab3ad4f3f`)
684
+ - **patch** — fix(fields): `BooleanField` uses the control id its host hands down, so a boolean field's visible label is really associated with the switch (objectui `ea41a595a`)
685
+ - **patch** — `de` approvals inbox no longer shows two quote typographies on one screen (objectui `69becd2d1`)
686
+ - **patch** — `ChartContainer`'s min-size fallback survives a consumer-supplied `style` (objectstack#7026) (objectui `a7e39a8b2`)
687
+ - **patch** — `grid.import.transform` is now translated in ko / de / fr / es / pt / ru / ar instead of served as English (objectui `b14ab3afe`)
688
+ - **patch** — `UserFilters` preset tab buttons no longer submit an enclosing form; all six buttons declare `type="button"` (objectui `cb5e32d73`)
689
+ - **patch** — `@object-ui/layout` no longer tells bundlers it has no side effects while registering components at load time (objectui#3899) (objectui `876e3f74e`)
690
+ - **patch** — fix(core): stop re-wrapping an already-`${…}` predicate, so action-face `visible` / `disabled` finally honour it (objectui#3871) (objectui `1d723e30c`)
691
+ - **patch** — `grid.import` saved-mapping copy is now translated in ko / de / fr / es / pt / ru / ar instead of served as English (objectui `ac2139ccd`)
692
+ - **patch** — metadata-admin: an unresolvable visibility-predicate path now fails OPEN, loudly (objectstack#6936) (objectui `ebb579dbb`)
693
+ - **patch** — Dashboard metadata's `chartConfig` presentation keys now take effect for the first time (objectui `230ffd875`)
694
+ - **patch** — fix(actions): forward `bodyShape` end-to-end so a declared body wrap is honoured (objectui `c2fd1223a`)
695
+ - **patch** — Context selectors: picking an option the instant the dropdown fills no longer snaps back to the first one (objectui `2c632d94e`)
696
+ - **patch** — `datetime` action params are usable in the Console for the first time — the dialog now POSTs the zoned ISO instant the platform requires instead of a shape the validator rejects (objectui `d518a905a`)
697
+ - **patch** — `PageComponentSchema.dataSource` is now consumed instead of discarded — a `list-view` page component can reference a **saved view by name** for the first time, and writing the bin… (objectui `e06810eed`)
698
+ - **patch** — `address` widget: the ZIP box now reads and writes `postalCode`, the part name the platform stores (objectui `0186cdc26`)
699
+ - **patch** — `userFilters` tabs: the `allowAddTab` button now adds a tab instead of doing nothing (objectstack#5236) (objectui `cf5be4ec2`)
700
+ - **patch** — `percent` / `progress` cells now give the NUMBER shrink priority over the decorative bar (objectstack#5066) (objectui `f4b97c85a`)
701
+ - **patch** — German pack: the 20 values that closed the German opening quote with an ASCII straight quote now close it with `“` (objectui `5e524950d`)
702
+ - **patch** — fix(actions): forward `bodyExtra` end-to-end through the action chain (objectui `7e5bb5d4e`)
703
+ - **patch** — Make metadata-form visibility predicates work again in the Setup/Studio admin engine: `SchemaForm` now reads the canonical `visibleWhen` key, falling back to the deprecated `visib… (objectui `7a197e7c5`)
704
+ - **patch** — Honour all three `AppContextSelectorSchema.persist` values in app context selectors: `'query'` (the default) writes and reads the URL query parameter only, `'session'` writes and… (objectui `d86b41ced`)
705
+ - **patch** — The AI plan / confirm cards send the agent text in the CONVERSATION's language, not the console UI's (objectui#3896) (objectui `99ba5fbd7`)
706
+ - **patch** — `condition: false` now actually prevents the action from executing (objectui#3872) (objectui `67198776b`)
707
+
708
+ ⚠️ 1 of these carries a breaking change: 1 by the author's own breaking annotation in the changeset body — objectui declares no `major` inside a launch window (`scripts/check-changeset-no-major.mjs`). Each is marked **BREAKING** in the list above — read them before compiling the release record.
709
+
710
+ **In this console build, declared nowhere** — objectui merged 6 commits in this range with no `.changeset/*.md`. The code is inside the pin above and ships here, but nothing upstream declared them, so they appear in no objectui CHANGELOG and in no entry above. Listed by subject rather than counted, because a count cannot tell a dependency bump from a form-behaviour change (objectstack#6174); the upstream gate that would prevent this is objectui#3387.
711
+
712
+ - _(no changeset)_ docs(guide): teach the Tailwind 4 CSS-first setup on theming / troubleshooting / quick-start (#4060) (objectui `eda7fe984`)
713
+ - _(no changeset)_ fix(schema-catalog): grid 示例的列数键 cols → columns —— 3/4 列示例不再静默渲染成 2 列 (#4001) (#4008) (objectui `34a00bf29`)
714
+ - _(no changeset)_ fix(scripts): decide test type-check coverage from the resolved tsconfig program, not from text (#4004) (objectui `94d1d8294`)
715
+ - _(no changeset)_ fix(site): Schema Catalog 卡片外壳去 button 化,示例预览不再嵌套按钮 (#3903) (#3964) (objectui `53b7b88af`)
716
+ - _(no changeset)_ docs(layout): align app-shell Header Bar / Content Area numbers with AppShell.tsx (#3914) (#3945) (objectui `fd6dd2d61`)
717
+ - _(no changeset)_ fix(site): Playground 注册 layout 组件,并删掉两个非依赖的 transpilePackages 死条目 (#3942) (objectui `137a1121d`)
718
+
719
+ <!-- adr-0087: not-required (no-migration-prescription) The one declared-breaking entry in this range is objectui `65bb513dc`, which removes two TypeScript exports from the `@object-ui/fields` npm package — `registerFields()` and `createFieldRenderer()`, a docs-demo-only registration wrapper whose only caller was objectui's own documentation site. Nothing about it reaches an ObjectStack author: `@objectstack/console` publishes a frozen prebuilt SPA (`files: ["dist", …]`, and its sole `exports` entry is `./package.json`), so it forwards no `@object-ui/fields` module entry point and neither removed export is reachable through this package at all. No `packages/spec` schema, authorable metadata key or protocol surface changes in the range, so there is no metadata rewrite for `objectstack migrate meta` to prescribe and therefore no ADR-0087 ledger entry to write or to name. The retired-key items elsewhere in the list above (`rowLevelSecurity[].priority` via objectstack#7130, the `actionUrl` widget key, `page:card`'s `body` slot) run the other way: they are objectui CEASING to author keys that ObjectStack retired and registered in its own PRs, so they add no prescription here either. This bump adds no ledger entry and claims none. -->
720
+
721
+ objectui range: `09987b680d53...8aad9fd50b16`
722
+
723
+ - 24d22f4: Console (objectui) refreshed to `92c0b1f403f7`. Frontend changes in this range:
724
+
725
+ Derived from the changesets objectui declared over the range — 13 releasing of 16 changesets added across 29 non-merge commits; omitted: 3 release-nothing changesets, 13 commits carrying no changeset (they ship no package code).
726
+
727
+ - **minor** — `DatasetResultField` is now `@objectstack/spec`'s `AnalyticsResult.fields[]` element itself, not a hand-written restatement of it (objectui `e9011318f`)
728
+ - **minor** — fix(fields,plugin-form): stop the inline child grid from collapsing `datetime`/`time` columns onto the `date` control (objectui `1bd6faa61`)
729
+ - **patch** — `ObjectChart`'s category option-color / dimension-label probe now rides the host's authenticated fetch (`SchemaRendererContext.apiFetch`) instead of the bare global `fetch`. (objectui `bcd3e0219`)
730
+ - **patch** — Align 43 inline `defaultValue` strings with the `en` pack, and make the call-site gate enforce it (objectui#3810) (objectui `297534b78`)
731
+ - **patch** — Fix `objectui init`'s scaffold failing its own `npm run build`, and put the third generator under the real `tsc` gate (objectui `64cda47e7`)
732
+ - **patch** — `element:record_picker.filter` is now discoverable from the published `inputs` (objectui `bfdf3d419`)
733
+ - **patch** — Make the generated temp app pass the strict `tsconfig.json` the generator writes beside it, and gate it with a real `tsc` (objectui `9b9fa4961`)
734
+ - **patch** — List row Edit/Delete, bulk delete and related-list CRUD now run the caller's own permission, not just the object's API exposure (objectui#4096) (objectui `aeb8424ba`)
735
+ - **patch** — metadata-admin: wire client-side Zod validation for `sharing_rule`, `translation` and `connector` (objectui#3561) (objectui `877385a76`)
736
+ - **patch** — `evalRowPredicate`: the fail-closed report now names the engine's failure reason, and the ROW always wins over host scope (objectui#3792, objectui#3796) (objectui `6bb454ac0`)
737
+ - **patch** — Move the generator templates' dependency ranges onto the repo's current ones (objectui `c29ceffb8`)
738
+ - **patch** — A required field whose `defaultValue` is a runtime token is submittable from a create form (objectui `8497579db`)
739
+ - **patch** — `object-grid` publishes the filter key it actually reads: `filter`, singular (objectui#4041) (objectui `9154d9e90`)
740
+
741
+ **In this console build, declared nowhere** — objectui merged 13 commits in this range with no `.changeset/*.md`. The code is inside the pin above and ships here, but nothing upstream declared them, so they appear in no objectui CHANGELOG and in no entry above. Listed by subject rather than counted, because a count cannot tell a dependency bump from a form-behaviour change (objectstack#6174); the upstream gate that would prevent this is objectui#3387.
742
+
743
+ - _(no changeset)_ docs(data-objectstack): document the real headless surface, not a phantom React API (#4129) (objectui `92c0b1f40`)
744
+ - _(no changeset)_ fix(scripts): rewrite demo imports by usage, and clear the 106 stale ones (#4116) (objectui `e9ab52f90`)
745
+ - _(no changeset)_ docs(data-objectstack): describe the real dependency contract, not a peer one (#3781) (#4127) (objectui `1b6188d41`)
746
+ - _(no changeset)_ chore: release packages (#3598) (objectui `cfeb378b5`)
747
+ - _(no changeset)_ fix(console-starter): close the vite alias table over its real import graph (#4103) (objectui `0af9826ab`)
748
+ - _(no changeset)_ chore(deps-dev): bump the dev-dependencies group across 1 directory with 7 updates (#4088) (objectui `1592b2124`)
749
+ - _(no changeset)_ test(e2e): the console smoke test asserts a boot state the app actually settles in (#4086) (#4095) (objectui `361dfdc01`)
750
+ - _(no changeset)_ chore(deps): bump next from 16.2.12 to 16.3.0 (#4094) (objectui `47737ecb3`)
751
+ - _(no changeset)_ chore(deps): bump lucide-react from 1.28.0 to 1.29.0 (#4091) (objectui `a49a3a008`)
752
+ - _(no changeset)_ chore(deps): bump shiki from 4.3.1 to 4.4.2 (#4090) (objectui `ed5964304`)
753
+ - _(no changeset)_ chore(deps): bump maplibre-gl from 6.1.0 to 6.2.0 (#4092) (objectui `9920ae2d3`)
754
+ - _(no changeset)_ chore(deps): bump react-hook-form in the react group (#4089) (objectui `49396b524`)
755
+ - _(no changeset)_ chore(deps): bump the patch-updates group with 10 updates (#4087) (objectui `d897b74bc`)
756
+
757
+ objectui range: `8aad9fd50b16...92c0b1f403f7`
758
+
759
+ - 4580597: Console (objectui) refreshed to `96ee72e85439`. Frontend changes in this range:
760
+
761
+ - fix(console): render the redaction notice on the enveloped resolve body (objectstack#3983) (#2980)
762
+ - feat(sdui): guard the public contract against silent drift (#2979)
763
+ - fix(sdui): lazy public blocks reach a kind:'react' page scope; ReactRunner keeps its errors (#2976)
764
+ - fix(list,data): bridge every spec view operator onto the filter AST (#2901) (#2974)
765
+ - fix(errors): error-code branches survive the framework's ADR-0112 rename (objectstack#3841) (#2977)
766
+ - fix(fields): a select no longer wipes itself when its value outruns its options (#2968) (#2969)
767
+ - fix(approvals): decision outputs reach both decision surfaces (#2955) (#2961)
768
+
769
+ objectui range: `e651c936870e...96ee72e85439`
770
+
771
+ - eb9230c: Console (objectui) refreshed to `a136322f8723`. Frontend changes in this range:
772
+
773
+ - fix(app-shell)!: a modal action is client-side only — drop the server fallthrough (objectstack#3959) (#2973)
774
+ - fix(app-shell)!: the server-action URL identifies an action by `name`, not `target` (ADR-0110 D1) (#2970)
775
+ - fix(form): a server rejection that names fields now marks those fields (#2966)
776
+ - fix(actions): one source for the /actions envelope rule, and redirectUrl finally works (#2967)
777
+ - fix(actions): apply the ADR-0066 D4 capability gate on every action surface (framework#3923) (#2965)
778
+ - fix(detail): multi-value lookup is selectable in inline edit (#2957)
779
+ - fix(actions): a failed server action no longer reports as success (green toast) (#2963)
780
+ - fix(fields): the criteria builder stops calling an empty criteria "All records" (#2962)
781
+ - feat(report): carry a report's `order` into the dataset selection (framework#3916) (#2964)
782
+ - feat(views): the list toolbar speaks one vocabulary — `userActions` (#2890) (#2948)
783
+
784
+ objectui range: `4a4829d0ef39...a136322f8723`
785
+
786
+ **Release-critical for v17.** The previous pin (`4a4829d0ef39`) predates the
787
+ ADR-0110 D1 client fix, so the console it builds still posts `action.target`
788
+ to `/api/v1/actions/:object/:action`. Against a v17 server — which resolves
789
+ the declaration by `name` and refuses an unresolvable one (D3) — every
790
+ target-bound script action would return 404 from the shipped console. The
791
+ lockstep the ADR called for is enforced by THIS pin, not by merging the
792
+ objectui PR, so v17 must not ship without this bump.
793
+
794
+ - 29e5a0e: Console (objectui) refreshed to `bebaebd39ace`. Frontend changes in this range:
795
+
796
+ - fix(console): marketplace read cloud errors seven different ways — two break on the conversion, two are broken today (cloud#944) (#3086)
797
+ - feat(console): settings validation errors render against the fields that caused them (objectstack#4224 follow-up) (#3083)
798
+ - fix(notifications): the config, position and action variant are read instead of forked or ignored (#3014 follow-up) (#3085)
799
+ - fix(data-objectstack,core): an object filter no longer depends on whether the query expands a lookup (#3084)
800
+ - fix(app-shell): a published configSchema can no longer delete a node's sibling-block editors (objectstack#4045) (#3082)
801
+ - fix(view,list,core): a view's filter no longer disappears, or arrives as a predicate on columns that don't exist (#3081)
802
+ - fix(console): read the SETTINGS_LOCKED key from `error.details`, tolerating both shapes (objectstack#4224) (#3079)
803
+ - fix(list,data-objectstack,types): exporting a searched list no longer downloads the unsearched superset (#3078)
804
+ - fix(types,app-shell): one ObjectPermission, and the preview stops hiding three of its fields (objectstack#4115) (#3077)
805
+ - fix(notifications): the spec `icon` is read instead of stored and ignored (#3014 follow-up) (#3076)
806
+ - fix(plugin-grid): bulk-action params render the shared form field widgets — lookup errors get Retry, sys_user params get the PeoplePicker (#3064, ADR-0059) (#3073)
807
+ - feat(app-shell): the console mounts the notification surfaces (#3014 follow-up) (#3075)
808
+ - fix(data-objectstack): a view's own filter no longer vanishes when the user adds one (#3072)
809
+ - feat(notifications): each spec displayType gets its own presentation (#3014) (#3071)
810
+ - fix(grid): evaluate a bulk action's `visible` per selected record (#3067) (#3070)
811
+ - feat(sdui): curate the page:_, element:_ and action:\* families into the public contract (#3069)
812
+ - fix(list,i18n): a 400 from the server no longer reads as "check your connection" (#3066)
813
+ - feat(page,element): declare inputs for the eight configurable page:_/element:_ blocks (#3065)
814
+ - fix(app-shell,plugin-grid,i18n): autonumber/readonly fields become match-only import targets so "update if the record number exists" works (#3061)
815
+ - fix(types): Page/App/Dashboard validate the spec's own fields instead of passing them through (objectstack#4115 group C) (#3063)
816
+ - fix(plugin-form,i18n): form edit saves send If-Match and surface 409 conflicts instead of silently overwriting (#3060)
817
+ - fix(console): 403 blamed on the network, ⌘K search capped at 8 objects, nav gating fields inert (#3044)
818
+ - fix(grid): a bulk delete / by-name action clears the row checkboxes too (#3056) (#3058)
819
+ - fix(types,detail): derive five spec-named symbols instead of forking them (objectstack#4115) (#3057)
820
+ - fix(grid): drop the `bulkEnabled` derivation — the spec key is a tombstone (#3002) (#3053)
821
+ - fix(permissions,console): retry a transient /me/permissions failure instead of stranding the app on its loading state (#3050) (#3052)
822
+ - fix(test-setup): stop shadowing ten real registrations, and declare page:header's inputs (#3051)
823
+ - fix(scripts): --check reports real divergence instead of calling all 46 components "modified" (#3049)
824
+ - fix(view): the chart view gets a label and an icon in the view switcher (#2916) (#3040)
825
+ - feat(form): SplitForm honours the spec's new `FormSection.pane` (#3041)
826
+ - fix(types,layout): nav item type 'component' joins NavigationItemType and its zod enum (#2918) (#3039)
827
+ - fix(registry): prefix every namespaced key exactly once, in every namespace (#3037)
828
+ - fix(scripts): shadcn-sync refuses to silently delete local edits, and compiles the package after it writes (#3035)
829
+ - fix(scripts): shadcn-sync rewrites the registry paths Shadcn actually serves, and refuses to write a file when it cannot (#3033)
830
+ - fix(grid,types): an object-declared bulk action runs over the selected records (#3002) (#3031)
831
+ - fix(form): a wizard with `allowSkip` no longer submits past the fields you skipped (#3030)
832
+ - fix(components): resizable is a diverged file, not a synced one — stop the sync from breaking the build, and finish the v4 migration in it (#3029)
833
+ - feat(studio): a page button created in Studio can be given an action (#2997) (#3028)
834
+ - feat(record): declare inputs for the seven configurable record:\* blocks, and curate six (#3027)
835
+ - feat(eslint): ban dynamic imports in test hooks, and convert the last 33 sites (#3026)
836
+
837
+ objectui range: `96ee72e85439...bebaebd39ace`
838
+
839
+ - bec0f9a: Console (objectui) backfill for `2cb8d78e24ad...c6cfdf1288b6` — the one refresh in
840
+ the v17 window that landed with no changeset.
841
+
842
+ `scripts/bump-objectui.sh` emits a `@objectstack/console` changeset on every bump
843
+ precisely so a SHA move leaves a trace (see `docs/releases-maintenance.md`). One
844
+ bump in this window did not, so 25 commits — including two breaking ones — were
845
+ absent from the release history and from the curated v17 page. This entry records
846
+ them after the fact; it declares no new SHA move (`.objectui-sha` already points
847
+ past this range at `4a4829d0ef39`).
848
+
849
+ Frontend changes in this range:
850
+
851
+ - feat(react)!: trim dead device/preference delegates from useClientNotifications (objectstack#3612 companion) (#2862)
852
+ - feat(types)!: drop the ObjectStack/ObjectOS/ObjectQL/ObjectUI Capabilities re-exports (#2860)
853
+ - feat: gate detail/form edit & delete on the server's effective operation set (framework#3546) (#2832)
854
+ - feat(app-shell): approver values become record lookups (framework#3508) (#2834)
855
+ - feat(console): group tenancy posture affordances — org switcher as write context + org attribution (ADR-0105 Phase 1) (#2858)
856
+ - feat(console): i18n the system-settings hub (objectui#2851 P2) (#2859)
857
+ - fix(dashboard,charts): resolve `{current_user_id}` in widget filters (framework#3574) (#2857)
858
+ - fix(grid): validate email format in the import preview (objectstack#3566) (#2840)
859
+ - fix(fields): consistent image-field rendering + click-to-zoom (#2836) (#2837)
860
+ - fix(app-shell): stop the flow-node repeater from committing during render (#2838) (#2839)
861
+
862
+ Plus 15 dependency bumps, three of them major for the Console's own build:
863
+ `maplibre-gl` 5→6, `chalk` 5→6, `jsdom` 29→30 (dev).
864
+
865
+ objectui range: `2cb8d78e24ad...c6cfdf1288b6`
866
+
867
+ - be25f97: Console (objectui) refreshed to `f5bc4c78be76`. Frontend changes in this range:
868
+
869
+ Derived from the changesets objectui declared over the range — 11 releasing of 11 changesets added across 31 non-merge commits; omitted: 20 commits carrying no changeset (they ship no package code).
870
+
871
+ - **minor** — Field widgets are finally told when their field fails validation, and the props slot that carries it takes the name the published contract gives it (objectui#3222). (objectui `56409c28c`)
872
+ - **minor** — Retire `validation` from the action-param contract — it was declared on both halves, read by neither, and rejected outright by the server (objectui#3201). (objectui `f833d3ae4`)
873
+ - **patch** — Five metadata designers stop rendering keys `@objectstack/spec` rejects, and start rendering the keys it declares (objectui#3275, objectui#3281). (objectui `8ff3ad7b8`)
874
+ - **patch** — The Page block inspector's conditional-visibility control now authors `visibleWhen`, and says "Visible when" while doing it (objectui#3229). (objectui `8e02ad7f2`)
875
+ - **patch** — The record discussion panel no longer shows the PREVIOUS record's comments and activity (objectui#3268). (objectui `a8aa57663`)
876
+ - **patch** — The form renderer's built-in `select` branch stops saying "No options available" in English to non-English sessions (objectui#3263). (objectui `a7651e640`)
877
+ - **patch** — The record discussion panel now says "loading" while it is loading, instead of "No comments yet" (objectui#3209). (objectui `12bf6691e`)
878
+ - **patch** — The legacy `page-header` alias stops advertising `description` as an authorable key (objectui#3226). (objectui `d2363e710`)
879
+ - **patch** — The option widgets' "this list cannot be filled" message now has one source, and it is translated (objectui#3231). (objectui `825bbe33c`)
880
+ - **patch** — `ToolPreview` stops advertising retired `ToolSchema` flags (objectui#3236). (objectui `30ac2e1ee`)
881
+ - **patch** — `TextAreaField`'s mobile fullscreen flag converges on its one real producer (objectui#3232). (objectui `a321fa461`)
882
+
883
+ objectui range: `785b8a5d432c...f5bc4c78be76`
884
+
885
+ - ce1155c: Console (objectui) refreshed to `f995a452d2ca`. Frontend changes in this range:
886
+
887
+ Derived from the changesets objectui declared over the range — 64 releasing of 65 changesets added across 98 non-merge commits; omitted: 1 release-nothing changeset, 33 commits carrying no changeset (they ship no package code).
888
+
889
+ - **minor** — The record detail page now shows a read-gated approval panel (#3461). A record in approval used to expose NOTHING about the running approval to anyone but the current pending appr… (objectui `5af285210`)
890
+ - **minor** — `DrillDownConfig` now declares only keys a renderer reads, and `target: 'navigate'` is honoured on charts too (#3354). (objectui `9e9e9a92f`)
891
+ - **minor** — Console chrome i18n gaps (objectstack#5407). (objectui `3889ffb4c`)
892
+ - **minor** — The console language choice now survives a reload. `I18nProvider` writes every language change to `localStorage` (`objectui-locale`, exported as `LOCALE_STORAGE_KEY`) and boots th… (objectui `0554e889c`)
893
+ - **minor** — `<ObjectChart>` declares `drillDown` as a registry input, so the SDUI save gate treats the segment drill as a contract prop instead of an unknown one (framework#5022). (objectui `524a6357b`)
894
+ - **minor** — The environment entitlement dialog now reads its context from `error.details.*` — the single declared location — and the flat dual-dialect tolerance is deleted (objectui#3329, the… (objectui `8ec406728`)
895
+ - **minor** — `@object-ui/core` now ships the server-action dispatcher factory — `createServerActionHandler({ fetch, baseUrl, resolveObject, ... })` — so any consumer of the runner (standalone… (objectui `5781fb15a`)
896
+ - **minor** — `AppSchemaRenderer` now derives area visibility from the items inside the area, closing the visible-but-empty regression the spec 17.0.0 area-key retirement left behind (objectui#… (objectui `608669eb5`)
897
+ - **minor** — Track `@objectstack/spec` 17.0.0-rc.2 (objectui#3235, #3208, #3287, #3264). (objectui `d22ae31ce`)
898
+ - **minor** — Field widgets no longer spread renderer-only props — or arbitrary keys from a field config — onto the DOM element they render (objectui#3291). (objectui `19b8c9be3`)
899
+ - **minor** — `RichTextField` honours `mobile_fullscreen`, so `mobile.fullscreenLongText` is finally true of rich text too (objectui#3301). (objectui `30ae33a77`)
900
+ - **minor** — `mobile.fullscreenLongText` finally reaches auto-generated long-text fields, and `mobile_fullscreen` gets one declared carrier (objectui#3245). (objectui `f44d8727f`)
901
+ - **minor** — **BREAKING (v17)** — The flow designer writes node geometry as the spec's `FlowNode.position`, not its own `ui: { x, y }` (objectui#3172). (objectui `6e794a19e`)
902
+ - **minor** — **BREAKING (v17)** — field widgets receive their metadata on ONE key, `field`. `schema` is removed from the widget contract (objectui#3233). (objectui `042e09d77`)
903
+ - **patch** — `UserFilters` no longer carries its own operator table when it lowers a `ViewTab.filter` preset into an ObjectQL AST node. The private `specOperatorToAst` was the second hand-kept… (objectui `d7f350a89`)
904
+ - **patch** — Name `CommentThread`'s three emoji-only buttons, and follow the session language past the 7-day mark (objectui#3441) (objectui `65516ba4a`)
905
+ - **patch** — `toFilterNode` now lowers a spec `ViewFilterRule[]` into ObjectQL AST nodes instead of returning the array verbatim, so a saved view's stored filter reaches `$filter` as something… (objectui `2a9513d81`)
906
+ - **patch** — Localize the create / edit / view form title `ObjectView` builds itself (objectui#3462) (objectui `28b2e6571`)
907
+ - **patch** — Localize the record-detail headings that `ObjectKanban`, `ObjectTree` and `ObjectView` build themselves (objectui#3459) (objectui `aa36e6073`)
908
+ - **patch** — Localize the record-detail overlay heading that `ListView` and `ObjectGrid` build themselves (objectui#3426) (objectui `61958416e`)
909
+ - **patch** — The close button that the `Sheet` and `Dialog` primitives auto-render now announces itself in the session locale instead of always in English. Both buttons are icon-only (a lucide… (objectui `71be40696`)
910
+ - **patch** — Localize `PresenceAvatars` — the avatar stack's accessible name and tooltips follow the session language (objectui#3440) (objectui `ca0fa8fab`)
911
+ - **patch** — `PageRenderer` no longer renders its own `<h1>` when the page authors a titled `page:header`, so a page has exactly one level-1 heading. Every non-record page used to render the p… (objectui `06632e9d1`)
912
+ - **patch** — Localize `@object-ui/collaboration` — `CommentThread` no longer hardcodes English (objectstack#5506) (objectui `94c5b7c4e`)
913
+ - **patch** — `TextAreaField`'s fullscreen edit dialog now gives screen reader users the character count it has always shown sighted ones. The dialog's footer counter was a bare `{n}/{max}` spa… (objectui `f789c3b3a`)
914
+ - **patch** — `ObjectDataPage`'s "Save as view" now folds the active URL drill conditions into `@objectstack/spec` `ViewFilterRule`s before persisting them, instead of writing the runtime filte… (objectui `875c5fafb`)
915
+ - **patch** — Localize `RecordDetailDrawer`'s drag-resize handle (objectstack#5733) (objectui `5a24ad9cb`)
916
+ - **patch** — The record picker's filter panel now sends the AUTHORED value of a picked `select` filter option instead of the control's stringified form. Radix `Select` speaks strings — options… (objectui `34d9169f6`)
917
+ - **patch** — Localize the record-overlay and tab-badge chrome that #5430's sweep left behind (objectstack#5506) (objectui `5dd012776`)
918
+ - **patch** — The lookup "Browse all records" Record Picker's filter panel now offers the options a `select` field declares in its schema (objectui#3336). `LookupField` turns each typed picker… (objectui `5881a2cc4`)
919
+ - **patch** — `TextAreaField`'s character counter no longer re-announces itself on every keystroke. Measured on `main` in a zh session with `maxLength: 500`, typing a 52-character sentence one… (objectui `789fe3ee2`)
920
+ - **patch** — Fix matrix report cells showing another bucket's numbers when dimension values run together. (objectui `509104a1b`)
921
+ - **patch** — Fix dataset pivot cells showing another row's numbers when a dimension value contains a space. (objectui `ce7cbe5af`)
922
+ - **patch** — Give `InlineCreateRelated`'s card-header close button an accessible name (objectui#3411 — the neighbouring defect found while implementing #3381/PR #3410, in the same file and lef… (objectui `58a00f0b4`)
923
+ - **patch** — Give `InlineCreateRelated`'s "Link Existing" search box a real accessible name (objectui#3381 — the neighbouring defect found while implementing #3341/PR #3380, and left out of th… (objectui `b17ce4c25`)
924
+ - **patch** — `TextAreaField`'s character counter now announces itself in the session locale. The counter block — rendered only when the field declares `maxLength` — carried the accessible name… (objectui `2409e1d04`)
925
+ - **patch** — fix(fields): translate the registered path's fullscreen long-text dialog (objectui#3404) (objectui `6fe485bf2`)
926
+ - **patch** — `TextAreaField` / `RichTextField` now honour `disabled` on their fullscreen editing path. `disabled` used to reach the inline control only: `showFullscreenButton` never consulted… (objectui `7d08c3feb`)
927
+ - **patch** — The form renderer's built-in `textarea` branch now honours `readonly` / `disabled` on its fullscreen exit, which previously bypassed both (objectui#3400). `renderFieldComponent` d… (objectui `fd54c3e7a`)
928
+ - **patch** — 表单内置 `textarea` 的全屏编辑对话框现在能拿到字段自己的 label:对话框标题显示字段名而不是恒定的通用词「编辑文本」,同一张表单上多个长文本字段的展开按钮也终于有了互不相同的无障碍名(objectui#3393)。 (objectui `85c4c9ce0`)
929
+ - **patch** — The form renderer's built-in `textarea` branch reads the fullscreen long-text flag on one spelling (objectui#3303). (objectui `9cbcbf478`)
930
+ - **patch** — The form renderer's last user-visible English literals now go through i18n (#3272). The fullscreen long-text editor (`mobile_fullscreen`) was an entire untranslated dialog — title… (objectui `4eeb932aa`)
931
+ - **patch** — Localize the last untranslated console-chrome accessible names (objectstack#5430) (objectui `b71fc92f3`)
932
+ - **patch** — `ObjectGantt`'s quick-filter bar is now localized instead of pinned to Chinese. The four `QuickFilterBar` labels (`all`, `clear`, `empty`, `resultSummary`) were hardcoded as Chine… (objectui `5c856ecb5`)
933
+ - **patch** — Associate the label with its control at the two form surfaces where the two were never programmatically connected (objectui#3341 — found while implementing #3299/PR #3340, and del… (objectui `53811d179`)
934
+ - **patch** — `ActionEngine.getActionsForLocation` now evaluates a `{ dialect: 'cel', source }` action `visible` predicate on the canonical `@objectstack/formula` engine instead of the legacy J… (objectui `18cd43289`)
935
+ - **patch** — Settings pages read the declared `{ success, data }` response envelope, so the whole Setup → Configuration section works again against a framework#3843 server (objectui#3366). (objectui `7d0c6de39`)
936
+ - **patch** — The flow designer no longer seeds new `wait` nodes with the retired `waitEventConfig.onTimeout` (objectui#3316). (objectui `35da149c5`)
937
+ - **patch** — Gallery covers now resolve the `coverField` value through its **file value shape** instead of assuming the field value _is_ a URL string, so an ADR-0104-conforming `image` value r… (objectui `978705c8f`)
938
+ - **patch** — The list toolbar's "Filter" now saves. Saving a filter from the runtime toolbar PUT the FilterBuilder's whole group object (`{ id, logic, conditions }`) into the view's `filter`,… (objectui `68b6a2855`)
939
+ - **patch** — The lookup "Browse all records" Record Picker now formats its columns with the same field metadata the list view uses (objectui#3333). Previously the dialog handed cell renderers… (objectui `9bc3709b9`)
940
+ - **patch** — Behavior change — **an authored display `type` can NARROW inline editability, but never WIDEN it** (objectui#3355). (objectui `bbbde1207`)
941
+ - **patch** — `record:highlights` now honours a `readonly: true` on an authored field entry, so a header chip for a platform-owned column no longer offers inline edit. `HeaderHighlight`'s edita… (objectui `23018cc03`)
942
+ - **patch** — Deliver the required state to the control in the five renderers outside the object form that still painted it as an asterisk only (objectui#3299 — the same defect #3290/#3298 fixe… (objectui `532cf8b9e`)
943
+ - **patch** — The Combobox trigger now declares `type="button"` explicitly, so it can never submit an enclosing `<form>` (objectui#3344). The current Radix `PopoverTrigger` happens to supply `t… (objectui `34595eb45`)
944
+ - **patch** — `TagsField` no longer ships a hardcoded Chinese input placeholder (objectui#3342, AGENTS.md Commandment #-1). The placeholder now resolves through the pinned chain: the author-dec… (objectui `c7ed4c366`)
945
+ - **patch** — AddressField / GeolocationField sub-inputs now derive their DOM ids from a `useId()` prefix + sub-field name (the RadioField / CheckboxesField `groupId` paradigm) instead of hardc… (objectui `b7165ce47`)
946
+ - **patch** — 20 more registered field widgets now announce a failed validation to assistive tech: `multiselect`, `radio`, `checkboxes`, `tags`, `lookup`, `master_detail`, `user`, `owner`, `fil… (objectui `8d8094a7c`)
947
+ - **patch** — `field:permission-facet-link` now registers through `withFieldCarrier` — the repo's only raw `field:` registration bypassed the single-metadata-carrier seam (objectui#3233), so un… (objectui `c7fba276e`)
948
+ - **patch** — The console server-action wrapper's `opensInNewTab` choreography no longer ships hard-coded bilingual Chinese/English copy (objectui#3321, AGENTS.md Commandment #-1): the pre-open… (objectui `a41568462`)
949
+ - **patch** — `AppSidebar` and `UnifiedSidebar` area switchers now adopt the derived area visibility introduced for `AppSchemaRenderer` in objectui#3311, closing the same visible-but-empty gap… (objectui `8d9984c2e`)
950
+ - **patch** — RecordDetailView's `type:'modal'` dispatch no longer falls back to the server-side action handler when the target resolves to neither a page nor an object. That fallthrough could… (objectui `94755bb88`)
951
+ - **patch** — `field:select` now announces its validation state to assistive tech: the widget's DOM pass-through lands on the Radix `SelectTrigger` — the focusable `<button role="combobox">` a… (objectui `49f7449f9`)
952
+ - **patch** — The required state now reaches the input control as `aria-required`, instead of existing only as part of the control's accessible name (objectui#3290). (objectui `680080ada`)
953
+
954
+ objectui range: `f5bc4c78be76...f995a452d2ca`
955
+
956
+ ### Patch Changes
957
+
958
+ - 2e836de: chore(packaging): CHANGELOG.md ships in every npm tarball (#4261)
959
+
960
+ The AGENTS.md post-task checklist requires breaking changesets to carry their
961
+ FROM → TO migration because "this text ships to consumers as `CHANGELOG.md`
962
+ inside the npm package and is what an upgrading agent greps after the tombstone
963
+ error." That delivery path was severed for 68 of the 69 publishable packages:
964
+ npm packs `package.json` / `README*` / `LICENSE*` unconditionally but — unlike
965
+ older npm versions — not `CHANGELOG.md`, and the canonical
966
+ `"files": ["dist", "README.md"]` whitelist never named it. Measured on npm
967
+ 10.9.7: `npm pack --dry-run` on `@objectstack/types` shipped 3 files while its
968
+ 70KB `CHANGELOG.md` stayed behind. Only `@objectstack/spec` listed it
969
+ explicitly.
970
+
971
+ The tombstone-error scenario is precisely the one where the repo is out of
972
+ reach — the upgrading agent has `node_modules` and nothing else — so the
973
+ migration text has to ride in the tarball. Every publishable package now
974
+ declares `CHANGELOG.md` in `files`, and the canonical whitelist is
975
+ `["dist", "README.md", "CHANGELOG.md"]`.
976
+
977
+ The other half is the gate: `check:published-files` gains a fifth invariant,
978
+ COMPLETE — a whitelist that fails to cover `CHANGELOG.md` fails the
979
+ always-required lint job, so the next package cannot silently sever the path
980
+ again. `@objectstack/spec`'s per-package EXTRA_ENTRIES exemption dissolves
981
+ into the canonical set.
982
+
983
+ Consumer-visible change: one more file per install (the package's changelog,
984
+ e.g. 70.8KB for `@objectstack/types`), and `grep -r "removed key"
985
+ node_modules/@objectstack/*/CHANGELOG.md` now finds the migration it was
986
+ promised.
987
+
988
+ - 6ba3788: Console (objectui) refreshed to `09c6a177bb4a`. Frontend changes in this range:
989
+
990
+ - fix(grid): localize import result errors (objectstack#3566) (#2861)
991
+
992
+ objectui range: `c6cfdf1288b6...09c6a177bb4a`
993
+
994
+ - 72b55d3: Console (objectui) refreshed to `7dfbeb704e1e`. Frontend changes in this range:
995
+
996
+ Derived from the changesets objectui declared over the range — 9 releasing of 9 changesets added across 28 non-merge commits; omitted: 20 commits carrying no changeset (they ship no package code).
997
+
998
+ - **patch** — The bulk selection bar now applies the ADR-0066 D4 `requiredPermissions` capability gate, and short-circuits a boolean `visible` instead of treating it as a broken expression (#34… (objectui `d915c47b3`)
999
+ - **patch** — Relation fields (`lookup` / `master_detail` / `user` / `tree`) are now usable in action and conditional-formatting predicates: they bind as the stored foreign key on every surface… (objectui `d915c47b3`)
1000
+ - **patch** — Conditional-rule predicates that fail to evaluate are no longer silent (objectstack#5149, appeal 2). `evalFieldPredicate` — the canonical funnel for `visibleWhen` / `readonlyWhen`… (objectui `a4cff5bd1`)
1001
+ - **patch** — `useAppContextSelectors` now derives each context selector's URL scope key from its own `id` instead of hardcoding the literal `package` query key. `App.contextSelectors` is an ar… (objectui `f59406d4e`)
1002
+ - **patch** — `toPredicateInput` is now re-exported from `@object-ui/core` instead of being reimplemented in `@object-ui/react`. Behaviour is byte-for-byte identical — the renderer-side copy in… (objectui `175bd79d8`)
1003
+ - **patch** — The group-tenancy write-target badge is now translated in all ten locales (objectui#3517) (objectui `7e2406abf`)
1004
+ - **patch** — Give `CommentThread`'s `+` reaction picker a real accessible name (objectui#3478) (objectui `d0d71df0e`)
1005
+ - **patch** — `RecordFormPage` no longer passes an inline `defaultValue` to the seven `t()` lookups whose keys are defined in all ten locale packs (`form.createTitle`, `form.editTitle`, `form.c… (objectui `c0c771c2f`)
1006
+ - **patch** — `createSafeTranslation`'s no-provider fallback interpolation now replaces **all** occurrences of each placeholder, matching i18next semantics on the provider path. (objectui `a6ec93d24`)
1007
+
1008
+ objectui range: `f995a452d2ca...7dfbeb704e1e`
1009
+
1010
+ - 0c49b50: Console (objectui) refreshed to `b1204af0a1f7`. Frontend changes in this range:
1011
+
1012
+ Derived from the changesets objectui declared over the range — 8 releasing of 8 changesets added across 22 non-merge commits; omitted: 14 commits carrying no changeset (they ship no package code).
1013
+
1014
+ - **patch** — Anchor the scaffold's build-side `devDependencies` to this repo's real toolchain, and pin the whole generated manifest against drift (objectui `e473b6c29`)
1015
+ - **patch** — fix(data-table): don't render a row overflow ("⋮") trigger that opens an empty menu (objectui `7ed3360dc`)
1016
+ - **patch** — Show the `compareTo` comparison in a dataset pivot cross-tab instead of dropping it (objectui `02eb44490`)
1017
+ - **patch** — data-objectstack: type `queryDataset(selection)` as the spec's `DatasetSelection` instead of a hand-written copy (objectui `5f08c052d`)
1018
+ - **patch** — Point the `sys-objects` navigation entries at the canonical metadata-admin route instead of the `system/metadata/object` alias, removing a redirect hop from each click (objectui#3… (objectui `b7b05da7f`)
1019
+ - **patch** — create-plugin: make the scaffolded plugin's own test suite runnable (objectui `f4f42b4ae`)
1020
+ - **patch** — Accept React 19 in `@object-ui/plugin-report`'s peer range, the last UI package still declaring React 18 alone (objectui#3690). (objectui `3b1f888e5`)
1021
+ - **patch** — Point System Hub's Permissions card — both its link and its count — at `sys_permission_set`, closing the last of the five `system/*` navigation targets (objectui#3655). (objectui `cc95c2c31`)
1022
+
1023
+ **In this console build, declared nowhere** — objectui merged 14 commits in this range with no `.changeset/*.md`. The code is inside the pin above and ships here, but nothing upstream declared them, so they appear in no objectui CHANGELOG and in no entry above. Listed by subject rather than counted, because a count cannot tell a dependency bump from a form-behaviour change (objectstack#6174); the upstream gate that would prevent this is objectui#3387.
1024
+
1025
+ - _(no changeset)_ docs(create-plugin): 按 route B 收缩到不漂移的部分,产物一律指向 buildPluginFiles() (#3715) (#3760) (objectui `b1204af0a`)
1026
+ - _(no changeset)_ test(scripts): assert every peer-line restatement against its own manifest (#3717) (#3751) (objectui `0c28a0720`)
1027
+ - _(no changeset)_ fix(runner): 删掉 vite 别名表里指向不存在包目录的 data-objectql 条目 (#3747) (objectui `5a297c3cd`)
1028
+ - _(no changeset)_ docs(ci): delete the unpinned .github/WORKFLOWS.md duplicate inventory, move what was true into the pinned guide page (#3724) (#3745) (objectui `28364bdd9`)
1029
+ - _(no changeset)_ ci(docs): fail OPEN when the Build Docs path gate cannot compute its diff (#3723) (#3744) (objectui `b1a67e0f6`)
1030
+ - _(no changeset)_ docs(skills): point console-development.md's 13 relocated symbols at their real paths (#3730) (#3734) (objectui `8ad6070fb`)
1031
+ - _(no changeset)_ docs(ROADMAP): P1.12/P1.16 的 MetadataManagerPage 铺与 Total 计数按现实改写 (#3712) (#3732) (objectui `3835d121c`)
1032
+ - _(no changeset)_ docs(skills): rewrite console-development.md to the post-cccdf84d reality and sync its eval (#3713) (#3729) (objectui `4e93e40d7`)
1033
+ - _(no changeset)_ docs: 清偿 #3711 门禁记账里属这三单的 8 处版本失真,并同步收缩 ledger (#3726) (objectui `fbf7d6d01`)
1034
+ - _(no changeset)_ docs(runner): Error Boundaries 一条改为可达的 SchemaErrorBoundary (#3635) (#3725) (objectui `b887282cb`)
1035
+ - _(no changeset)_ fix(fields): echo stored date values in the sub-grid's native date cells (#3718) (objectui `918888a30`)
1036
+ - _(no changeset)_ docs(console): drop the objectstack.config.ts ghost, the dead app-creation entries, and the routing-table overreach (#3580) (objectui `15a0d366b`)
1037
+ - _(no changeset)_ test(app-shell): 同步 pseudoRouteSegments 里的第二份 MetadataRedirectStub,并用整链断言钉住 (#3669) (#3691) (objectui `ae3bd96a1`)
1038
+ - _(no changeset)_ ci: subscribe the four gate workflows to merge_group, and move ci/lint path filtering into the jobs (#3523 steps 1-2) (#3722) (objectui `f710fc4e3`)
1039
+
1040
+ objectui range: `0cf8f0f70d10...b1204af0a1f7`
1041
+
1042
+ - 60110bb: Console (objectui) backfill for `96ee72e85439...bebaebd39ace` — the 27 fix
1043
+ commits that refresh's changeset did not enumerate.
1044
+
1045
+ `scripts/bump-objectui.sh` emits a `@objectstack/console` changeset on every
1046
+ bump precisely so a SHA move leaves a trace (see `docs/releases-maintenance.md`),
1047
+ and the `console-bebaebd39ace.md` entry it wrote covers only the tail of its own
1048
+ range: the range holds **94** first-parent commits, the enumeration lists 40,
1049
+ and its oldest entry is #3026. Everything that merged earlier inside the same
1050
+ range went unrecorded — in the release history and in the curated v17 page.
1051
+ This is the second instance of the failure `console-c6cfdf1288b6-backfill.md`
1052
+ records; it declares no SHA move (`.objectui-sha` already points at
1053
+ `7d9734d5e321`, past this range).
1054
+
1055
+ The 27 are all `fix`, hence `patch`. Several are data-loss fixes an upgrading
1056
+ Console user feels immediately:
1057
+
1058
+ - fix(form): a tabbed/sectioned modal keeps every tab's values (#2959, #2153) (#2987)
1059
+ - fix(form): a split form keeps BOTH panels' values (#2153) (#3012)
1060
+ - fix(form): a defaultValues change no longer discards the field being filled (#2982) (#2991)
1061
+ - fix(components): apply new form defaultValues in the commit that renders them (#3001)
1062
+ - fix(plugin-form): block page unload while a modal/drawer form has unsaved input (#2998)
1063
+ - fix(plugin-form): swapping recordId no longer leaves the previous record on screen (#3005)
1064
+ - fix(plugin-form): a wizard that ends on a field-less review step can finish (#2986)
1065
+ - fix(form): a tabbed/split form honours the form view's own `columns` (#3018)
1066
+ - fix(console): a flow or action that failed under HTTP 200 stops reporting success (#2958) (#2995)
1067
+ - fix(grid): a legacy string row action runs instead of green-toasting a no-op (#2960) (#2996)
1068
+ - fix(spec-parity): render the six Tier-1 spec values right instead of silently wrong (#2941) (#2993)
1069
+ - fix(spec-parity): the Tier-2 spec values render instead of validating into nothing (#2942) (#3008)
1070
+ - fix(spec-parity): the Tier-3 spec values render instead of red-boxing (#2943) (#3011)
1071
+ - fix(view,components): the spec→FilterBuilder operator table covers the whole view vocabulary (#2945) (#2989)
1072
+ - fix(view): the spec→FilterBuilder map follows the four operators #2942 added (#3022)
1073
+ - fix(charts): a spec `series[].type` draws, and a spec-shape `series` plots at all (#2945) (#3004)
1074
+ - fix(charts): say so when rows carry no category key, instead of drawing an empty axis (#3007)
1075
+ - fix(analytics): a missing analytics capability no longer renders as an empty KPI (objectstack#3891) (#2981)
1076
+ - fix(chatbot): read the agent catalog in the declared envelope too (objectstack#4053) (#2992)
1077
+ - fix(sdui): a react page keeps its state; a source that exports nothing fails loudly (#2984)
1078
+ - fix(sdui): a kind:'html' page can use lazily-registered blocks, and recovers when one registers late (#2988)
1079
+ - fix(sdui): stop the react page's "no adapter yet" fallback churning its provider context (#3000)
1080
+ - fix(sdui): the curated contract lists record:line_items, the tag that actually resolves (#3006)
1081
+ - fix(record): register the record:\* blocks under one key, prefixed once (#3023)
1082
+ - fix(plugin-list,plugin-grid): drop undeliverable formats from the export menu (#2999)
1083
+ - fix(components): a stacked resizable group gets a divider, not a 1px sliver (#3024)
1084
+ - fix(components,app-shell): the last two `direction` props follow v4's rename to `orientation` (#3025)
1085
+
1086
+ Also in the range and deliberately not listed here: the refactor/chore/test/
1087
+ build/ci PRs the bump script's fix/feat filter excludes by design — including
1088
+ three breaking-flagged refactors already reflected in the spec-side work
1089
+ (#2990 the `execute` alias deleted from the action runner, objectstack#3856;
1090
+ #3003 action sub-vocabularies derived from spec, and #3020 authoring types
1091
+ become input types, both objectstack#4074).
1092
+
1093
+ objectui range: `96ee72e85439...bebaebd39ace`
1094
+
1095
+ - 6fd0786: Console (objectui) refreshed to `e651c936870e`. Frontend changes in this range:
1096
+
1097
+ - fix(app-shell): unwrap the declared response envelope on the datasource page and the api-action runner (objectstack#3843) (#2972)
1098
+ - fix(actions): read objectstack#3962's single-wrapped /actions responses (#2971)
1099
+
1100
+ objectui range: `a136322f8723...e651c936870e`
1101
+
3
1102
  ## 17.0.0-rc.6
4
1103
 
5
1104
  ### Minor Changes