@synopackageland/cli 0.5.0 → 0.6.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 (1268) hide show
  1. package/README.md +69 -38
  2. package/dist/add.d.ts +4 -0
  3. package/dist/add.js +124 -0
  4. package/dist/build-spk/delete-app-data.d.ts +3 -3
  5. package/dist/build-spk/generator.js +3 -90
  6. package/dist/build-spk/native-lifecycle.d.ts +3 -49
  7. package/dist/build-spk/native-lifecycle.js +8 -187
  8. package/dist/build-spk/notices.d.ts +1 -1
  9. package/dist/build-spk/notices.js +8 -12
  10. package/dist/build-spk/uninstall-wizard.d.ts +4 -11
  11. package/dist/build-spk/uninstall-wizard.js +6 -4
  12. package/dist/build-spk/wizard-messages.d.ts +28 -6
  13. package/dist/build-spk/wizard-messages.js +33 -11
  14. package/dist/capabilities.d.ts +4 -0
  15. package/dist/capabilities.js +12 -0
  16. package/dist/cli.js +329 -467
  17. package/dist/compose/analyze.js +2 -2
  18. package/dist/contract/unsupported-types.js +1 -1
  19. package/dist/deploy/deploy.d.ts +1 -1
  20. package/dist/deploy/deploy.js +1 -3
  21. package/dist/deploy/plan.d.ts +1 -1
  22. package/dist/deploy/plan.js +55 -24
  23. package/dist/discovery.d.ts +1 -2
  24. package/dist/discovery.js +3 -3
  25. package/dist/error-registry.js +71 -299
  26. package/dist/host/dsm-client.js +79 -7
  27. package/dist/host/dsm-port-profile.d.ts +1 -1
  28. package/dist/host/dsm-port-profile.js +1 -1
  29. package/dist/host/types.d.ts +13 -0
  30. package/dist/index.d.ts +1 -0
  31. package/dist/index.js +1 -0
  32. package/dist/info.d.ts +20 -2
  33. package/dist/info.js +140 -0
  34. package/dist/init.d.ts +2 -14
  35. package/dist/init.js +91 -71
  36. package/dist/inspect.js +1 -1
  37. package/dist/log.d.ts +5 -0
  38. package/dist/log.js +18 -0
  39. package/dist/runtime/executor-build.d.ts +22 -0
  40. package/dist/runtime/executor-build.js +36 -0
  41. package/dist/runtime/executor-inspect.d.ts +15 -0
  42. package/dist/runtime/executor-inspect.js +32 -0
  43. package/dist/runtime/executor-policy.d.ts +25 -0
  44. package/dist/runtime/executor-policy.js +24 -0
  45. package/dist/runtime/executor-tasks.d.ts +16 -0
  46. package/dist/runtime/executor-tasks.js +28 -0
  47. package/dist/runtime/uninstall-cleanup.d.ts +7 -0
  48. package/dist/runtime/uninstall-cleanup.js +10 -0
  49. package/dist/skill.js +3 -1
  50. package/dist/standalone/api-permissions.d.ts +18 -0
  51. package/dist/standalone/api-permissions.js +63 -0
  52. package/dist/standalone/build.d.ts +1 -1
  53. package/dist/standalone/build.js +26 -28
  54. package/dist/standalone/dsm-window.js +43 -17
  55. package/dist/standalone/inspect-spk.d.ts +9 -3
  56. package/dist/standalone/inspect-spk.js +64 -57
  57. package/dist/standalone/lifecycle.d.ts +1 -1
  58. package/dist/standalone/lifecycle.js +31 -27
  59. package/dist/standalone/manifest.d.ts +17 -14
  60. package/dist/standalone/manifest.js +77 -53
  61. package/dist/standalone/resource.d.ts +2 -2
  62. package/dist/standalone/resource.js +1 -1
  63. package/dist/standalone/root-ops.d.ts +1 -28
  64. package/dist/standalone/root-ops.js +1 -58
  65. package/dist/standalone/root-window.d.ts +5 -38
  66. package/dist/standalone/root-window.js +116 -399
  67. package/dist/standalone/spk.d.ts +3 -3
  68. package/dist/standalone/spk.js +25 -36
  69. package/dist/templates/_executor/README.md +204 -0
  70. package/dist/templates/_executor/apppriv_review_test.go +28 -0
  71. package/dist/templates/_executor/auth_presence_review_test.go +38 -0
  72. package/dist/templates/_executor/cmd/lifecycle/main.go +42 -0
  73. package/dist/templates/_executor/cookie_review_test.go +27 -0
  74. package/dist/templates/_executor/digest_review_test.go +120 -0
  75. package/dist/templates/_executor/directories.go +40 -0
  76. package/dist/templates/_executor/dsm.go +319 -0
  77. package/dist/templates/_executor/dsm_test.go +196 -0
  78. package/dist/templates/_executor/executor.go +524 -0
  79. package/dist/templates/_executor/executor_test.go +284 -0
  80. package/dist/templates/_executor/go.mod +3 -0
  81. package/dist/templates/_executor/identity.go +48 -0
  82. package/dist/templates/_executor/internal/lifecycle/lifecycle.go +90 -0
  83. package/dist/templates/_executor/internal/lifecycle/lifecycle_test.go +174 -0
  84. package/dist/templates/_executor/internal/taskscript/boot.sh +31 -0
  85. package/dist/templates/_executor/internal/taskscript/cmd/main.go +19 -0
  86. package/dist/templates/_executor/internal/taskscript/control.sh +26 -0
  87. package/dist/templates/_executor/internal/taskscript/tasks.go +42 -0
  88. package/dist/templates/_executor/json_review_test.go +40 -0
  89. package/dist/templates/_executor/lifecycle_test.go +86 -0
  90. package/dist/templates/_executor/main.go +518 -0
  91. package/dist/templates/_executor/managed.go +117 -0
  92. package/dist/templates/_executor/managed_test.go +137 -0
  93. package/dist/templates/_executor/path_test.go +17 -0
  94. package/dist/templates/_executor/platform_linux.go +336 -0
  95. package/dist/templates/_executor/platform_linux_test.go +247 -0
  96. package/dist/templates/_executor/platform_other.go +42 -0
  97. package/dist/templates/_executor/process.go +139 -0
  98. package/dist/templates/_executor/socket_linux_test.go +46 -0
  99. package/dist/templates/_executor/store.go +90 -0
  100. package/dist/templates/_executor/task_race_review_test.go +47 -0
  101. package/dist/templates/_executor/tasks.go +283 -0
  102. package/dist/templates/_executor/tasks_review_test.go +43 -0
  103. package/dist/templates/_executor/tasks_test.go +166 -0
  104. package/dist/templates/_executor/testdata/evidence/cleanup.json +24 -0
  105. package/dist/templates/_executor/testdata/evidence/final-smoke.jsonl +9 -0
  106. package/dist/templates/_executor/testdata/evidence/kernel-acl.json +6 -0
  107. package/dist/templates/_executor/testdata/evidence/linux-tests.log +123 -0
  108. package/dist/templates/_executor/testdata/evidence/live.jsonl +23 -0
  109. package/dist/templates/_executor/testdata/evidence/storage.json +90 -0
  110. package/dist/templates/_executor/testdata/evidence/validation.json +55 -0
  111. package/dist/templates/_executor/testdata/live_probe.py +98 -0
  112. package/dist/templates/_executor/upgrade_watch_test.go +236 -0
  113. package/dist/templates/_executor/watch.go +156 -0
  114. package/dist/templates/_executor/watch_test.go +270 -0
  115. package/dist/templates/_executor/write_review_linux_test.go +95 -0
  116. package/dist/templates/_shared/AGENTS.md +17 -0
  117. package/dist/templates/_shared/CLAUDE.md +1 -0
  118. package/dist/templates/binary/LICENSES/GO-LICENSE +27 -0
  119. package/dist/templates/binary/LICENSES/GO-PATENTS +22 -0
  120. package/dist/templates/binary/dsm-package.yaml +19 -0
  121. package/dist/templates/binary/example/main.go +16 -0
  122. package/dist/templates/binary/gitignore +2 -0
  123. package/dist/templates/binary/ui/app.css +4 -0
  124. package/dist/templates/binary/ui/app.js +17 -0
  125. package/dist/templates/native-go/README.md +129 -116
  126. package/dist/templates/native-go/backend/THIRD_PARTY_NOTICES.txt +1 -1
  127. package/dist/templates/native-go/backend/cmd/app/main.go +30 -21
  128. package/dist/templates/native-go/backend/internal/api/cgi_framing_test.go +32 -0
  129. package/dist/templates/native-go/backend/internal/api/cookie_review_test.go +28 -0
  130. package/dist/templates/native-go/backend/internal/api/deadline_test.go +114 -0
  131. package/dist/templates/native-go/backend/internal/api/dsm-session.go +54 -0
  132. package/dist/templates/native-go/backend/internal/api/dsm-session_test.go +51 -0
  133. package/dist/templates/native-go/backend/internal/api/errors.go +14 -0
  134. package/dist/templates/native-go/backend/internal/api/permissions.go +161 -0
  135. package/dist/templates/native-go/backend/internal/api/permissions.json +5 -0
  136. package/dist/templates/native-go/backend/internal/api/permissions_test.go +113 -0
  137. package/dist/templates/native-go/backend/internal/api/policy_fixture_test.go +8 -0
  138. package/dist/templates/native-go/backend/internal/api/registry.go +48 -32
  139. package/dist/templates/native-go/backend/internal/api/registry_test.go +16 -1
  140. package/dist/templates/native-go/backend/internal/api/resource_limits_test.go +87 -0
  141. package/dist/templates/native-go/backend/internal/api/sdk-permissions.json +46 -0
  142. package/dist/templates/native-go/backend/internal/api/sdk_policy_test.go +31 -0
  143. package/dist/templates/native-go/backend/internal/api/server.go +135 -8
  144. package/dist/templates/native-go/backend/internal/api/testdata/permissions-cases.json +172 -0
  145. package/dist/templates/native-go/backend/internal/app/background.go +23 -44
  146. package/dist/templates/native-go/backend/internal/app/background_owner.go +0 -21
  147. package/dist/templates/native-go/backend/internal/app/background_owner_test.go +40 -22
  148. package/dist/templates/native-go/backend/internal/app/background_schedule.go +0 -5
  149. package/dist/templates/native-go/backend/internal/app/background_schedule_test.go +1 -1
  150. package/dist/templates/native-go/backend/internal/app/background_test.go +15 -41
  151. package/dist/templates/native-go/backend/internal/app/delegate_none.go +5 -0
  152. package/dist/templates/native-go/backend/internal/app/identity.go +20 -0
  153. package/dist/templates/native-go/backend/internal/app/identity_test.go +15 -0
  154. package/dist/templates/native-go/backend/internal/app/routes.go +15 -36
  155. package/dist/templates/native-go/backend/internal/app/routes_test.go +16 -40
  156. package/dist/templates/native-go/backend/internal/app/session_files.go +4 -10
  157. package/dist/templates/native-go/backend/internal/app/session_files_test.go +8 -20
  158. package/dist/templates/native-go/backend/internal/app/shared_folder_test.go +4 -4
  159. package/dist/templates/native-go/backend/internal/background/lock_test.go +131 -0
  160. package/dist/templates/native-go/backend/internal/background/owner_test.go +12 -20
  161. package/dist/templates/native-go/backend/internal/background/runner_test.go +1 -1
  162. package/dist/templates/native-go/backend/internal/background/schedule.go +53 -17
  163. package/dist/templates/native-go/backend/internal/background/schedule_test.go +42 -9
  164. package/dist/templates/native-go/backend/internal/background/store.go +115 -99
  165. package/dist/templates/native-go/backend/internal/background/store_test.go +10 -52
  166. package/dist/templates/native-go/backend/internal/dsm/admin.go +70 -0
  167. package/dist/templates/native-go/backend/internal/dsm/admin_linux.go +80 -0
  168. package/dist/templates/native-go/backend/internal/dsm/admin_linux_test.go +49 -0
  169. package/dist/templates/native-go/backend/internal/dsm/admin_other.go +12 -0
  170. package/dist/templates/native-go/backend/internal/dsm/admin_test.go +67 -0
  171. package/dist/templates/native-go/backend/internal/dsm/auth.go +24 -48
  172. package/dist/templates/native-go/backend/internal/dsm/auth_test.go +43 -23
  173. package/dist/templates/native-go/backend/internal/dsm/native/admin-aarch64.elf +0 -0
  174. package/dist/templates/native-go/backend/internal/dsm/native/admin-x86_64.elf +0 -0
  175. package/dist/templates/native-go/backend/internal/dsm/native/admin_check.c +28 -0
  176. package/dist/templates/native-go/backend/internal/dsm/native/build.sh +9 -0
  177. package/dist/templates/native-go/backend/internal/dsm/native/licenses/GLIBC-NOTICES.txt +400 -0
  178. package/dist/templates/native-go/backend/internal/dsm/native/licenses/LGPL-2.1.txt +501 -0
  179. package/dist/templates/native-go/backend/internal/dsm/native/licenses/SOURCE.txt +5 -0
  180. package/dist/templates/native-go/backend/internal/dsm/native/licenses/ZIG-MIT.txt +21 -0
  181. package/dist/templates/native-go/backend/internal/dsm/native/provenance.json +12 -0
  182. package/dist/templates/native-go/backend/internal/filestation/client.go +68 -18
  183. package/dist/templates/native-go/backend/internal/filestation/client_test.go +7 -7
  184. package/dist/templates/native-go/backend/internal/filestation/doc.go +1 -1
  185. package/dist/templates/native-go/backend/internal/filestation/http.go +70 -0
  186. package/dist/templates/native-go/backend/internal/filestation/http_test.go +188 -0
  187. package/dist/templates/native-go/backend/internal/filestation/operations_test.go +206 -0
  188. package/dist/templates/native-go/backend/internal/filestation/read_file_test.go +2 -3
  189. package/dist/templates/native-go/backend/internal/filestation/service.go +117 -117
  190. package/dist/templates/native-go/backend/internal/filestation/service_test.go +30 -50
  191. package/dist/templates/native-go/backend/internal/filestation/upload_stream.go +76 -0
  192. package/dist/templates/native-go/backend/internal/filestation/upload_stream_test.go +77 -0
  193. package/dist/templates/native-go/backend/internal/filestation/write.go +0 -40
  194. package/dist/templates/native-go/backend/internal/filestation/write_test.go +6 -5
  195. package/dist/templates/native-go/backend/internal/identity/README.md +55 -0
  196. package/dist/templates/native-go/backend/internal/identity/dsm.go +96 -0
  197. package/dist/templates/native-go/backend/internal/identity/http.go +291 -0
  198. package/dist/templates/native-go/backend/internal/identity/identity_test.go +483 -0
  199. package/dist/templates/native-go/backend/internal/identity/service.go +159 -0
  200. package/dist/templates/native-go/backend/internal/identity/store.go +109 -0
  201. package/dist/templates/native-go/backend/internal/jsonlimits/limits.go +48 -0
  202. package/dist/templates/native-go/backend/internal/jsonlimits/limits_test.go +52 -0
  203. package/dist/templates/native-go/dsm-package.yaml +9 -18
  204. package/dist/templates/native-go-delegate/DELEGATE.md +142 -0
  205. package/dist/templates/native-go-delegate/backend/cmd/background-worker/main.go +41 -0
  206. package/dist/templates/native-go-delegate/backend/internal/app/delegate.go +15 -0
  207. package/dist/templates/native-go-delegate/backend/internal/app/delegate_on.go +5 -0
  208. package/dist/templates/native-go-delegate/backend/internal/app/delegate_routes_test.go +17 -0
  209. package/dist/templates/native-go-delegate/backend/internal/background/delegate_review_test.go +174 -0
  210. package/dist/templates/native-go-delegate/backend/internal/background/delegated.go +277 -0
  211. package/dist/templates/native-go-delegate/backend/internal/background/delegated_test.go +34 -0
  212. package/dist/templates/native-go-delegate/backend/internal/delegate/busy_review_test.go +15 -0
  213. package/dist/templates/native-go-delegate/backend/internal/delegate/client.go +143 -0
  214. package/dist/templates/native-go-delegate/backend/internal/delegate/client_test.go +214 -0
  215. package/dist/templates/native-go-delegate/backend/internal/delegate/files.go +132 -0
  216. package/dist/templates/native-go-delegate/backend/internal/delegate/retry.go +106 -0
  217. package/dist/templates/native-go-delegate/backend/internal/delegate/retry_test.go +143 -0
  218. package/dist/templates/native-go-delegate/backend/internal/delegate/service.go +323 -0
  219. package/dist/templates/native-go-delegate/backend/internal/delegate/service_test.go +318 -0
  220. package/dist/templates/native-go-delegate/backend/internal/delegate/wait_cancel_test.go +101 -0
  221. package/dist/templates/native-go-delegate/backend/internal/delegate/worker.go +225 -0
  222. package/dist/templates/native-go-delegate/backend/internal/filestation/files.go +73 -0
  223. package/dist/templates/native-go-delegate/backend/internal/filestation/files_test.go +59 -0
  224. package/dist/templates/native-go-delegate/frontend/src/CapabilityPanels.vue +10 -0
  225. package/dist/templates/native-go-delegate/frontend/src/delegate/DelegatePanel.vue +70 -0
  226. package/dist/templates/native-go-delegate/frontend/src/delegate/copy.ts +9 -0
  227. package/dist/templates/native-go-delegate/frontend/src/delegate/i18n/waiting.json +11 -0
  228. package/dist/templates/native-go-delegate/frontend/test/delegate.test.ts +130 -0
  229. package/dist/templates/native-go-delegate/test-frontend.sh +12 -0
  230. package/dist/templates/native-go-delegate/test.sh +17 -0
  231. package/dist/templates/native-go-jobs/BACKGROUND.md +108 -0
  232. package/dist/templates/native-go-jobs/backend/internal/app/background_routes_test.go +90 -0
  233. package/dist/templates/native-go-jobs/frontend/src/background/BackgroundPanel.vue +170 -0
  234. package/dist/templates/native-go-jobs/frontend/src/background/i18n/de.json +75 -0
  235. package/dist/templates/native-go-jobs/frontend/src/background/i18n/en.json +75 -0
  236. package/dist/templates/native-go-jobs/frontend/src/background/i18n/es.json +75 -0
  237. package/dist/templates/native-go-jobs/frontend/src/background/i18n/fr.json +75 -0
  238. package/dist/templates/native-go-jobs/frontend/src/background/i18n/it.json +75 -0
  239. package/dist/templates/native-go-jobs/frontend/src/background/i18n/ja.json +75 -0
  240. package/dist/templates/native-go-jobs/frontend/src/background/i18n/ko.json +75 -0
  241. package/dist/templates/native-go-jobs/frontend/src/background/i18n/zh-CN.json +75 -0
  242. package/dist/templates/native-go-jobs/frontend/src/background/i18n/zh-TW.json +75 -0
  243. package/dist/templates/native-go-jobs/frontend/src/background/picker-provider.ts +12 -0
  244. package/dist/templates/native-go-jobs/frontend/src/background/request-key.ts +5 -0
  245. package/dist/templates/native-go-jobs/frontend/test/background.test.ts +208 -0
  246. package/dist/templates/native-go-root-ops/backend/internal/app/executor.go +112 -0
  247. package/dist/templates/native-go-root-ops/backend/internal/app/executor_test.go +53 -0
  248. package/dist/templates/native-go-root-ops/root/whoami.sh +3 -0
  249. package/dist/templates/native-go-vue/README.md +36 -248
  250. package/dist/templates/native-go-vue/frontend/DESIGN.md +20 -49
  251. package/dist/templates/native-go-vue/frontend/package-lock.json +278 -159
  252. package/dist/templates/native-go-vue/frontend/package.json +2 -2
  253. package/dist/templates/native-go-vue/frontend/src/App.vue +55 -151
  254. package/dist/templates/native-go-vue/frontend/src/CapabilityPanels.vue +6 -0
  255. package/dist/templates/native-go-vue/frontend/src/context.ts +3 -12
  256. package/dist/templates/native-go-vue/frontend/src/delegate/ExecutorSettings.vue +25 -0
  257. package/dist/templates/native-go-vue/frontend/src/delegate/copy.ts +4 -0
  258. package/dist/templates/native-go-vue/frontend/src/delegate/executor-setup.ts +18 -0
  259. package/dist/templates/native-go-vue/frontend/src/delegate/i18n/en.json +36 -0
  260. package/dist/templates/native-go-vue/frontend/src/delegate/i18n/zh-TW.json +36 -0
  261. package/dist/templates/native-go-vue/frontend/src/files/FileBrowser.vue +131 -0
  262. package/dist/templates/native-go-vue/frontend/src/files/FilesPage.vue +35 -0
  263. package/dist/templates/native-go-vue/frontend/src/files/files.test.ts +93 -0
  264. package/dist/templates/native-go-vue/frontend/src/files/provider.test.ts +48 -0
  265. package/dist/templates/native-go-vue/frontend/src/files/transfers.test.ts +27 -0
  266. package/dist/templates/native-go-vue/frontend/src/files/transfers.ts +25 -0
  267. package/dist/templates/native-go-vue/frontend/src/identity/DESIGN.md +46 -0
  268. package/dist/templates/native-go-vue/frontend/src/identity/LoginPage.vue +76 -0
  269. package/dist/templates/native-go-vue/frontend/src/identity/login.test.ts +32 -0
  270. package/dist/templates/native-go-vue/frontend/src/identity/session.test.ts +29 -0
  271. package/dist/templates/native-go-vue/frontend/src/identity/session.ts +73 -0
  272. package/dist/templates/native-go-vue/frontend/src/main.ts +7 -4
  273. package/dist/templates/native-go-vue/frontend/src/nas/NasPicker.vue +23 -0
  274. package/dist/templates/native-go-vue/frontend/src/nas/contract.ts +12 -0
  275. package/dist/templates/native-go-vue/frontend/src/nas/i18n/files/de.json +41 -0
  276. package/dist/templates/native-go-vue/frontend/src/nas/i18n/files/en.json +41 -0
  277. package/dist/templates/native-go-vue/frontend/src/nas/i18n/files/es.json +41 -0
  278. package/dist/templates/native-go-vue/frontend/src/nas/i18n/files/fr.json +41 -0
  279. package/dist/templates/native-go-vue/frontend/src/nas/i18n/files/it.json +41 -0
  280. package/dist/templates/native-go-vue/frontend/src/nas/i18n/files/ja.json +41 -0
  281. package/dist/templates/native-go-vue/frontend/src/nas/i18n/files/ko.json +41 -0
  282. package/dist/templates/native-go-vue/frontend/src/nas/i18n/files/zh-CN.json +41 -0
  283. package/dist/templates/native-go-vue/frontend/src/nas/i18n/files/zh-TW.json +41 -0
  284. package/dist/templates/native-go-vue/frontend/src/nas/i18n.ts +2 -38
  285. package/dist/templates/native-go-vue/frontend/src/nas/locale.ts +24 -0
  286. package/dist/templates/native-go-vue/frontend/src/nas/provider.ts +46 -55
  287. package/dist/templates/native-go-vue/frontend/src/nas/use-request.ts +13 -22
  288. package/dist/templates/native-go-vue/frontend/src/shell/AppShell.vue +3 -3
  289. package/dist/templates/native-go-vue/frontend/src/shell/i18n/de.json +1 -7
  290. package/dist/templates/native-go-vue/frontend/src/shell/i18n/en.json +1 -7
  291. package/dist/templates/native-go-vue/frontend/src/shell/i18n/es.json +1 -7
  292. package/dist/templates/native-go-vue/frontend/src/shell/i18n/fr.json +1 -7
  293. package/dist/templates/native-go-vue/frontend/src/shell/i18n/it.json +1 -7
  294. package/dist/templates/native-go-vue/frontend/src/shell/i18n/ja.json +1 -7
  295. package/dist/templates/native-go-vue/frontend/src/shell/i18n/ko.json +1 -7
  296. package/dist/templates/native-go-vue/frontend/src/shell/i18n/zh-CN.json +1 -7
  297. package/dist/templates/native-go-vue/frontend/src/shell/i18n/zh-TW.json +1 -7
  298. package/dist/templates/native-go-vue/frontend/src/shell/pages.ts +3 -22
  299. package/dist/templates/native-go-vue/frontend/test/apps.test.ts +33 -201
  300. package/dist/templates/native-go-vue/frontend/test/shell-ui.test.ts +15 -109
  301. package/dist/templates/native-go-vue/frontend/test/shell.test.ts +4 -19
  302. package/dist/templates/native-go-vue/frontend/vite.config.ts +2 -2
  303. package/dist/types.d.ts +1 -1
  304. package/dist/validate.js +27 -36
  305. package/package.json +1 -1
  306. package/skills/SKILL.md +21 -3
  307. package/skills/reference/create.md +16 -7
  308. package/skills/reference/deploy.md +5 -3
  309. package/skills/reference/diagnose.md +1 -1
  310. package/skills/reference/files.md +8 -6
  311. package/skills/reference/identity.md +9 -3
  312. package/skills/reference/ui-json.md +78 -0
  313. package/skills/reference/ui-vue.md +71 -0
  314. package/skills/reference/wrap.md +3 -4
  315. package/templates/_executor/README.md +204 -0
  316. package/templates/_executor/apppriv_review_test.go +28 -0
  317. package/templates/_executor/auth_presence_review_test.go +38 -0
  318. package/templates/_executor/cmd/lifecycle/main.go +42 -0
  319. package/templates/_executor/cookie_review_test.go +27 -0
  320. package/templates/_executor/digest_review_test.go +120 -0
  321. package/templates/_executor/directories.go +40 -0
  322. package/templates/_executor/dsm.go +319 -0
  323. package/templates/_executor/dsm_test.go +196 -0
  324. package/templates/_executor/executor.go +524 -0
  325. package/templates/_executor/executor_test.go +284 -0
  326. package/templates/_executor/go.mod +3 -0
  327. package/templates/_executor/identity.go +48 -0
  328. package/templates/_executor/internal/lifecycle/lifecycle.go +90 -0
  329. package/templates/_executor/internal/lifecycle/lifecycle_test.go +174 -0
  330. package/templates/_executor/internal/taskscript/boot.sh +31 -0
  331. package/templates/_executor/internal/taskscript/cmd/main.go +19 -0
  332. package/templates/_executor/internal/taskscript/control.sh +26 -0
  333. package/templates/_executor/internal/taskscript/tasks.go +42 -0
  334. package/templates/_executor/json_review_test.go +40 -0
  335. package/templates/_executor/lifecycle_test.go +86 -0
  336. package/templates/_executor/main.go +518 -0
  337. package/templates/_executor/managed.go +117 -0
  338. package/templates/_executor/managed_test.go +137 -0
  339. package/templates/_executor/path_test.go +17 -0
  340. package/templates/_executor/platform_linux.go +336 -0
  341. package/templates/_executor/platform_linux_test.go +247 -0
  342. package/templates/_executor/platform_other.go +42 -0
  343. package/templates/_executor/process.go +139 -0
  344. package/templates/_executor/socket_linux_test.go +46 -0
  345. package/templates/_executor/store.go +90 -0
  346. package/templates/_executor/task_race_review_test.go +47 -0
  347. package/templates/_executor/tasks.go +283 -0
  348. package/templates/_executor/tasks_review_test.go +43 -0
  349. package/templates/_executor/tasks_test.go +166 -0
  350. package/templates/_executor/testdata/evidence/cleanup.json +24 -0
  351. package/templates/_executor/testdata/evidence/final-smoke.jsonl +9 -0
  352. package/templates/_executor/testdata/evidence/kernel-acl.json +6 -0
  353. package/templates/_executor/testdata/evidence/linux-tests.log +123 -0
  354. package/templates/_executor/testdata/evidence/live.jsonl +23 -0
  355. package/templates/_executor/testdata/evidence/storage.json +90 -0
  356. package/templates/_executor/testdata/evidence/validation.json +55 -0
  357. package/templates/_executor/testdata/live_probe.py +98 -0
  358. package/templates/_executor/upgrade_watch_test.go +236 -0
  359. package/templates/_executor/watch.go +156 -0
  360. package/templates/_executor/watch_test.go +270 -0
  361. package/templates/_executor/write_review_linux_test.go +95 -0
  362. package/templates/_shared/AGENTS.md +17 -0
  363. package/templates/_shared/CLAUDE.md +1 -0
  364. package/templates/binary/LICENSES/GO-LICENSE +27 -0
  365. package/templates/binary/LICENSES/GO-PATENTS +22 -0
  366. package/templates/binary/dsm-package.yaml +19 -0
  367. package/templates/binary/example/main.go +16 -0
  368. package/templates/binary/gitignore +2 -0
  369. package/templates/binary/ui/app.css +4 -0
  370. package/templates/binary/ui/app.js +17 -0
  371. package/templates/native-go/README.md +129 -116
  372. package/templates/native-go/backend/THIRD_PARTY_NOTICES.txt +1 -1
  373. package/templates/native-go/backend/cmd/app/main.go +30 -21
  374. package/templates/native-go/backend/internal/api/cgi_framing_test.go +32 -0
  375. package/templates/native-go/backend/internal/api/cookie_review_test.go +28 -0
  376. package/templates/native-go/backend/internal/api/deadline_test.go +114 -0
  377. package/templates/native-go/backend/internal/api/dsm-session.go +54 -0
  378. package/templates/native-go/backend/internal/api/dsm-session_test.go +51 -0
  379. package/templates/native-go/backend/internal/api/errors.go +14 -0
  380. package/templates/native-go/backend/internal/api/permissions.go +161 -0
  381. package/templates/native-go/backend/internal/api/permissions.json +5 -0
  382. package/templates/native-go/backend/internal/api/permissions_test.go +113 -0
  383. package/templates/native-go/backend/internal/api/policy_fixture_test.go +8 -0
  384. package/templates/native-go/backend/internal/api/registry.go +48 -32
  385. package/templates/native-go/backend/internal/api/registry_test.go +16 -1
  386. package/templates/native-go/backend/internal/api/resource_limits_test.go +87 -0
  387. package/templates/native-go/backend/internal/api/sdk-permissions.json +46 -0
  388. package/templates/native-go/backend/internal/api/sdk_policy_test.go +31 -0
  389. package/templates/native-go/backend/internal/api/server.go +135 -8
  390. package/templates/native-go/backend/internal/api/testdata/permissions-cases.json +172 -0
  391. package/templates/native-go/backend/internal/app/background.go +23 -44
  392. package/templates/native-go/backend/internal/app/background_owner.go +0 -21
  393. package/templates/native-go/backend/internal/app/background_owner_test.go +40 -22
  394. package/templates/native-go/backend/internal/app/background_schedule.go +0 -5
  395. package/templates/native-go/backend/internal/app/background_schedule_test.go +1 -1
  396. package/templates/native-go/backend/internal/app/background_test.go +15 -41
  397. package/templates/native-go/backend/internal/app/delegate_none.go +5 -0
  398. package/templates/native-go/backend/internal/app/identity.go +20 -0
  399. package/templates/native-go/backend/internal/app/identity_test.go +15 -0
  400. package/templates/native-go/backend/internal/app/routes.go +15 -36
  401. package/templates/native-go/backend/internal/app/routes_test.go +16 -40
  402. package/templates/native-go/backend/internal/app/session_files.go +4 -10
  403. package/templates/native-go/backend/internal/app/session_files_test.go +8 -20
  404. package/templates/native-go/backend/internal/app/shared_folder_test.go +4 -4
  405. package/templates/native-go/backend/internal/background/lock_test.go +131 -0
  406. package/templates/native-go/backend/internal/background/owner_test.go +12 -20
  407. package/templates/native-go/backend/internal/background/runner_test.go +1 -1
  408. package/templates/native-go/backend/internal/background/schedule.go +53 -17
  409. package/templates/native-go/backend/internal/background/schedule_test.go +42 -9
  410. package/templates/native-go/backend/internal/background/store.go +115 -99
  411. package/templates/native-go/backend/internal/background/store_test.go +10 -52
  412. package/templates/native-go/backend/internal/dsm/admin.go +70 -0
  413. package/templates/native-go/backend/internal/dsm/admin_linux.go +80 -0
  414. package/templates/native-go/backend/internal/dsm/admin_linux_test.go +49 -0
  415. package/templates/native-go/backend/internal/dsm/admin_other.go +12 -0
  416. package/templates/native-go/backend/internal/dsm/admin_test.go +67 -0
  417. package/templates/native-go/backend/internal/dsm/auth.go +24 -48
  418. package/templates/native-go/backend/internal/dsm/auth_test.go +43 -23
  419. package/templates/native-go/backend/internal/dsm/native/admin-aarch64.elf +0 -0
  420. package/templates/native-go/backend/internal/dsm/native/admin-x86_64.elf +0 -0
  421. package/templates/native-go/backend/internal/dsm/native/admin_check.c +28 -0
  422. package/templates/native-go/backend/internal/dsm/native/build.sh +9 -0
  423. package/templates/native-go/backend/internal/dsm/native/licenses/GLIBC-NOTICES.txt +400 -0
  424. package/templates/native-go/backend/internal/dsm/native/licenses/LGPL-2.1.txt +501 -0
  425. package/templates/native-go/backend/internal/dsm/native/licenses/SOURCE.txt +5 -0
  426. package/templates/native-go/backend/internal/dsm/native/licenses/ZIG-MIT.txt +21 -0
  427. package/templates/native-go/backend/internal/dsm/native/provenance.json +12 -0
  428. package/templates/native-go/backend/internal/filestation/client.go +68 -18
  429. package/templates/native-go/backend/internal/filestation/client_test.go +7 -7
  430. package/templates/native-go/backend/internal/filestation/doc.go +1 -1
  431. package/templates/native-go/backend/internal/filestation/http.go +70 -0
  432. package/templates/native-go/backend/internal/filestation/http_test.go +188 -0
  433. package/templates/native-go/backend/internal/filestation/operations_test.go +206 -0
  434. package/templates/native-go/backend/internal/filestation/read_file_test.go +2 -3
  435. package/templates/native-go/backend/internal/filestation/service.go +117 -117
  436. package/templates/native-go/backend/internal/filestation/service_test.go +30 -50
  437. package/templates/native-go/backend/internal/filestation/upload_stream.go +76 -0
  438. package/templates/native-go/backend/internal/filestation/upload_stream_test.go +77 -0
  439. package/templates/native-go/backend/internal/filestation/write.go +0 -40
  440. package/templates/native-go/backend/internal/filestation/write_test.go +6 -5
  441. package/templates/native-go/backend/internal/identity/README.md +55 -0
  442. package/templates/native-go/backend/internal/identity/dsm.go +96 -0
  443. package/templates/native-go/backend/internal/identity/http.go +291 -0
  444. package/templates/native-go/backend/internal/identity/identity_test.go +483 -0
  445. package/templates/native-go/backend/internal/identity/service.go +159 -0
  446. package/templates/native-go/backend/internal/identity/store.go +109 -0
  447. package/templates/native-go/backend/internal/jsonlimits/limits.go +48 -0
  448. package/templates/native-go/backend/internal/jsonlimits/limits_test.go +52 -0
  449. package/templates/native-go/dsm-package.yaml +9 -18
  450. package/templates/native-go-delegate/DELEGATE.md +142 -0
  451. package/templates/native-go-delegate/backend/cmd/background-worker/main.go +41 -0
  452. package/templates/native-go-delegate/backend/internal/app/delegate.go +15 -0
  453. package/templates/native-go-delegate/backend/internal/app/delegate_on.go +5 -0
  454. package/templates/native-go-delegate/backend/internal/app/delegate_routes_test.go +17 -0
  455. package/templates/native-go-delegate/backend/internal/background/delegate_review_test.go +174 -0
  456. package/templates/native-go-delegate/backend/internal/background/delegated.go +277 -0
  457. package/templates/native-go-delegate/backend/internal/background/delegated_test.go +34 -0
  458. package/templates/native-go-delegate/backend/internal/delegate/busy_review_test.go +15 -0
  459. package/templates/native-go-delegate/backend/internal/delegate/client.go +143 -0
  460. package/templates/native-go-delegate/backend/internal/delegate/client_test.go +214 -0
  461. package/templates/native-go-delegate/backend/internal/delegate/files.go +132 -0
  462. package/templates/native-go-delegate/backend/internal/delegate/retry.go +106 -0
  463. package/templates/native-go-delegate/backend/internal/delegate/retry_test.go +143 -0
  464. package/templates/native-go-delegate/backend/internal/delegate/service.go +323 -0
  465. package/templates/native-go-delegate/backend/internal/delegate/service_test.go +318 -0
  466. package/templates/native-go-delegate/backend/internal/delegate/wait_cancel_test.go +101 -0
  467. package/templates/native-go-delegate/backend/internal/delegate/worker.go +225 -0
  468. package/templates/native-go-delegate/backend/internal/filestation/files.go +73 -0
  469. package/templates/native-go-delegate/backend/internal/filestation/files_test.go +59 -0
  470. package/templates/native-go-delegate/frontend/src/CapabilityPanels.vue +10 -0
  471. package/templates/native-go-delegate/frontend/src/delegate/DelegatePanel.vue +70 -0
  472. package/templates/native-go-delegate/frontend/src/delegate/copy.ts +9 -0
  473. package/templates/native-go-delegate/frontend/src/delegate/i18n/waiting.json +11 -0
  474. package/templates/native-go-delegate/frontend/test/delegate.test.ts +130 -0
  475. package/templates/native-go-delegate/test-frontend.sh +12 -0
  476. package/templates/native-go-delegate/test.sh +17 -0
  477. package/templates/native-go-jobs/BACKGROUND.md +108 -0
  478. package/templates/native-go-jobs/backend/internal/app/background_routes_test.go +90 -0
  479. package/templates/native-go-jobs/frontend/src/background/BackgroundPanel.vue +170 -0
  480. package/templates/native-go-jobs/frontend/src/background/i18n/de.json +75 -0
  481. package/templates/native-go-jobs/frontend/src/background/i18n/en.json +75 -0
  482. package/templates/native-go-jobs/frontend/src/background/i18n/es.json +75 -0
  483. package/templates/native-go-jobs/frontend/src/background/i18n/fr.json +75 -0
  484. package/templates/native-go-jobs/frontend/src/background/i18n/it.json +75 -0
  485. package/templates/native-go-jobs/frontend/src/background/i18n/ja.json +75 -0
  486. package/templates/native-go-jobs/frontend/src/background/i18n/ko.json +75 -0
  487. package/templates/native-go-jobs/frontend/src/background/i18n/zh-CN.json +75 -0
  488. package/templates/native-go-jobs/frontend/src/background/i18n/zh-TW.json +75 -0
  489. package/templates/native-go-jobs/frontend/src/background/picker-provider.ts +12 -0
  490. package/templates/native-go-jobs/frontend/src/background/request-key.ts +5 -0
  491. package/templates/native-go-jobs/frontend/test/background.test.ts +208 -0
  492. package/templates/native-go-root-ops/backend/internal/app/executor.go +112 -0
  493. package/templates/native-go-root-ops/backend/internal/app/executor_test.go +53 -0
  494. package/templates/native-go-root-ops/root/whoami.sh +3 -0
  495. package/templates/native-go-vue/README.md +36 -248
  496. package/templates/native-go-vue/frontend/DESIGN.md +20 -49
  497. package/templates/native-go-vue/frontend/package-lock.json +278 -159
  498. package/templates/native-go-vue/frontend/package.json +2 -2
  499. package/templates/native-go-vue/frontend/src/App.vue +55 -151
  500. package/templates/native-go-vue/frontend/src/CapabilityPanels.vue +6 -0
  501. package/templates/native-go-vue/frontend/src/context.ts +3 -12
  502. package/templates/native-go-vue/frontend/src/delegate/ExecutorSettings.vue +25 -0
  503. package/templates/native-go-vue/frontend/src/delegate/copy.ts +4 -0
  504. package/templates/native-go-vue/frontend/src/delegate/executor-setup.ts +18 -0
  505. package/templates/native-go-vue/frontend/src/delegate/i18n/en.json +36 -0
  506. package/templates/native-go-vue/frontend/src/delegate/i18n/zh-TW.json +36 -0
  507. package/templates/native-go-vue/frontend/src/files/FileBrowser.vue +131 -0
  508. package/templates/native-go-vue/frontend/src/files/FilesPage.vue +35 -0
  509. package/templates/native-go-vue/frontend/src/files/files.test.ts +93 -0
  510. package/templates/native-go-vue/frontend/src/files/provider.test.ts +48 -0
  511. package/templates/native-go-vue/frontend/src/files/transfers.test.ts +27 -0
  512. package/templates/native-go-vue/frontend/src/files/transfers.ts +25 -0
  513. package/templates/native-go-vue/frontend/src/identity/DESIGN.md +46 -0
  514. package/templates/native-go-vue/frontend/src/identity/LoginPage.vue +76 -0
  515. package/templates/native-go-vue/frontend/src/identity/login.test.ts +32 -0
  516. package/templates/native-go-vue/frontend/src/identity/session.test.ts +29 -0
  517. package/templates/native-go-vue/frontend/src/identity/session.ts +73 -0
  518. package/templates/native-go-vue/frontend/src/main.ts +7 -4
  519. package/templates/native-go-vue/frontend/src/nas/NasPicker.vue +23 -0
  520. package/templates/native-go-vue/frontend/src/nas/contract.ts +12 -0
  521. package/templates/native-go-vue/frontend/src/nas/i18n/files/de.json +41 -0
  522. package/templates/native-go-vue/frontend/src/nas/i18n/files/en.json +41 -0
  523. package/templates/native-go-vue/frontend/src/nas/i18n/files/es.json +41 -0
  524. package/templates/native-go-vue/frontend/src/nas/i18n/files/fr.json +41 -0
  525. package/templates/native-go-vue/frontend/src/nas/i18n/files/it.json +41 -0
  526. package/templates/native-go-vue/frontend/src/nas/i18n/files/ja.json +41 -0
  527. package/templates/native-go-vue/frontend/src/nas/i18n/files/ko.json +41 -0
  528. package/templates/native-go-vue/frontend/src/nas/i18n/files/zh-CN.json +41 -0
  529. package/templates/native-go-vue/frontend/src/nas/i18n/files/zh-TW.json +41 -0
  530. package/templates/native-go-vue/frontend/src/nas/i18n.ts +2 -38
  531. package/templates/native-go-vue/frontend/src/nas/locale.ts +24 -0
  532. package/templates/native-go-vue/frontend/src/nas/provider.ts +46 -55
  533. package/templates/native-go-vue/frontend/src/nas/use-request.ts +13 -22
  534. package/templates/native-go-vue/frontend/src/shell/AppShell.vue +3 -3
  535. package/templates/native-go-vue/frontend/src/shell/i18n/de.json +1 -7
  536. package/templates/native-go-vue/frontend/src/shell/i18n/en.json +1 -7
  537. package/templates/native-go-vue/frontend/src/shell/i18n/es.json +1 -7
  538. package/templates/native-go-vue/frontend/src/shell/i18n/fr.json +1 -7
  539. package/templates/native-go-vue/frontend/src/shell/i18n/it.json +1 -7
  540. package/templates/native-go-vue/frontend/src/shell/i18n/ja.json +1 -7
  541. package/templates/native-go-vue/frontend/src/shell/i18n/ko.json +1 -7
  542. package/templates/native-go-vue/frontend/src/shell/i18n/zh-CN.json +1 -7
  543. package/templates/native-go-vue/frontend/src/shell/i18n/zh-TW.json +1 -7
  544. package/templates/native-go-vue/frontend/src/shell/pages.ts +3 -22
  545. package/templates/native-go-vue/frontend/test/apps.test.ts +33 -201
  546. package/templates/native-go-vue/frontend/test/shell-ui.test.ts +15 -109
  547. package/templates/native-go-vue/frontend/test/shell.test.ts +4 -19
  548. package/templates/native-go-vue/frontend/vite.config.ts +2 -2
  549. package/dist/build-spk/native-payload.d.ts +0 -37
  550. package/dist/build-spk/native-payload.js +0 -679
  551. package/dist/native/load.d.ts +0 -8
  552. package/dist/native/load.js +0 -11
  553. package/dist/native/types.d.ts +0 -28
  554. package/dist/native/types.js +0 -3
  555. package/dist/native/validate.d.ts +0 -6
  556. package/dist/native/validate.js +0 -143
  557. package/dist/standalone/helper-inventory.d.ts +0 -31
  558. package/dist/standalone/helper-inventory.js +0 -11
  559. package/dist/standalone/helper.d.ts +0 -22
  560. package/dist/standalone/helper.js +0 -123
  561. package/dist/standalone/inspect-helper.d.ts +0 -6
  562. package/dist/standalone/inspect-helper.js +0 -93
  563. package/dist/standalone/job-diagnostics.d.ts +0 -1
  564. package/dist/standalone/job-diagnostics.js +0 -49
  565. package/dist/standalone/lifecycle-helper.d.ts +0 -2
  566. package/dist/standalone/lifecycle-helper.js +0 -12
  567. package/dist/standalone/native-layout.d.ts +0 -74
  568. package/dist/standalone/native-layout.js +0 -318
  569. package/dist/standalone/root-messages.d.ts +0 -7
  570. package/dist/standalone/root-messages.js +0 -259
  571. package/dist/standalone/worker-contract-json.d.ts +0 -8
  572. package/dist/standalone/worker-contract-json.js +0 -141
  573. package/dist/standalone/worker-contract.d.ts +0 -189
  574. package/dist/standalone/worker-contract.js +0 -175
  575. package/dist/standalone/worker-registry.d.ts +0 -40
  576. package/dist/standalone/worker-registry.js +0 -167
  577. package/dist/templates/_shared/notice-overrides/index.json +0 -14
  578. package/dist/templates/_shared/notice-overrides/utils-0.4.2-LICENSE +0 -21
  579. package/dist/templates/_shared/notice-overrides/utils-0.5.0-LICENSE +0 -21
  580. package/dist/templates/binary/native.yaml +0 -16
  581. package/dist/templates/binary/synology-app.yaml +0 -7
  582. package/dist/templates/compose-import/compose.yaml +0 -10
  583. package/dist/templates/compose-import/synology-app.yaml +0 -15
  584. package/dist/templates/hello-web/compose.yaml +0 -24
  585. package/dist/templates/hello-web/html/app.js +0 -1
  586. package/dist/templates/hello-web/html/index.html +0 -13
  587. package/dist/templates/hello-web/synology-app.yaml +0 -16
  588. package/dist/templates/hello-web-page/compose.yaml +0 -24
  589. package/dist/templates/hello-web-page/html/app.js +0 -1
  590. package/dist/templates/hello-web-page/html/index.html +0 -13
  591. package/dist/templates/hello-web-page/synology-app.yaml +0 -16
  592. package/dist/templates/native-go/backend/cmd/app/sdk_main.go +0 -60
  593. package/dist/templates/native-go/backend/cmd/dsm-readonly-probe/main_linux.go +0 -46
  594. package/dist/templates/native-go/backend/cmd/helper/main.go +0 -47
  595. package/dist/templates/native-go/backend/cmd/helper/sdk_registry.go +0 -19
  596. package/dist/templates/native-go/backend/internal/api/binary.go +0 -154
  597. package/dist/templates/native-go/backend/internal/api/binary_test.go +0 -165
  598. package/dist/templates/native-go/backend/internal/app/integration_state.go +0 -16
  599. package/dist/templates/native-go/backend/internal/app/nas_cgi_artifact_test.go +0 -129
  600. package/dist/templates/native-go/backend/internal/app/nas_refusal_test.go +0 -46
  601. package/dist/templates/native-go/backend/internal/app/sdk_jobs.go +0 -70
  602. package/dist/templates/native-go/backend/internal/app/sdk_jobs_test.go +0 -116
  603. package/dist/templates/native-go/backend/internal/app/sdk_routes.go +0 -174
  604. package/dist/templates/native-go/backend/internal/dsmprobe/collector_linux.go +0 -335
  605. package/dist/templates/native-go/backend/internal/dsmprobe/collector_linux_test.go +0 -41
  606. package/dist/templates/native-go/backend/internal/dsmprobe/protocol.go +0 -179
  607. package/dist/templates/native-go/backend/internal/dsmprobe/protocol_test.go +0 -29
  608. package/dist/templates/native-go/backend/internal/filestation/repository.go +0 -207
  609. package/dist/templates/native-go/backend/internal/filestation/repository_test.go +0 -104
  610. package/dist/templates/native-go/backend/internal/filestation/sdk_session.go +0 -241
  611. package/dist/templates/native-go/backend/internal/filestation/sdk_session_test.go +0 -183
  612. package/dist/templates/native-go/backend/internal/filestation/session_semantics_test.go +0 -383
  613. package/dist/templates/native-go/backend/internal/helper/background_proof.go +0 -163
  614. package/dist/templates/native-go/backend/internal/helper/background_proof_contract.go +0 -46
  615. package/dist/templates/native-go/backend/internal/helper/background_proof_test.go +0 -161
  616. package/dist/templates/native-go/backend/internal/helper/cohort.go +0 -393
  617. package/dist/templates/native-go/backend/internal/helper/cohort_publication.go +0 -18
  618. package/dist/templates/native-go/backend/internal/helper/cohort_publication_test.go +0 -105
  619. package/dist/templates/native-go/backend/internal/helper/cohort_test.go +0 -372
  620. package/dist/templates/native-go/backend/internal/helper/control.go +0 -424
  621. package/dist/templates/native-go/backend/internal/helper/control_test.go +0 -250
  622. package/dist/templates/native-go/backend/internal/helper/data_contract.go +0 -245
  623. package/dist/templates/native-go/backend/internal/helper/data_contract_test.go +0 -51
  624. package/dist/templates/native-go/backend/internal/helper/data_decode.go +0 -184
  625. package/dist/templates/native-go/backend/internal/helper/data_decode_pointer_test.go +0 -30
  626. package/dist/templates/native-go/backend/internal/helper/data_protocol.go +0 -419
  627. package/dist/templates/native-go/backend/internal/helper/data_protocol_test.go +0 -449
  628. package/dist/templates/native-go/backend/internal/helper/dsm_acl_linux.go +0 -139
  629. package/dist/templates/native-go/backend/internal/helper/dsm_acl_linux_test.go +0 -121
  630. package/dist/templates/native-go/backend/internal/helper/dsm_acl_syscall_linux.go +0 -95
  631. package/dist/templates/native-go/backend/internal/helper/dsm_acl_syscall_linux_test.go +0 -56
  632. package/dist/templates/native-go/backend/internal/helper/dsm_bridge_linux.go +0 -144
  633. package/dist/templates/native-go/backend/internal/helper/dsm_bridge_linux_test.go +0 -89
  634. package/dist/templates/native-go/backend/internal/helper/dsm_home_linux.go +0 -107
  635. package/dist/templates/native-go/backend/internal/helper/dsm_home_linux_test.go +0 -82
  636. package/dist/templates/native-go/backend/internal/helper/dsm_probe_transport_linux.go +0 -151
  637. package/dist/templates/native-go/backend/internal/helper/dsm_probe_transport_linux_test.go +0 -66
  638. package/dist/templates/native-go/backend/internal/helper/grant_authority.go +0 -519
  639. package/dist/templates/native-go/backend/internal/helper/grant_authority_contract.go +0 -88
  640. package/dist/templates/native-go/backend/internal/helper/grant_authority_test.go +0 -510
  641. package/dist/templates/native-go/backend/internal/helper/grant_cohort.go +0 -389
  642. package/dist/templates/native-go/backend/internal/helper/grant_cohort_test.go +0 -239
  643. package/dist/templates/native-go/backend/internal/helper/grant_delivery.go +0 -49
  644. package/dist/templates/native-go/backend/internal/helper/grant_delivery_methods.go +0 -273
  645. package/dist/templates/native-go/backend/internal/helper/grant_delivery_test.go +0 -322
  646. package/dist/templates/native-go/backend/internal/helper/grant_operation_contract.go +0 -47
  647. package/dist/templates/native-go/backend/internal/helper/grant_readonly_test.go +0 -180
  648. package/dist/templates/native-go/backend/internal/helper/grant_repository_linux.go +0 -416
  649. package/dist/templates/native-go/backend/internal/helper/grant_repository_linux_test.go +0 -469
  650. package/dist/templates/native-go/backend/internal/helper/grant_rpc.go +0 -147
  651. package/dist/templates/native-go/backend/internal/helper/grant_rpc_test.go +0 -51
  652. package/dist/templates/native-go/backend/internal/helper/grant_snapshot.go +0 -78
  653. package/dist/templates/native-go/backend/internal/helper/grant_supervisor_linux.go +0 -134
  654. package/dist/templates/native-go/backend/internal/helper/grant_supervisor_linux_test.go +0 -254
  655. package/dist/templates/native-go/backend/internal/helper/jobcontract/bindings.go +0 -48
  656. package/dist/templates/native-go/backend/internal/helper/jobcontract/contract_test.go +0 -436
  657. package/dist/templates/native-go/backend/internal/helper/jobcontract/decode.go +0 -185
  658. package/dist/templates/native-go/backend/internal/helper/jobcontract/digest.go +0 -55
  659. package/dist/templates/native-go/backend/internal/helper/jobcontract/registry.go +0 -85
  660. package/dist/templates/native-go/backend/internal/helper/jobcontract/registry_test.go +0 -73
  661. package/dist/templates/native-go/backend/internal/helper/jobcontract/result.go +0 -53
  662. package/dist/templates/native-go/backend/internal/helper/jobcontract/stub.go +0 -8
  663. package/dist/templates/native-go/backend/internal/helper/jobcontract/testdata/input-digests.json +0 -127
  664. package/dist/templates/native-go/backend/internal/helper/jobcontract/types.go +0 -234
  665. package/dist/templates/native-go/backend/internal/helper/jobcontract/types_test.go +0 -29
  666. package/dist/templates/native-go/backend/internal/helper/jobcontract/validate.go +0 -462
  667. package/dist/templates/native-go/backend/internal/helper/lease.go +0 -112
  668. package/dist/templates/native-go/backend/internal/helper/lease_linux.go +0 -44
  669. package/dist/templates/native-go/backend/internal/helper/lease_other.go +0 -8
  670. package/dist/templates/native-go/backend/internal/helper/legacy_authority_schema_linux_test.go +0 -34
  671. package/dist/templates/native-go/backend/internal/helper/legacy_authority_schema_test.go +0 -6
  672. package/dist/templates/native-go/backend/internal/helper/lifecycle.go +0 -234
  673. package/dist/templates/native-go/backend/internal/helper/lifecycle_test.go +0 -473
  674. package/dist/templates/native-go/backend/internal/helper/managed_pilot.go +0 -284
  675. package/dist/templates/native-go/backend/internal/helper/managed_pilot_repository_linux.go +0 -74
  676. package/dist/templates/native-go/backend/internal/helper/managed_pilot_repository_linux_test.go +0 -40
  677. package/dist/templates/native-go/backend/internal/helper/managed_pilot_test.go +0 -210
  678. package/dist/templates/native-go/backend/internal/helper/management.go +0 -79
  679. package/dist/templates/native-go/backend/internal/helper/nas_shipped_refusal_linux_test.go +0 -97
  680. package/dist/templates/native-go/backend/internal/helper/native_discovery.go +0 -79
  681. package/dist/templates/native-go/backend/internal/helper/native_identity.go +0 -89
  682. package/dist/templates/native-go/backend/internal/helper/native_provider.go +0 -159
  683. package/dist/templates/native-go/backend/internal/helper/native_provider_test.go +0 -421
  684. package/dist/templates/native-go/backend/internal/helper/observation.go +0 -244
  685. package/dist/templates/native-go/backend/internal/helper/observation_health_test.go +0 -127
  686. package/dist/templates/native-go/backend/internal/helper/observation_reload_budget_test.go +0 -117
  687. package/dist/templates/native-go/backend/internal/helper/observation_test.go +0 -196
  688. package/dist/templates/native-go/backend/internal/helper/observer_diagnostic.go +0 -155
  689. package/dist/templates/native-go/backend/internal/helper/observer_diagnostic_linux.go +0 -76
  690. package/dist/templates/native-go/backend/internal/helper/observer_diagnostic_linux_test.go +0 -130
  691. package/dist/templates/native-go/backend/internal/helper/observer_diagnostic_test.go +0 -98
  692. package/dist/templates/native-go/backend/internal/helper/observer_diagnostic_writer.go +0 -40
  693. package/dist/templates/native-go/backend/internal/helper/operation_bootstrap_linux.go +0 -193
  694. package/dist/templates/native-go/backend/internal/helper/operation_credentials_linux.go +0 -56
  695. package/dist/templates/native-go/backend/internal/helper/operation_linux.go +0 -480
  696. package/dist/templates/native-go/backend/internal/helper/operation_linux_test.go +0 -528
  697. package/dist/templates/native-go/backend/internal/helper/peer_linux.go +0 -44
  698. package/dist/templates/native-go/backend/internal/helper/peer_other.go +0 -7
  699. package/dist/templates/native-go/backend/internal/helper/process_linux.go +0 -180
  700. package/dist/templates/native-go/backend/internal/helper/process_other.go +0 -5
  701. package/dist/templates/native-go/backend/internal/helper/publication_test.go +0 -178
  702. package/dist/templates/native-go/backend/internal/helper/query_deadline_linux_test.go +0 -115
  703. package/dist/templates/native-go/backend/internal/helper/query_pending_diagnostic_test.go +0 -254
  704. package/dist/templates/native-go/backend/internal/helper/read_stream_cohort_linux_test.go +0 -156
  705. package/dist/templates/native-go/backend/internal/helper/read_transfer.go +0 -40
  706. package/dist/templates/native-go/backend/internal/helper/read_transfer_linux.go +0 -109
  707. package/dist/templates/native-go/backend/internal/helper/read_transfer_linux_test.go +0 -118
  708. package/dist/templates/native-go/backend/internal/helper/read_transfer_test.go +0 -177
  709. package/dist/templates/native-go/backend/internal/helper/readonly.go +0 -105
  710. package/dist/templates/native-go/backend/internal/helper/readonly_admission.go +0 -85
  711. package/dist/templates/native-go/backend/internal/helper/readonly_cohort_linux_test.go +0 -253
  712. package/dist/templates/native-go/backend/internal/helper/readonly_linux_test.go +0 -378
  713. package/dist/templates/native-go/backend/internal/helper/readonly_mount_linux.go +0 -65
  714. package/dist/templates/native-go/backend/internal/helper/readonly_mount_proxy_linux.go +0 -113
  715. package/dist/templates/native-go/backend/internal/helper/readonly_operations_linux.go +0 -168
  716. package/dist/templates/native-go/backend/internal/helper/readonly_resolver_linux.go +0 -241
  717. package/dist/templates/native-go/backend/internal/helper/readonly_test.go +0 -40
  718. package/dist/templates/native-go/backend/internal/helper/relaxed_identity.go +0 -252
  719. package/dist/templates/native-go/backend/internal/helper/relaxed_identity_contract.go +0 -105
  720. package/dist/templates/native-go/backend/internal/helper/relaxed_identity_test.go +0 -406
  721. package/dist/templates/native-go/backend/internal/helper/relaxed_invalidation.go +0 -203
  722. package/dist/templates/native-go/backend/internal/helper/repair.go +0 -132
  723. package/dist/templates/native-go/backend/internal/helper/repair_test.go +0 -271
  724. package/dist/templates/native-go/backend/internal/helper/s1r_actor_acl_linux_test.go +0 -303
  725. package/dist/templates/native-go/backend/internal/helper/s1r_actor_fixture_linux_test.go +0 -184
  726. package/dist/templates/native-go/backend/internal/helper/s1r_actor_races_linux_test.go +0 -250
  727. package/dist/templates/native-go/backend/internal/helper/s1r_fixture_contract_linux_test.go +0 -18
  728. package/dist/templates/native-go/backend/internal/helper/sdk_assembly_linux.go +0 -51
  729. package/dist/templates/native-go/backend/internal/helper/sdk_attach.go +0 -83
  730. package/dist/templates/native-go/backend/internal/helper/sdk_attach_contract.go +0 -32
  731. package/dist/templates/native-go/backend/internal/helper/sdk_attach_test.go +0 -184
  732. package/dist/templates/native-go/backend/internal/helper/sdk_authority_schema_test.go +0 -6
  733. package/dist/templates/native-go/backend/internal/helper/sdk_background_authority.go +0 -832
  734. package/dist/templates/native-go/backend/internal/helper/sdk_background_authority_test.go +0 -714
  735. package/dist/templates/native-go/backend/internal/helper/sdk_background_invalidation.go +0 -218
  736. package/dist/templates/native-go/backend/internal/helper/sdk_background_lease.go +0 -218
  737. package/dist/templates/native-go/backend/internal/helper/sdk_background_snapshot.go +0 -110
  738. package/dist/templates/native-go/backend/internal/helper/sdk_background_store_linux_test.go +0 -261
  739. package/dist/templates/native-go/backend/internal/helper/sdk_background_store_test.go +0 -58
  740. package/dist/templates/native-go/backend/internal/helper/sdk_bindings.go +0 -60
  741. package/dist/templates/native-go/backend/internal/helper/sdk_data_contract.go +0 -251
  742. package/dist/templates/native-go/backend/internal/helper/sdk_data_protocol.go +0 -424
  743. package/dist/templates/native-go/backend/internal/helper/sdk_dispatch_absence_test.go +0 -51
  744. package/dist/templates/native-go/backend/internal/helper/sdk_display.go +0 -488
  745. package/dist/templates/native-go/backend/internal/helper/sdk_display_contract.go +0 -121
  746. package/dist/templates/native-go/backend/internal/helper/sdk_display_test.go +0 -459
  747. package/dist/templates/native-go/backend/internal/helper/sdk_grant_authority.go +0 -559
  748. package/dist/templates/native-go/backend/internal/helper/sdk_grant_repository_linux.go +0 -417
  749. package/dist/templates/native-go/backend/internal/helper/sdk_grant_snapshot.go +0 -94
  750. package/dist/templates/native-go/backend/internal/helper/sdk_history.go +0 -80
  751. package/dist/templates/native-go/backend/internal/helper/sdk_history_test.go +0 -76
  752. package/dist/templates/native-go/backend/internal/helper/sdk_job.go +0 -697
  753. package/dist/templates/native-go/backend/internal/helper/sdk_job_child_linux.go +0 -309
  754. package/dist/templates/native-go/backend/internal/helper/sdk_job_contract.go +0 -122
  755. package/dist/templates/native-go/backend/internal/helper/sdk_job_linux_test.go +0 -159
  756. package/dist/templates/native-go/backend/internal/helper/sdk_job_process_linux.go +0 -327
  757. package/dist/templates/native-go/backend/internal/helper/sdk_job_test.go +0 -501
  758. package/dist/templates/native-go/backend/internal/helper/sdk_job_vm_linux_test.go +0 -343
  759. package/dist/templates/native-go/backend/internal/helper/sdk_journal.go +0 -77
  760. package/dist/templates/native-go/backend/internal/helper/sdk_journal_linux.go +0 -244
  761. package/dist/templates/native-go/backend/internal/helper/sdk_journal_linux_test.go +0 -295
  762. package/dist/templates/native-go/backend/internal/helper/sdk_journal_test.go +0 -71
  763. package/dist/templates/native-go/backend/internal/helper/sdk_picker_test.go +0 -50
  764. package/dist/templates/native-go/backend/internal/helper/sdk_process_linux.go +0 -184
  765. package/dist/templates/native-go/backend/internal/helper/sdk_public_vm_linux_test.go +0 -129
  766. package/dist/templates/native-go/backend/internal/helper/sdk_relaxed_invalidation.go +0 -242
  767. package/dist/templates/native-go/backend/internal/helper/sdk_rpc.go +0 -299
  768. package/dist/templates/native-go/backend/internal/helper/sdk_rpc_contract.go +0 -70
  769. package/dist/templates/native-go/backend/internal/helper/sdk_rpc_test.go +0 -135
  770. package/dist/templates/native-go/backend/internal/helper/sdk_server_linux.go +0 -152
  771. package/dist/templates/native-go/backend/internal/helper/sdk_session.go +0 -677
  772. package/dist/templates/native-go/backend/internal/helper/sdk_session_contract.go +0 -72
  773. package/dist/templates/native-go/backend/internal/helper/sdk_session_fence_test.go +0 -215
  774. package/dist/templates/native-go/backend/internal/helper/sdk_session_test.go +0 -475
  775. package/dist/templates/native-go/backend/internal/helper/sdk_supervisor_frame.go +0 -78
  776. package/dist/templates/native-go/backend/internal/helper/sdk_supervisor_linux.go +0 -414
  777. package/dist/templates/native-go/backend/internal/helper/sdk_transport.go +0 -79
  778. package/dist/templates/native-go/backend/internal/helper/sdk_transport_linux.go +0 -82
  779. package/dist/templates/native-go/backend/internal/helper/sdk_transport_test.go +0 -64
  780. package/dist/templates/native-go/backend/internal/helper/server_linux.go +0 -127
  781. package/dist/templates/native-go/backend/internal/helper/stale_management_linux_test.go +0 -126
  782. package/dist/templates/native-go/backend/internal/helper/stale_management_test.go +0 -122
  783. package/dist/templates/native-go/backend/internal/helper/startup_diagnostic.go +0 -68
  784. package/dist/templates/native-go/backend/internal/helper/startup_diagnostic_linux_test.go +0 -126
  785. package/dist/templates/native-go/backend/internal/helper/startup_diagnostic_test.go +0 -117
  786. package/dist/templates/native-go/backend/internal/helper/status.go +0 -343
  787. package/dist/templates/native-go/backend/internal/helper/status_test.go +0 -333
  788. package/dist/templates/native-go/backend/internal/helper/supervision.go +0 -107
  789. package/dist/templates/native-go/backend/internal/helper/supervision_test.go +0 -124
  790. package/dist/templates/native-go/backend/internal/helper/supervisor_frame.go +0 -79
  791. package/dist/templates/native-go/backend/internal/helper/supervisor_frame_linux_test.go +0 -69
  792. package/dist/templates/native-go/backend/internal/helper/supervisor_frame_test.go +0 -107
  793. package/dist/templates/native-go/backend/internal/helper/supervisor_linux.go +0 -367
  794. package/dist/templates/native-go/backend/internal/helper/supervisor_linux_test.go +0 -913
  795. package/dist/templates/native-go/backend/internal/helper/supervisor_socket_eof_test.go +0 -74
  796. package/dist/templates/native-go/backend/internal/helper/supervisor_socket_test.go +0 -45
  797. package/dist/templates/native-go/backend/internal/helper/testdata/protocol2/create.json +0 -23
  798. package/dist/templates/native-go/backend/internal/helper/testdata/protocol2/frames.json +0 -67
  799. package/dist/templates/native-go/backend/internal/helper/testdata/protocol2/grant-store.json +0 -52
  800. package/dist/templates/native-go/backend/internal/helper/testdata/protocol2/intent.json +0 -20
  801. package/dist/templates/native-go/backend/internal/helper/testdata/protocol2/list.json +0 -20
  802. package/dist/templates/native-go/backend/internal/helper/testdata/protocol2/publish.json +0 -20
  803. package/dist/templates/native-go/backend/internal/helper/testdata/protocol2/read.json +0 -22
  804. package/dist/templates/native-go/backend/internal/helper/testdata/protocol2/stat.json +0 -22
  805. package/dist/templates/native-go/backend/internal/helper/testdata/protocol2/write-stream.json +0 -22
  806. package/dist/templates/native-go/backend/internal/helper/unit_connection.go +0 -75
  807. package/dist/templates/native-go/backend/internal/helper/unit_connection_linux_test.go +0 -135
  808. package/dist/templates/native-go/backend/internal/helper/unit_connection_test.go +0 -151
  809. package/dist/templates/native-go/backend/internal/helper/unit_frame_test.go +0 -32
  810. package/dist/templates/native-go/backend/internal/helper/unit_linux.go +0 -368
  811. package/dist/templates/native-go/backend/internal/helper/unit_linux_test.go +0 -46
  812. package/dist/templates/native-go/backend/internal/helper/unit_mechanisms_linux_test.go +0 -217
  813. package/dist/templates/native-go/backend/internal/helper/unit_padding_linux_test.go +0 -178
  814. package/dist/templates/native-go/backend/internal/helper/unit_query_linux.go +0 -115
  815. package/dist/templates/native-go/backend/internal/helper/unit_reload_linux_test.go +0 -372
  816. package/dist/templates/native-go/backend/internal/helper/unit_reload_sequence_linux_test.go +0 -232
  817. package/dist/templates/native-go/backend/internal/helper/write.go +0 -77
  818. package/dist/templates/native-go/backend/internal/helper/write_admission.go +0 -260
  819. package/dist/templates/native-go/backend/internal/helper/write_admission_test.go +0 -135
  820. package/dist/templates/native-go/backend/internal/helper/write_cohort_linux_test.go +0 -218
  821. package/dist/templates/native-go/backend/internal/helper/write_files_linux.go +0 -205
  822. package/dist/templates/native-go/backend/internal/helper/write_files_linux_test.go +0 -225
  823. package/dist/templates/native-go/backend/internal/helper/write_intent_linux.go +0 -116
  824. package/dist/templates/native-go/backend/internal/helper/write_intent_linux_test.go +0 -74
  825. package/dist/templates/native-go/backend/internal/helper/write_operation_linux.go +0 -245
  826. package/dist/templates/native-go/backend/internal/helper/write_test.go +0 -53
  827. package/dist/templates/native-go-background/BACKGROUND.md +0 -111
  828. package/dist/templates/native-go-background/backend/internal/app/background_routes_test.go +0 -32
  829. package/dist/templates/native-go-background/frontend/src/background/BackgroundPanel.vue +0 -178
  830. package/dist/templates/native-go-background/frontend/src/background/i18n/de.json +0 -83
  831. package/dist/templates/native-go-background/frontend/src/background/i18n/en.json +0 -83
  832. package/dist/templates/native-go-background/frontend/src/background/i18n/es.json +0 -83
  833. package/dist/templates/native-go-background/frontend/src/background/i18n/fr.json +0 -83
  834. package/dist/templates/native-go-background/frontend/src/background/i18n/it.json +0 -83
  835. package/dist/templates/native-go-background/frontend/src/background/i18n/ja.json +0 -83
  836. package/dist/templates/native-go-background/frontend/src/background/i18n/ko.json +0 -83
  837. package/dist/templates/native-go-background/frontend/src/background/i18n/zh-CN.json +0 -83
  838. package/dist/templates/native-go-background/frontend/src/background/i18n/zh-TW.json +0 -83
  839. package/dist/templates/native-go-background/frontend/src/background/picker-provider.ts +0 -13
  840. package/dist/templates/native-go-background/frontend/test/background.test.ts +0 -179
  841. package/dist/templates/native-go-better-auth/backend/internal/app/identity.go +0 -208
  842. package/dist/templates/native-go-better-auth/backend/internal/app/identity_test.go +0 -113
  843. package/dist/templates/native-go-better-auth/node/app.mjs +0 -72
  844. package/dist/templates/native-go-better-auth/node/build.mjs +0 -4
  845. package/dist/templates/native-go-better-auth/node/package-lock.json +0 -862
  846. package/dist/templates/native-go-better-auth/node/package.json +0 -1
  847. package/dist/templates/native-go-better-auth/node/test/auth.test.mjs +0 -31
  848. package/dist/templates/native-go-integration/backend/internal/app/identity_none.go +0 -6
  849. package/dist/templates/native-go-integration/backend/internal/app/personal.go +0 -203
  850. package/dist/templates/native-go-integration/backend/internal/app/personal_test.go +0 -156
  851. package/dist/templates/native-go-root/backend/internal/app/root.go +0 -107
  852. package/dist/templates/native-go-root/backend/internal/app/root_test.go +0 -124
  853. package/dist/templates/native-go-root/root/whoami.sh +0 -6
  854. package/dist/templates/native-go-vue/frontend/README-JOBS.md +0 -75
  855. package/dist/templates/native-go-vue/frontend/README-M2.md +0 -64
  856. package/dist/templates/native-go-vue/frontend/src/M2App.vue +0 -57
  857. package/dist/templates/native-go-vue/frontend/src/SDKApp.vue +0 -203
  858. package/dist/templates/native-go-vue/frontend/src/jobs/InteractiveJobForm.vue +0 -70
  859. package/dist/templates/native-go-vue/frontend/src/jobs/JobsAdminPanel.vue +0 -33
  860. package/dist/templates/native-go-vue/frontend/src/jobs/JobsPanel.vue +0 -135
  861. package/dist/templates/native-go-vue/frontend/src/jobs/connected-provider.ts +0 -179
  862. package/dist/templates/native-go-vue/frontend/src/jobs/i18n/de.json +0 -62
  863. package/dist/templates/native-go-vue/frontend/src/jobs/i18n/en.json +0 -62
  864. package/dist/templates/native-go-vue/frontend/src/jobs/i18n/es.json +0 -62
  865. package/dist/templates/native-go-vue/frontend/src/jobs/i18n/fr.json +0 -62
  866. package/dist/templates/native-go-vue/frontend/src/jobs/i18n/it.json +0 -62
  867. package/dist/templates/native-go-vue/frontend/src/jobs/i18n/ja.json +0 -62
  868. package/dist/templates/native-go-vue/frontend/src/jobs/i18n/ko.json +0 -62
  869. package/dist/templates/native-go-vue/frontend/src/jobs/i18n/zh-CN.json +0 -62
  870. package/dist/templates/native-go-vue/frontend/src/jobs/i18n/zh-TW.json +0 -62
  871. package/dist/templates/native-go-vue/frontend/src/jobs/i18n.ts +0 -15
  872. package/dist/templates/native-go-vue/frontend/src/jobs/mock-provider.ts +0 -67
  873. package/dist/templates/native-go-vue/frontend/src/jobs/provider.ts +0 -60
  874. package/dist/templates/native-go-vue/frontend/src/jobs/validate.ts +0 -44
  875. package/dist/templates/native-go-vue/frontend/src/m2-main.ts +0 -21
  876. package/dist/templates/native-go-vue/frontend/src/m2-style.css +0 -7
  877. package/dist/templates/native-go-vue/frontend/src/nas/M2Files.vue +0 -94
  878. package/dist/templates/native-go-vue/frontend/src/nas/M2PathPicker.vue +0 -70
  879. package/dist/templates/native-go-vue/frontend/src/nas/M2Settings.vue +0 -69
  880. package/dist/templates/native-go-vue/frontend/src/nas/NasGrantSettings.vue +0 -74
  881. package/dist/templates/native-go-vue/frontend/src/nas/NasPathPicker.vue +0 -106
  882. package/dist/templates/native-go-vue/frontend/src/nas/NasUnavailable.vue +0 -20
  883. package/dist/templates/native-go-vue/frontend/src/nas/i18n/de.json +0 -74
  884. package/dist/templates/native-go-vue/frontend/src/nas/i18n/en.json +0 -74
  885. package/dist/templates/native-go-vue/frontend/src/nas/i18n/es.json +0 -74
  886. package/dist/templates/native-go-vue/frontend/src/nas/i18n/fr.json +0 -74
  887. package/dist/templates/native-go-vue/frontend/src/nas/i18n/it.json +0 -74
  888. package/dist/templates/native-go-vue/frontend/src/nas/i18n/ja.json +0 -74
  889. package/dist/templates/native-go-vue/frontend/src/nas/i18n/ko.json +0 -74
  890. package/dist/templates/native-go-vue/frontend/src/nas/i18n/m2/de.json +0 -56
  891. package/dist/templates/native-go-vue/frontend/src/nas/i18n/m2/en.json +0 -56
  892. package/dist/templates/native-go-vue/frontend/src/nas/i18n/m2/es.json +0 -56
  893. package/dist/templates/native-go-vue/frontend/src/nas/i18n/m2/fr.json +0 -56
  894. package/dist/templates/native-go-vue/frontend/src/nas/i18n/m2/it.json +0 -56
  895. package/dist/templates/native-go-vue/frontend/src/nas/i18n/m2/ja.json +0 -56
  896. package/dist/templates/native-go-vue/frontend/src/nas/i18n/m2/ko.json +0 -56
  897. package/dist/templates/native-go-vue/frontend/src/nas/i18n/m2/zh-CN.json +0 -56
  898. package/dist/templates/native-go-vue/frontend/src/nas/i18n/m2/zh-TW.json +0 -56
  899. package/dist/templates/native-go-vue/frontend/src/nas/i18n/zh-CN.json +0 -74
  900. package/dist/templates/native-go-vue/frontend/src/nas/i18n/zh-TW.json +0 -74
  901. package/dist/templates/native-go-vue/frontend/src/nas/m2-contract.ts +0 -33
  902. package/dist/templates/native-go-vue/frontend/src/nas/m2-i18n.ts +0 -24
  903. package/dist/templates/native-go-vue/frontend/src/nas/m2-provider.ts +0 -104
  904. package/dist/templates/native-go-vue/frontend/src/nas/mock-provider.ts +0 -119
  905. package/dist/templates/native-go-vue/frontend/src/nas/use-m2-request.ts +0 -18
  906. package/dist/templates/native-go-vue/frontend/src/sdk-main.ts +0 -39
  907. package/dist/templates/native-go-vue/frontend/test/jobs-connected.test.ts +0 -163
  908. package/dist/templates/native-go-vue/frontend/test/jobs-preview.html +0 -22
  909. package/dist/templates/native-go-vue/frontend/test/jobs.test.ts +0 -176
  910. package/dist/templates/native-go-vue/frontend/test/m2-preview.html +0 -27
  911. package/dist/templates/native-go-vue/frontend/test/m2-provider.test.ts +0 -87
  912. package/dist/templates/native-go-vue/frontend/test/m2-ui.test.ts +0 -209
  913. package/dist/templates/native-go-vue/frontend/test/nas-provider.test.ts +0 -81
  914. package/dist/templates/native-go-vue/frontend/test/nas-request.test.ts +0 -21
  915. package/dist/templates/native-go-vue/frontend/test/nas-ui.test.ts +0 -261
  916. package/dist/templates/native-go-vue/frontend/test/picker-wire.test.ts +0 -110
  917. package/dist/templates/native-go-vue/frontend/test/shell-preview.html +0 -19
  918. package/dist/templates/native-go-vue/frontend/test/shell-sdk.test.ts +0 -73
  919. package/templates/_shared/notice-overrides/index.json +0 -14
  920. package/templates/_shared/notice-overrides/utils-0.4.2-LICENSE +0 -21
  921. package/templates/_shared/notice-overrides/utils-0.5.0-LICENSE +0 -21
  922. package/templates/binary/native.yaml +0 -16
  923. package/templates/binary/synology-app.yaml +0 -7
  924. package/templates/compose-import/compose.yaml +0 -10
  925. package/templates/compose-import/synology-app.yaml +0 -15
  926. package/templates/hello-web/compose.yaml +0 -24
  927. package/templates/hello-web/html/app.js +0 -1
  928. package/templates/hello-web/html/index.html +0 -13
  929. package/templates/hello-web/synology-app.yaml +0 -16
  930. package/templates/hello-web-page/compose.yaml +0 -24
  931. package/templates/hello-web-page/html/app.js +0 -1
  932. package/templates/hello-web-page/html/index.html +0 -13
  933. package/templates/hello-web-page/synology-app.yaml +0 -16
  934. package/templates/native-go/backend/cmd/app/sdk_main.go +0 -60
  935. package/templates/native-go/backend/cmd/dsm-readonly-probe/main_linux.go +0 -46
  936. package/templates/native-go/backend/cmd/helper/main.go +0 -47
  937. package/templates/native-go/backend/cmd/helper/sdk_registry.go +0 -19
  938. package/templates/native-go/backend/internal/api/binary.go +0 -154
  939. package/templates/native-go/backend/internal/api/binary_test.go +0 -165
  940. package/templates/native-go/backend/internal/app/integration_state.go +0 -16
  941. package/templates/native-go/backend/internal/app/nas_cgi_artifact_test.go +0 -129
  942. package/templates/native-go/backend/internal/app/nas_refusal_test.go +0 -46
  943. package/templates/native-go/backend/internal/app/sdk_jobs.go +0 -70
  944. package/templates/native-go/backend/internal/app/sdk_jobs_test.go +0 -116
  945. package/templates/native-go/backend/internal/app/sdk_routes.go +0 -174
  946. package/templates/native-go/backend/internal/dsmprobe/collector_linux.go +0 -335
  947. package/templates/native-go/backend/internal/dsmprobe/collector_linux_test.go +0 -41
  948. package/templates/native-go/backend/internal/dsmprobe/protocol.go +0 -179
  949. package/templates/native-go/backend/internal/dsmprobe/protocol_test.go +0 -29
  950. package/templates/native-go/backend/internal/filestation/repository.go +0 -207
  951. package/templates/native-go/backend/internal/filestation/repository_test.go +0 -104
  952. package/templates/native-go/backend/internal/filestation/sdk_session.go +0 -241
  953. package/templates/native-go/backend/internal/filestation/sdk_session_test.go +0 -183
  954. package/templates/native-go/backend/internal/filestation/session_semantics_test.go +0 -383
  955. package/templates/native-go/backend/internal/helper/background_proof.go +0 -163
  956. package/templates/native-go/backend/internal/helper/background_proof_contract.go +0 -46
  957. package/templates/native-go/backend/internal/helper/background_proof_test.go +0 -161
  958. package/templates/native-go/backend/internal/helper/cohort.go +0 -393
  959. package/templates/native-go/backend/internal/helper/cohort_publication.go +0 -18
  960. package/templates/native-go/backend/internal/helper/cohort_publication_test.go +0 -105
  961. package/templates/native-go/backend/internal/helper/cohort_test.go +0 -372
  962. package/templates/native-go/backend/internal/helper/control.go +0 -424
  963. package/templates/native-go/backend/internal/helper/control_test.go +0 -250
  964. package/templates/native-go/backend/internal/helper/data_contract.go +0 -245
  965. package/templates/native-go/backend/internal/helper/data_contract_test.go +0 -51
  966. package/templates/native-go/backend/internal/helper/data_decode.go +0 -184
  967. package/templates/native-go/backend/internal/helper/data_decode_pointer_test.go +0 -30
  968. package/templates/native-go/backend/internal/helper/data_protocol.go +0 -419
  969. package/templates/native-go/backend/internal/helper/data_protocol_test.go +0 -449
  970. package/templates/native-go/backend/internal/helper/dsm_acl_linux.go +0 -139
  971. package/templates/native-go/backend/internal/helper/dsm_acl_linux_test.go +0 -121
  972. package/templates/native-go/backend/internal/helper/dsm_acl_syscall_linux.go +0 -95
  973. package/templates/native-go/backend/internal/helper/dsm_acl_syscall_linux_test.go +0 -56
  974. package/templates/native-go/backend/internal/helper/dsm_bridge_linux.go +0 -144
  975. package/templates/native-go/backend/internal/helper/dsm_bridge_linux_test.go +0 -89
  976. package/templates/native-go/backend/internal/helper/dsm_home_linux.go +0 -107
  977. package/templates/native-go/backend/internal/helper/dsm_home_linux_test.go +0 -82
  978. package/templates/native-go/backend/internal/helper/dsm_probe_transport_linux.go +0 -151
  979. package/templates/native-go/backend/internal/helper/dsm_probe_transport_linux_test.go +0 -66
  980. package/templates/native-go/backend/internal/helper/grant_authority.go +0 -519
  981. package/templates/native-go/backend/internal/helper/grant_authority_contract.go +0 -88
  982. package/templates/native-go/backend/internal/helper/grant_authority_test.go +0 -510
  983. package/templates/native-go/backend/internal/helper/grant_cohort.go +0 -389
  984. package/templates/native-go/backend/internal/helper/grant_cohort_test.go +0 -239
  985. package/templates/native-go/backend/internal/helper/grant_delivery.go +0 -49
  986. package/templates/native-go/backend/internal/helper/grant_delivery_methods.go +0 -273
  987. package/templates/native-go/backend/internal/helper/grant_delivery_test.go +0 -322
  988. package/templates/native-go/backend/internal/helper/grant_operation_contract.go +0 -47
  989. package/templates/native-go/backend/internal/helper/grant_readonly_test.go +0 -180
  990. package/templates/native-go/backend/internal/helper/grant_repository_linux.go +0 -416
  991. package/templates/native-go/backend/internal/helper/grant_repository_linux_test.go +0 -469
  992. package/templates/native-go/backend/internal/helper/grant_rpc.go +0 -147
  993. package/templates/native-go/backend/internal/helper/grant_rpc_test.go +0 -51
  994. package/templates/native-go/backend/internal/helper/grant_snapshot.go +0 -78
  995. package/templates/native-go/backend/internal/helper/grant_supervisor_linux.go +0 -134
  996. package/templates/native-go/backend/internal/helper/grant_supervisor_linux_test.go +0 -254
  997. package/templates/native-go/backend/internal/helper/jobcontract/bindings.go +0 -48
  998. package/templates/native-go/backend/internal/helper/jobcontract/contract_test.go +0 -436
  999. package/templates/native-go/backend/internal/helper/jobcontract/decode.go +0 -185
  1000. package/templates/native-go/backend/internal/helper/jobcontract/digest.go +0 -55
  1001. package/templates/native-go/backend/internal/helper/jobcontract/registry.go +0 -85
  1002. package/templates/native-go/backend/internal/helper/jobcontract/registry_test.go +0 -73
  1003. package/templates/native-go/backend/internal/helper/jobcontract/result.go +0 -53
  1004. package/templates/native-go/backend/internal/helper/jobcontract/stub.go +0 -8
  1005. package/templates/native-go/backend/internal/helper/jobcontract/testdata/input-digests.json +0 -127
  1006. package/templates/native-go/backend/internal/helper/jobcontract/types.go +0 -234
  1007. package/templates/native-go/backend/internal/helper/jobcontract/types_test.go +0 -29
  1008. package/templates/native-go/backend/internal/helper/jobcontract/validate.go +0 -462
  1009. package/templates/native-go/backend/internal/helper/lease.go +0 -112
  1010. package/templates/native-go/backend/internal/helper/lease_linux.go +0 -44
  1011. package/templates/native-go/backend/internal/helper/lease_other.go +0 -8
  1012. package/templates/native-go/backend/internal/helper/legacy_authority_schema_linux_test.go +0 -34
  1013. package/templates/native-go/backend/internal/helper/legacy_authority_schema_test.go +0 -6
  1014. package/templates/native-go/backend/internal/helper/lifecycle.go +0 -234
  1015. package/templates/native-go/backend/internal/helper/lifecycle_test.go +0 -473
  1016. package/templates/native-go/backend/internal/helper/managed_pilot.go +0 -284
  1017. package/templates/native-go/backend/internal/helper/managed_pilot_repository_linux.go +0 -74
  1018. package/templates/native-go/backend/internal/helper/managed_pilot_repository_linux_test.go +0 -40
  1019. package/templates/native-go/backend/internal/helper/managed_pilot_test.go +0 -210
  1020. package/templates/native-go/backend/internal/helper/management.go +0 -79
  1021. package/templates/native-go/backend/internal/helper/nas_shipped_refusal_linux_test.go +0 -97
  1022. package/templates/native-go/backend/internal/helper/native_discovery.go +0 -79
  1023. package/templates/native-go/backend/internal/helper/native_identity.go +0 -89
  1024. package/templates/native-go/backend/internal/helper/native_provider.go +0 -159
  1025. package/templates/native-go/backend/internal/helper/native_provider_test.go +0 -421
  1026. package/templates/native-go/backend/internal/helper/observation.go +0 -244
  1027. package/templates/native-go/backend/internal/helper/observation_health_test.go +0 -127
  1028. package/templates/native-go/backend/internal/helper/observation_reload_budget_test.go +0 -117
  1029. package/templates/native-go/backend/internal/helper/observation_test.go +0 -196
  1030. package/templates/native-go/backend/internal/helper/observer_diagnostic.go +0 -155
  1031. package/templates/native-go/backend/internal/helper/observer_diagnostic_linux.go +0 -76
  1032. package/templates/native-go/backend/internal/helper/observer_diagnostic_linux_test.go +0 -130
  1033. package/templates/native-go/backend/internal/helper/observer_diagnostic_test.go +0 -98
  1034. package/templates/native-go/backend/internal/helper/observer_diagnostic_writer.go +0 -40
  1035. package/templates/native-go/backend/internal/helper/operation_bootstrap_linux.go +0 -193
  1036. package/templates/native-go/backend/internal/helper/operation_credentials_linux.go +0 -56
  1037. package/templates/native-go/backend/internal/helper/operation_linux.go +0 -480
  1038. package/templates/native-go/backend/internal/helper/operation_linux_test.go +0 -528
  1039. package/templates/native-go/backend/internal/helper/peer_linux.go +0 -44
  1040. package/templates/native-go/backend/internal/helper/peer_other.go +0 -7
  1041. package/templates/native-go/backend/internal/helper/process_linux.go +0 -180
  1042. package/templates/native-go/backend/internal/helper/process_other.go +0 -5
  1043. package/templates/native-go/backend/internal/helper/publication_test.go +0 -178
  1044. package/templates/native-go/backend/internal/helper/query_deadline_linux_test.go +0 -115
  1045. package/templates/native-go/backend/internal/helper/query_pending_diagnostic_test.go +0 -254
  1046. package/templates/native-go/backend/internal/helper/read_stream_cohort_linux_test.go +0 -156
  1047. package/templates/native-go/backend/internal/helper/read_transfer.go +0 -40
  1048. package/templates/native-go/backend/internal/helper/read_transfer_linux.go +0 -109
  1049. package/templates/native-go/backend/internal/helper/read_transfer_linux_test.go +0 -118
  1050. package/templates/native-go/backend/internal/helper/read_transfer_test.go +0 -177
  1051. package/templates/native-go/backend/internal/helper/readonly.go +0 -105
  1052. package/templates/native-go/backend/internal/helper/readonly_admission.go +0 -85
  1053. package/templates/native-go/backend/internal/helper/readonly_cohort_linux_test.go +0 -253
  1054. package/templates/native-go/backend/internal/helper/readonly_linux_test.go +0 -378
  1055. package/templates/native-go/backend/internal/helper/readonly_mount_linux.go +0 -65
  1056. package/templates/native-go/backend/internal/helper/readonly_mount_proxy_linux.go +0 -113
  1057. package/templates/native-go/backend/internal/helper/readonly_operations_linux.go +0 -168
  1058. package/templates/native-go/backend/internal/helper/readonly_resolver_linux.go +0 -241
  1059. package/templates/native-go/backend/internal/helper/readonly_test.go +0 -40
  1060. package/templates/native-go/backend/internal/helper/relaxed_identity.go +0 -252
  1061. package/templates/native-go/backend/internal/helper/relaxed_identity_contract.go +0 -105
  1062. package/templates/native-go/backend/internal/helper/relaxed_identity_test.go +0 -406
  1063. package/templates/native-go/backend/internal/helper/relaxed_invalidation.go +0 -203
  1064. package/templates/native-go/backend/internal/helper/repair.go +0 -132
  1065. package/templates/native-go/backend/internal/helper/repair_test.go +0 -271
  1066. package/templates/native-go/backend/internal/helper/s1r_actor_acl_linux_test.go +0 -303
  1067. package/templates/native-go/backend/internal/helper/s1r_actor_fixture_linux_test.go +0 -184
  1068. package/templates/native-go/backend/internal/helper/s1r_actor_races_linux_test.go +0 -250
  1069. package/templates/native-go/backend/internal/helper/s1r_fixture_contract_linux_test.go +0 -18
  1070. package/templates/native-go/backend/internal/helper/sdk_assembly_linux.go +0 -51
  1071. package/templates/native-go/backend/internal/helper/sdk_attach.go +0 -83
  1072. package/templates/native-go/backend/internal/helper/sdk_attach_contract.go +0 -32
  1073. package/templates/native-go/backend/internal/helper/sdk_attach_test.go +0 -184
  1074. package/templates/native-go/backend/internal/helper/sdk_authority_schema_test.go +0 -6
  1075. package/templates/native-go/backend/internal/helper/sdk_background_authority.go +0 -832
  1076. package/templates/native-go/backend/internal/helper/sdk_background_authority_test.go +0 -714
  1077. package/templates/native-go/backend/internal/helper/sdk_background_invalidation.go +0 -218
  1078. package/templates/native-go/backend/internal/helper/sdk_background_lease.go +0 -218
  1079. package/templates/native-go/backend/internal/helper/sdk_background_snapshot.go +0 -110
  1080. package/templates/native-go/backend/internal/helper/sdk_background_store_linux_test.go +0 -261
  1081. package/templates/native-go/backend/internal/helper/sdk_background_store_test.go +0 -58
  1082. package/templates/native-go/backend/internal/helper/sdk_bindings.go +0 -60
  1083. package/templates/native-go/backend/internal/helper/sdk_data_contract.go +0 -251
  1084. package/templates/native-go/backend/internal/helper/sdk_data_protocol.go +0 -424
  1085. package/templates/native-go/backend/internal/helper/sdk_dispatch_absence_test.go +0 -51
  1086. package/templates/native-go/backend/internal/helper/sdk_display.go +0 -488
  1087. package/templates/native-go/backend/internal/helper/sdk_display_contract.go +0 -121
  1088. package/templates/native-go/backend/internal/helper/sdk_display_test.go +0 -459
  1089. package/templates/native-go/backend/internal/helper/sdk_grant_authority.go +0 -559
  1090. package/templates/native-go/backend/internal/helper/sdk_grant_repository_linux.go +0 -417
  1091. package/templates/native-go/backend/internal/helper/sdk_grant_snapshot.go +0 -94
  1092. package/templates/native-go/backend/internal/helper/sdk_history.go +0 -80
  1093. package/templates/native-go/backend/internal/helper/sdk_history_test.go +0 -76
  1094. package/templates/native-go/backend/internal/helper/sdk_job.go +0 -697
  1095. package/templates/native-go/backend/internal/helper/sdk_job_child_linux.go +0 -309
  1096. package/templates/native-go/backend/internal/helper/sdk_job_contract.go +0 -122
  1097. package/templates/native-go/backend/internal/helper/sdk_job_linux_test.go +0 -159
  1098. package/templates/native-go/backend/internal/helper/sdk_job_process_linux.go +0 -327
  1099. package/templates/native-go/backend/internal/helper/sdk_job_test.go +0 -501
  1100. package/templates/native-go/backend/internal/helper/sdk_job_vm_linux_test.go +0 -343
  1101. package/templates/native-go/backend/internal/helper/sdk_journal.go +0 -77
  1102. package/templates/native-go/backend/internal/helper/sdk_journal_linux.go +0 -244
  1103. package/templates/native-go/backend/internal/helper/sdk_journal_linux_test.go +0 -295
  1104. package/templates/native-go/backend/internal/helper/sdk_journal_test.go +0 -71
  1105. package/templates/native-go/backend/internal/helper/sdk_picker_test.go +0 -50
  1106. package/templates/native-go/backend/internal/helper/sdk_process_linux.go +0 -184
  1107. package/templates/native-go/backend/internal/helper/sdk_public_vm_linux_test.go +0 -129
  1108. package/templates/native-go/backend/internal/helper/sdk_relaxed_invalidation.go +0 -242
  1109. package/templates/native-go/backend/internal/helper/sdk_rpc.go +0 -299
  1110. package/templates/native-go/backend/internal/helper/sdk_rpc_contract.go +0 -70
  1111. package/templates/native-go/backend/internal/helper/sdk_rpc_test.go +0 -135
  1112. package/templates/native-go/backend/internal/helper/sdk_server_linux.go +0 -152
  1113. package/templates/native-go/backend/internal/helper/sdk_session.go +0 -677
  1114. package/templates/native-go/backend/internal/helper/sdk_session_contract.go +0 -72
  1115. package/templates/native-go/backend/internal/helper/sdk_session_fence_test.go +0 -215
  1116. package/templates/native-go/backend/internal/helper/sdk_session_test.go +0 -475
  1117. package/templates/native-go/backend/internal/helper/sdk_supervisor_frame.go +0 -78
  1118. package/templates/native-go/backend/internal/helper/sdk_supervisor_linux.go +0 -414
  1119. package/templates/native-go/backend/internal/helper/sdk_transport.go +0 -79
  1120. package/templates/native-go/backend/internal/helper/sdk_transport_linux.go +0 -82
  1121. package/templates/native-go/backend/internal/helper/sdk_transport_test.go +0 -64
  1122. package/templates/native-go/backend/internal/helper/server_linux.go +0 -127
  1123. package/templates/native-go/backend/internal/helper/stale_management_linux_test.go +0 -126
  1124. package/templates/native-go/backend/internal/helper/stale_management_test.go +0 -122
  1125. package/templates/native-go/backend/internal/helper/startup_diagnostic.go +0 -68
  1126. package/templates/native-go/backend/internal/helper/startup_diagnostic_linux_test.go +0 -126
  1127. package/templates/native-go/backend/internal/helper/startup_diagnostic_test.go +0 -117
  1128. package/templates/native-go/backend/internal/helper/status.go +0 -343
  1129. package/templates/native-go/backend/internal/helper/status_test.go +0 -333
  1130. package/templates/native-go/backend/internal/helper/supervision.go +0 -107
  1131. package/templates/native-go/backend/internal/helper/supervision_test.go +0 -124
  1132. package/templates/native-go/backend/internal/helper/supervisor_frame.go +0 -79
  1133. package/templates/native-go/backend/internal/helper/supervisor_frame_linux_test.go +0 -69
  1134. package/templates/native-go/backend/internal/helper/supervisor_frame_test.go +0 -107
  1135. package/templates/native-go/backend/internal/helper/supervisor_linux.go +0 -367
  1136. package/templates/native-go/backend/internal/helper/supervisor_linux_test.go +0 -913
  1137. package/templates/native-go/backend/internal/helper/supervisor_socket_eof_test.go +0 -74
  1138. package/templates/native-go/backend/internal/helper/supervisor_socket_test.go +0 -45
  1139. package/templates/native-go/backend/internal/helper/testdata/protocol2/create.json +0 -23
  1140. package/templates/native-go/backend/internal/helper/testdata/protocol2/frames.json +0 -67
  1141. package/templates/native-go/backend/internal/helper/testdata/protocol2/grant-store.json +0 -52
  1142. package/templates/native-go/backend/internal/helper/testdata/protocol2/intent.json +0 -20
  1143. package/templates/native-go/backend/internal/helper/testdata/protocol2/list.json +0 -20
  1144. package/templates/native-go/backend/internal/helper/testdata/protocol2/publish.json +0 -20
  1145. package/templates/native-go/backend/internal/helper/testdata/protocol2/read.json +0 -22
  1146. package/templates/native-go/backend/internal/helper/testdata/protocol2/stat.json +0 -22
  1147. package/templates/native-go/backend/internal/helper/testdata/protocol2/write-stream.json +0 -22
  1148. package/templates/native-go/backend/internal/helper/unit_connection.go +0 -75
  1149. package/templates/native-go/backend/internal/helper/unit_connection_linux_test.go +0 -135
  1150. package/templates/native-go/backend/internal/helper/unit_connection_test.go +0 -151
  1151. package/templates/native-go/backend/internal/helper/unit_frame_test.go +0 -32
  1152. package/templates/native-go/backend/internal/helper/unit_linux.go +0 -368
  1153. package/templates/native-go/backend/internal/helper/unit_linux_test.go +0 -46
  1154. package/templates/native-go/backend/internal/helper/unit_mechanisms_linux_test.go +0 -217
  1155. package/templates/native-go/backend/internal/helper/unit_padding_linux_test.go +0 -178
  1156. package/templates/native-go/backend/internal/helper/unit_query_linux.go +0 -115
  1157. package/templates/native-go/backend/internal/helper/unit_reload_linux_test.go +0 -372
  1158. package/templates/native-go/backend/internal/helper/unit_reload_sequence_linux_test.go +0 -232
  1159. package/templates/native-go/backend/internal/helper/write.go +0 -77
  1160. package/templates/native-go/backend/internal/helper/write_admission.go +0 -260
  1161. package/templates/native-go/backend/internal/helper/write_admission_test.go +0 -135
  1162. package/templates/native-go/backend/internal/helper/write_cohort_linux_test.go +0 -218
  1163. package/templates/native-go/backend/internal/helper/write_files_linux.go +0 -205
  1164. package/templates/native-go/backend/internal/helper/write_files_linux_test.go +0 -225
  1165. package/templates/native-go/backend/internal/helper/write_intent_linux.go +0 -116
  1166. package/templates/native-go/backend/internal/helper/write_intent_linux_test.go +0 -74
  1167. package/templates/native-go/backend/internal/helper/write_operation_linux.go +0 -245
  1168. package/templates/native-go/backend/internal/helper/write_test.go +0 -53
  1169. package/templates/native-go-background/BACKGROUND.md +0 -111
  1170. package/templates/native-go-background/backend/internal/app/background_routes_test.go +0 -32
  1171. package/templates/native-go-background/frontend/src/background/BackgroundPanel.vue +0 -178
  1172. package/templates/native-go-background/frontend/src/background/i18n/de.json +0 -83
  1173. package/templates/native-go-background/frontend/src/background/i18n/en.json +0 -83
  1174. package/templates/native-go-background/frontend/src/background/i18n/es.json +0 -83
  1175. package/templates/native-go-background/frontend/src/background/i18n/fr.json +0 -83
  1176. package/templates/native-go-background/frontend/src/background/i18n/it.json +0 -83
  1177. package/templates/native-go-background/frontend/src/background/i18n/ja.json +0 -83
  1178. package/templates/native-go-background/frontend/src/background/i18n/ko.json +0 -83
  1179. package/templates/native-go-background/frontend/src/background/i18n/zh-CN.json +0 -83
  1180. package/templates/native-go-background/frontend/src/background/i18n/zh-TW.json +0 -83
  1181. package/templates/native-go-background/frontend/src/background/picker-provider.ts +0 -13
  1182. package/templates/native-go-background/frontend/test/background.test.ts +0 -179
  1183. package/templates/native-go-better-auth/backend/internal/app/identity.go +0 -208
  1184. package/templates/native-go-better-auth/backend/internal/app/identity_test.go +0 -113
  1185. package/templates/native-go-better-auth/node/app.mjs +0 -72
  1186. package/templates/native-go-better-auth/node/build.mjs +0 -4
  1187. package/templates/native-go-better-auth/node/package-lock.json +0 -862
  1188. package/templates/native-go-better-auth/node/package.json +0 -1
  1189. package/templates/native-go-better-auth/node/test/auth.test.mjs +0 -31
  1190. package/templates/native-go-integration/backend/internal/app/identity_none.go +0 -6
  1191. package/templates/native-go-integration/backend/internal/app/personal.go +0 -203
  1192. package/templates/native-go-integration/backend/internal/app/personal_test.go +0 -156
  1193. package/templates/native-go-root/backend/internal/app/root.go +0 -107
  1194. package/templates/native-go-root/backend/internal/app/root_test.go +0 -124
  1195. package/templates/native-go-root/root/whoami.sh +0 -6
  1196. package/templates/native-go-vue/frontend/README-JOBS.md +0 -75
  1197. package/templates/native-go-vue/frontend/README-M2.md +0 -64
  1198. package/templates/native-go-vue/frontend/src/M2App.vue +0 -57
  1199. package/templates/native-go-vue/frontend/src/SDKApp.vue +0 -203
  1200. package/templates/native-go-vue/frontend/src/jobs/InteractiveJobForm.vue +0 -70
  1201. package/templates/native-go-vue/frontend/src/jobs/JobsAdminPanel.vue +0 -33
  1202. package/templates/native-go-vue/frontend/src/jobs/JobsPanel.vue +0 -135
  1203. package/templates/native-go-vue/frontend/src/jobs/connected-provider.ts +0 -179
  1204. package/templates/native-go-vue/frontend/src/jobs/i18n/de.json +0 -62
  1205. package/templates/native-go-vue/frontend/src/jobs/i18n/en.json +0 -62
  1206. package/templates/native-go-vue/frontend/src/jobs/i18n/es.json +0 -62
  1207. package/templates/native-go-vue/frontend/src/jobs/i18n/fr.json +0 -62
  1208. package/templates/native-go-vue/frontend/src/jobs/i18n/it.json +0 -62
  1209. package/templates/native-go-vue/frontend/src/jobs/i18n/ja.json +0 -62
  1210. package/templates/native-go-vue/frontend/src/jobs/i18n/ko.json +0 -62
  1211. package/templates/native-go-vue/frontend/src/jobs/i18n/zh-CN.json +0 -62
  1212. package/templates/native-go-vue/frontend/src/jobs/i18n/zh-TW.json +0 -62
  1213. package/templates/native-go-vue/frontend/src/jobs/i18n.ts +0 -15
  1214. package/templates/native-go-vue/frontend/src/jobs/mock-provider.ts +0 -67
  1215. package/templates/native-go-vue/frontend/src/jobs/provider.ts +0 -60
  1216. package/templates/native-go-vue/frontend/src/jobs/validate.ts +0 -44
  1217. package/templates/native-go-vue/frontend/src/m2-main.ts +0 -21
  1218. package/templates/native-go-vue/frontend/src/m2-style.css +0 -7
  1219. package/templates/native-go-vue/frontend/src/nas/M2Files.vue +0 -94
  1220. package/templates/native-go-vue/frontend/src/nas/M2PathPicker.vue +0 -70
  1221. package/templates/native-go-vue/frontend/src/nas/M2Settings.vue +0 -69
  1222. package/templates/native-go-vue/frontend/src/nas/NasGrantSettings.vue +0 -74
  1223. package/templates/native-go-vue/frontend/src/nas/NasPathPicker.vue +0 -106
  1224. package/templates/native-go-vue/frontend/src/nas/NasUnavailable.vue +0 -20
  1225. package/templates/native-go-vue/frontend/src/nas/i18n/de.json +0 -74
  1226. package/templates/native-go-vue/frontend/src/nas/i18n/en.json +0 -74
  1227. package/templates/native-go-vue/frontend/src/nas/i18n/es.json +0 -74
  1228. package/templates/native-go-vue/frontend/src/nas/i18n/fr.json +0 -74
  1229. package/templates/native-go-vue/frontend/src/nas/i18n/it.json +0 -74
  1230. package/templates/native-go-vue/frontend/src/nas/i18n/ja.json +0 -74
  1231. package/templates/native-go-vue/frontend/src/nas/i18n/ko.json +0 -74
  1232. package/templates/native-go-vue/frontend/src/nas/i18n/m2/de.json +0 -56
  1233. package/templates/native-go-vue/frontend/src/nas/i18n/m2/en.json +0 -56
  1234. package/templates/native-go-vue/frontend/src/nas/i18n/m2/es.json +0 -56
  1235. package/templates/native-go-vue/frontend/src/nas/i18n/m2/fr.json +0 -56
  1236. package/templates/native-go-vue/frontend/src/nas/i18n/m2/it.json +0 -56
  1237. package/templates/native-go-vue/frontend/src/nas/i18n/m2/ja.json +0 -56
  1238. package/templates/native-go-vue/frontend/src/nas/i18n/m2/ko.json +0 -56
  1239. package/templates/native-go-vue/frontend/src/nas/i18n/m2/zh-CN.json +0 -56
  1240. package/templates/native-go-vue/frontend/src/nas/i18n/m2/zh-TW.json +0 -56
  1241. package/templates/native-go-vue/frontend/src/nas/i18n/zh-CN.json +0 -74
  1242. package/templates/native-go-vue/frontend/src/nas/i18n/zh-TW.json +0 -74
  1243. package/templates/native-go-vue/frontend/src/nas/m2-contract.ts +0 -33
  1244. package/templates/native-go-vue/frontend/src/nas/m2-i18n.ts +0 -24
  1245. package/templates/native-go-vue/frontend/src/nas/m2-provider.ts +0 -104
  1246. package/templates/native-go-vue/frontend/src/nas/mock-provider.ts +0 -119
  1247. package/templates/native-go-vue/frontend/src/nas/use-m2-request.ts +0 -18
  1248. package/templates/native-go-vue/frontend/src/sdk-main.ts +0 -39
  1249. package/templates/native-go-vue/frontend/test/jobs-connected.test.ts +0 -163
  1250. package/templates/native-go-vue/frontend/test/jobs-preview.html +0 -22
  1251. package/templates/native-go-vue/frontend/test/jobs.test.ts +0 -176
  1252. package/templates/native-go-vue/frontend/test/m2-preview.html +0 -27
  1253. package/templates/native-go-vue/frontend/test/m2-provider.test.ts +0 -87
  1254. package/templates/native-go-vue/frontend/test/m2-ui.test.ts +0 -209
  1255. package/templates/native-go-vue/frontend/test/nas-provider.test.ts +0 -81
  1256. package/templates/native-go-vue/frontend/test/nas-request.test.ts +0 -21
  1257. package/templates/native-go-vue/frontend/test/nas-ui.test.ts +0 -261
  1258. package/templates/native-go-vue/frontend/test/picker-wire.test.ts +0 -110
  1259. package/templates/native-go-vue/frontend/test/shell-preview.html +0 -19
  1260. package/templates/native-go-vue/frontend/test/shell-sdk.test.ts +0 -73
  1261. /package/dist/templates/{hello-files → compose}/compose.yaml +0 -0
  1262. /package/dist/templates/{hello-files → compose}/synology-app.yaml +0 -0
  1263. /package/dist/templates/{native-go-background → native-go-jobs}/backend/internal/app/background_on.go +0 -0
  1264. /package/dist/templates/{native-go-background → native-go-jobs}/frontend/src/background/i18n.ts +0 -0
  1265. /package/templates/{hello-files → compose}/compose.yaml +0 -0
  1266. /package/templates/{hello-files → compose}/synology-app.yaml +0 -0
  1267. /package/templates/{native-go-background → native-go-jobs}/backend/internal/app/background_on.go +0 -0
  1268. /package/templates/{native-go-background → native-go-jobs}/frontend/src/background/i18n.ts +0 -0
@@ -1,135 +0,0 @@
1
- <script setup lang="ts">
2
- import {computed,inject,onMounted,onBeforeUnmount,ref,watch} from 'vue'
3
- import {Button,Callout,Checkbox,SettingsSection} from '@synopackageland/ui'
4
- import {JobsProviderKey,type BackgroundSummary,type JobView} from './provider'
5
- import {unavailableJobsProvider} from './mock-provider'
6
- import {jobPage,consentSummary} from './validate'
7
- import {jobCopy} from './i18n'
8
- import InteractiveJobForm from './InteractiveJobForm.vue'
9
- import {useNasRequest} from '../nas/use-request'
10
- const props=defineProps<{locale:string;section?:'all'|'interactive'|'background'}>(),copy=computed(()=>jobCopy(props.locale))
11
- // One provider can have both modes; the shell shows them as separate pages
12
- // while the combined 'all' view stays the default for the standalone preview.
13
- const mode=computed(()=>props.section??'all')
14
- const showInteractive=computed(()=>mode.value!=='background'),showBackground=computed(()=>mode.value!=='interactive')
15
- const visibleJobs=computed(()=>mode.value==='all'?jobs.value:jobs.value.filter(job=>job.mode===(mode.value==='interactive'?'interactive':'background')))
16
- const provider=inject(JobsProviderKey,unavailableJobsProvider),request=useNasRequest(),{busy,error}=request
17
- let poll:ReturnType<typeof setTimeout>|undefined
18
- function clearPoll(){if(poll!==undefined)clearTimeout(poll);poll=undefined}
19
- function schedulePoll(){if(provider.mode==='connected'&&provider.readiness?.interactive==='ready'&&jobs.value.some(j=>['pending','running','draining','cancel-requested'].includes(j.state)))poll=setTimeout(()=>{poll=undefined;void load()},2500)}
20
- const invalidated=ref(false)
21
- const nextCursor=ref<string>()
22
- const jobs=ref<readonly JobView[]>([]),summary=ref<BackgroundSummary>(),agree=ref(false),uncertain=ref(false)
23
- watch(error,e=>{if(['denied','session_required','auth_unavailable'].includes((e as {code?:string})?.code??'')){invalidated.value=true;jobs.value=[];summary.value=undefined;agree.value=false}})
24
- async function load(cursor?:string){if(invalidated.value||busy.value)return;clearPoll();const result=await request.run(async signal=>jobPage(await provider.list(signal,cursor)));if(result){jobs.value=result.items;nextCursor.value=result.nextCursor;schedulePoll()}else if(error.value&&provider.readiness?.interactive!=='revalidating'){jobs.value=[];nextCursor.value=undefined}}
25
- async function refresh(){await load()}
26
- async function prepare(){agree.value=false;const result=await request.run(async signal=>consentSummary(await provider.prepare(signal)));if(result)summary.value=result}
27
- function discard(){request.cancel();summary.value=undefined;agree.value=false}
28
- async function confirm(){
29
- const exact=summary.value;if(!exact||!agree.value||uncertain.value)return
30
- if(Date.now()>=exact.intentExpiresAt){request.error.value={code:'expired'};return}
31
- // Any missing confirmation reply is uncertain, including AbortSignal/timeout.
32
- // Keep the original intent and never offer a second submission from this view.
33
- uncertain.value=true
34
- const ok=await request.run(async signal=>{await provider.confirm(exact,signal);return true})
35
- if(ok){summary.value=undefined;uncertain.value=false;await refresh()}
36
- }
37
- async function lookup(){const exact=summary.value;if(!exact)return
38
- const found=await request.run(signal=>provider.lookup(exact.intentId,signal))
39
- if(found){summary.value=undefined;uncertain.value=false;await refresh()}
40
- }
41
- async function stop(job:JobView){
42
- await request.run(async signal=>{
43
- if(job.mode==='background'){
44
- const d=job.delegation;if(!d)throw {code:'unavailable'}
45
- await provider.revoke(d.id,d.revision,d.storeRevision,signal)
46
- }else await provider.cancel(job.jobId,job.revision,signal)
47
- });await refresh()
48
- }
49
- async function resubmit(job:JobView){
50
- await request.run(signal=>provider.resubmit!(job.jobId,signal));await refresh()
51
- }
52
- async function lookupResubmission(job:JobView){
53
- await request.run(signal=>provider.lookupResubmission!(job.jobId,signal));await refresh()
54
- }
55
- function fenceCanceled(job:JobView){return job.mode==='interactive'&&job.state==='canceled'&&job.safeReason==='fenced'}
56
- function label(job:JobView){const c=copy.value
57
- return ({pending:c.pending,running:c.running,'cancel-requested':c.stopping,draining:c.stopping,succeeded:c.succeeded,failed:c.failed,canceled:c.canceled,interrupted:c.interrupted,'cleanup-required':c.cleanup})[job.state]??c.error
58
- }
59
- function time(value:number){try{return new Intl.DateTimeFormat(props.locale,{dateStyle:'medium',timeStyle:'short'}).format(value)}catch{return new Date(value).toISOString()}}
60
- onMounted(()=>{if(provider.mode!=='unavailable')void refresh()})
61
- onBeforeUnmount(()=>{clearPoll();request.cancel();provider.disconnect()})
62
- </script>
63
- <template>
64
- <SettingsSection :title="copy.title" :collapsible="false" :aria-busy="busy" class="jobs-panel">
65
- <Callout v-if="provider.mode==='unavailable'" tone="info" :title="copy.unavailable" />
66
- <Callout v-else-if="invalidated" tone="danger" :title="copy.accessLost" role="alert" />
67
- <template v-else>
68
- <p v-if="provider.mode==='mock'">{{ copy.mock }}</p>
69
- <template v-if="showInteractive">
70
- <Callout v-if="provider.readiness?.interactive==='revalidating'" tone="info" :title="copy.revalidating" role="status" aria-live="polite" />
71
- <Callout v-if="provider.readiness?.interactive==='unavailable'" tone="info" :title="copy.interactiveUnavailable" />
72
- <p>{{ copy.interactiveHelp }}</p>
73
- </template>
74
- <template v-if="showBackground">
75
- <Callout v-if="provider.readiness?.background==='unavailable'" tone="info" :title="copy.backgroundUnavailable" />
76
- <p v-else>{{ copy.backgroundHelp }}</p>
77
- </template>
78
- <Callout v-if="error && (error as {code?:string}).code!=='revalidating'" tone="danger" :title="copy.error" role="alert" />
79
- <InteractiveJobForm v-if="showInteractive && provider.interactive" :provider="provider" :locale="locale" @submitted="refresh" />
80
- <div class="integration-actions">
81
- <Button v-if="showBackground && provider.readiness?.background!=='unavailable'" :disabled="busy||!!summary" @click="prepare">{{ copy.prepare }}</Button>
82
- <Button variant="secondary" :disabled="busy" @click="refresh">{{ copy.refresh }}</Button>
83
- </div>
84
- <section v-if="showBackground && summary" :aria-label="copy.prepare" class="jobs-review">
85
- <dl class="nas-summary">
86
- <dt>{{ copy.app }}</dt><dd>{{ summary.app }}</dd>
87
- <dt>{{ copy.worker }}</dt><dd>{{ summary.worker }}</dd>
88
- <dt>{{ copy.scope }}</dt><dd>{{ summary.parent }}</dd>
89
- <dt>{{ copy.actions }}</dt><dd>{{ summary.actions.join(', ') }}</dd>
90
- <dt>{{ copy.steps }}</dt><dd>{{ summary.steps }}</dd>
91
- <dt>{{ copy.starts }}</dt><dd>{{ time(summary.notBefore) }}</dd>
92
- <dt>{{ copy.expires }}</dt><dd>{{ time(summary.expiresAt) }}</dd>
93
- </dl>
94
- <ol><li v-for="(step,index) in summary.inputSummary" :key="index">{{ step }}</li></ol>
95
- <p>{{ copy.warning }}</p>
96
- <template v-if="!uncertain">
97
- <Checkbox v-model="agree" class="jobs-agree" :disabled="busy" :label="copy.agree" />
98
- <div class="integration-actions"><Button :disabled="busy||!agree" @click="confirm">{{ copy.confirm }}</Button><Button variant="secondary" @click="discard">{{ copy.close }}</Button></div>
99
- </template>
100
- <template v-else><p role="status">{{ copy.uncertain }}</p><Button :disabled="busy" @click="lookup">{{ copy.lookup }}</Button></template>
101
- </section>
102
- <p v-if="!visibleJobs.length&&!busy&&!error">{{ copy.empty }}</p>
103
- <ul class="nas-grants">
104
- <li v-for="job in visibleJobs" :key="job.jobId">
105
- <p role="status">{{ label(job) }}</p>
106
- <progress v-if="job.totalUnits!==undefined&&job.totalUnits>0" :value="job.completedUnits" :max="job.totalUnits" :aria-label="label(job)" />
107
- <p v-else>{{ copy.unknown }}</p>
108
- <p v-if="job.delegation?.revoked">{{ copy.revoked }}</p><p v-if="job.drained">{{ copy.drained }}</p>
109
- <p v-if="job.effectsUnknown">{{ copy.effects }}</p>
110
- <template v-if="fenceCanceled(job)">
111
- <p>{{ copy.fenceCanceled }}</p>
112
- <template v-if="provider.resubmissionState?.(job.jobId)==='uncertain'">
113
- <p role="status">{{ copy.resubmitUncertain }}</p>
114
- <Button variant="secondary" :disabled="busy||provider.readiness?.interactive!=='ready'" @click="lookupResubmission(job)">{{ copy.resubmitLookup }}</Button>
115
- </template>
116
- <p v-else-if="provider.resubmissionState?.(job.jobId)==='submitted'" role="status">{{ copy.resubmitSubmitted }}</p>
117
- <template v-else>
118
- <p v-if="!provider.canResubmit?.(job.jobId)">{{ copy.resubmitUnavailable }}</p>
119
- <Button variant="secondary" :disabled="busy||provider.readiness?.interactive!=='ready'||!provider.canResubmit?.(job.jobId)" @click="resubmit(job)">{{ copy.resubmit }}</Button>
120
- </template>
121
- </template>
122
- <Button v-if="['pending','running','draining','cancel-requested'].includes(job.state)" variant="secondary" :disabled="busy||provider.readiness?.interactive==='revalidating'" @click="stop(job)">{{ job.mode==='background'?copy.revoke:copy.cancel }}</Button>
123
- </li>
124
- </ul>
125
- <Button v-if="nextCursor" :disabled="busy" variant="secondary" @click="load(nextCursor)">{{ copy.next }}</Button>
126
- </template>
127
- </SettingsSection>
128
- </template>
129
- <style scoped>
130
- .jobs-panel { max-inline-size: 70ch; overflow-wrap: anywhere; }
131
- .jobs-review { margin-block: var(--ui-space-4, 1rem); }
132
- .jobs-agree { margin-block: var(--ui-space-4, 1rem); }
133
- dd { overflow-wrap: anywhere; }
134
- progress { max-inline-size: 100%; accent-color: var(--ui-accent); }
135
- </style>
@@ -1,179 +0,0 @@
1
- import {reactive,shallowRef} from 'vue'
2
- import type {Context} from '../context'
3
- import type {JobsProvider,JobsAdminProvider,JobPage,JobView,BackgroundSummary,InteractivePlan,PreparedInteractive,InteractiveWorker} from './provider'
4
- import {jobPage,adminPage,jobViews} from './validate'
5
-
6
- export const ATTACH_RENEW_MS=2000
7
- export const ATTACH_TTL_MS=6000
8
- const REQUEST_MS=3000
9
- const MAX_ATTACH=2
10
- const ref=(x:unknown):x is string=>typeof x==='string'&&/^[a-f0-9]{64}$/.test(x)
11
- const positive=(x:unknown):x is number=>Number.isSafeInteger(x)&&Number(x)>0
12
- const refused=(code='invalid-request'):never=>{throw {code}}
13
- const safeCodes=new Set(['invalid-request','incompatible','unsupported','replay','stale','expired','denied','unavailable','suspended','revoked','fenced','revalidating','busy','limit-exceeded','canceled','timeout','cleanup-required','session_required','auth_unavailable'])
14
- function safeError(e:unknown){const code=(e as {code?:string})?.code;return {code:code&&safeCodes.has(code)?code:'unavailable'}}
15
- export type {PreparedInteractive} from './provider'
16
- interface Lease {jobId:string;attachId:string;revision:number;deadline:number}
17
- interface WireJob extends Omit<JobView,'completedUnits'|'totalUnits'|'delegation'> {
18
- progress:{completedUnits:number;totalUnits?:number}
19
- delegation?:{id:string;revision:number;storeRevision:number;state:string}
20
- }
21
- function view(raw:WireJob):JobView{
22
- if(!raw||!ref(raw.jobId)||!raw.progress)refused()
23
- return jobViews([{jobId:raw.jobId,revision:raw.revision,mode:raw.mode,state:raw.state,drained:raw.drained,effectsUnknown:raw.effectsUnknown,completedUnits:raw.progress.completedUnits,...(raw.safeReason?{safeReason:raw.safeReason}:{}),...(raw.progress.totalUnits===undefined?{}:{totalUnits:raw.progress.totalUnits}),...(raw.delegation?{delegation:{id:raw.delegation.id,revision:raw.delegation.revision,storeRevision:raw.delegation.storeRevision,revoked:raw.delegation.state==='revoked'}}:{})}])[0]
24
- }
25
- function prepared(raw:PreparedInteractive):PreparedInteractive{
26
- if(!raw||!ref(raw.intentId)||!ref(raw.jobId)||!ref(raw.summaryDigest)||!positive(raw.expiresAt))refused()
27
- return {intentId:raw.intentId,jobId:raw.jobId,summaryDigest:raw.summaryDigest,expiresAt:raw.expiresAt}
28
- }
29
- function workerViews(raw:unknown):InteractiveWorker[]{
30
- if(raw===undefined)return [] // Older owners have no submission form.
31
- if(!Array.isArray(raw)||raw.length>16)return refused()
32
- const ids=new Set<string>()
33
- return raw.map(w=>{
34
- if(!w||typeof w.id!=='string'||! /^[a-z][a-z0-9_]{0,31}$/.test(w.id)||ids.has(w.id)||!positive(w.revision)||!positive(w.maxBytes)||w.maxBytes>524288||!Array.isArray(w.actions)||!w.actions.length||w.actions.length>3||new Set(w.actions).size!==w.actions.length||w.actions.some((a:unknown)=>!['nas.files.list','nas.files.stat','nas.files.read'].includes(a as string)))refused()
35
- ids.add(w.id);return {id:w.id,revision:w.revision,actions:[...w.actions],maxBytes:w.maxBytes}
36
- })
37
- }
38
- export function createConnectedJobsProvider(ctx:Pick<Context,'call'>){
39
- let disposed=false,timer:ReturnType<typeof setTimeout>|undefined
40
- const readiness=reactive<{interactive:'ready'|'revalidating'|'unavailable';background:'unavailable'}>({interactive:'unavailable',background:'unavailable'})
41
- const workers=shallowRef<readonly InteractiveWorker[]>([])
42
- // Local plans are display/retry input, never authority or persisted credentials.
43
- const preparedPlans=new Map<string,InteractivePlan>(),plans=new Map<string,InteractivePlan>()
44
- const resubmissions=new Map<string,{state:'preparing'|'uncertain'|'submitted';prepared?:PreparedInteractive}>()
45
- function retain<K,V>(map:Map<K,V>,key:K,value:V){if(map.size>=256&&!map.has(key))map.delete(map.keys().next().value!);map.set(key,value)}
46
- const life=new AbortController(),leases=new Map<string,Lease>(),known=new Map<string,JobView>()
47
- async function request<T>(method:string,args:Record<string,unknown>,signal:AbortSignal):Promise<T>{
48
- if(disposed||signal.aborted)refused('canceled')
49
- let cleanup=()=>{}
50
- const abort=new Promise<never>((_,reject)=>{
51
- const canceled=()=>reject({code:'canceled'})
52
- const deadline=setTimeout(()=>reject({code:'timeout'}),REQUEST_MS)
53
- signal.addEventListener('abort',canceled,{once:true});life.signal.addEventListener('abort',canceled,{once:true})
54
- cleanup=()=>{clearTimeout(deadline);signal.removeEventListener('abort',canceled);life.signal.removeEventListener('abort',canceled)}
55
- })
56
- try{
57
- const value=await Promise.race([ctx.call<T>(method,args),abort])
58
- if(disposed||signal.aborted)refused('canceled')
59
- return value
60
- }catch(e){const error=safeError(e);if(error.code==='revalidating')readiness.interactive='revalidating';else if(readiness.interactive!=='revalidating')readiness.interactive='unavailable';throw error}finally{cleanup()}
61
- }
62
- function schedule(){if(!disposed&&leases.size&&timer===undefined)timer=setTimeout(()=>{timer=undefined;void renew()},ATTACH_RENEW_MS)}
63
- async function renew(){
64
- for(const lease of [...leases.values()]){
65
- if(disposed)break
66
- if(performance.now()>=lease.deadline){leases.delete(lease.jobId);continue}
67
- try{
68
- await request('jobs.attach',{jobId:lease.jobId,attachId:lease.attachId},life.signal)
69
- if(!disposed&&leases.get(lease.jobId)===lease)lease.deadline=performance.now()+ATTACH_TTL_MS
70
- }catch(e){
71
- if(['expired','stale','denied','fenced','revalidating','canceled','session_required','auth_unavailable'].includes(safeError(e).code))leases.delete(lease.jobId)
72
- // Busy/network failure cannot extend the original client deadline. Root
73
- // monotonic TTL is authoritative even while this tab's timer is suspended.
74
- }
75
- }
76
- schedule()
77
- }
78
- function remember(job:JobView){
79
- if(known.size>=256&&!known.has(job.jobId))known.clear()
80
- known.set(job.jobId,job)
81
- const lease=leases.get(job.jobId)
82
- if(lease){lease.revision=job.revision;if(['succeeded','failed','canceled','interrupted','cleanup-required'].includes(job.state))leases.delete(job.jobId)}
83
- }
84
- function disconnect(){
85
- if(disposed)return
86
- disposed=true
87
- readiness.interactive='unavailable'
88
- if(timer!==undefined)clearTimeout(timer)
89
- timer=undefined
90
- window.removeEventListener('pagehide',disconnect)
91
- life.abort()
92
- for(const lease of leases.values()){
93
- // Best effort only. ctx.call preserves native session/CSRF transport. We do
94
- // not claim delivery or Q and never renew after pagehide/bfcache/unmount.
95
- void ctx.call('jobs.cancel',{jobId:lease.jobId,revision:lease.revision}).catch(()=>{})
96
- }
97
- workers.value=[];leases.clear();known.clear();preparedPlans.clear();plans.clear();resubmissions.clear()
98
- }
99
- window.addEventListener('pagehide',disconnect)
100
- const provider:JobsProvider={
101
- mode:'connected',readiness,
102
- async list(signal,cursor){
103
- const raw=await request<{revision:number;items:WireJob[];nextCursor?:string;availability?:string;workers?:unknown}>('jobs.status',cursor?{cursor}:{},signal)
104
- if(!raw||!Array.isArray(raw.items)||raw.items.length>10)refused()
105
- const page=jobPage({revision:raw.revision,items:raw.items.map(view),...(raw.nextCursor?{nextCursor:raw.nextCursor}:{})})
106
- try{workers.value=raw.availability==='session-required'?workerViews(raw.workers):[]}
107
- catch(e){workers.value=[];readiness.interactive='unavailable';throw e}
108
- if(raw.availability==='session-required')readiness.interactive='ready'
109
- else if(readiness.interactive!=='revalidating')readiness.interactive='unavailable'
110
- page.items.forEach(remember);return page
111
- },
112
- async prepare(){return refused('unavailable')},
113
- async confirm(_summary:BackgroundSummary){return refused('unavailable')},
114
- async lookup(intentId,signal){if(!ref(intentId))refused();const job=view(await request<WireJob>('jobs.lookup',{intentId},signal));remember(job);return job},
115
- async cancel(jobId,revision,signal){if(!ref(jobId)||!positive(revision))refused();await request('jobs.cancel',{jobId,revision},signal);leases.delete(jobId)},
116
- async revoke(id,revision,storeRevision,signal){
117
- const job=[...known.values()].find(j=>j.delegation?.id===id)
118
- if(!job)return refused('stale')
119
- const raw=await request<{revoked:boolean;drained:boolean}>('jobs.revoke',{jobId:job.jobId,revision:job.revision,delegationRevision:revision,storeRevision},signal)
120
- if(typeof raw?.revoked!=='boolean'||typeof raw.drained!=='boolean')refused()
121
- return {revoked:raw.revoked,drained:raw.drained}
122
- },
123
- canResubmit(jobId){const job=known.get(jobId);return !!job&&job.mode==='interactive'&&job.state==='canceled'&&job.safeReason==='fenced'&&plans.has(jobId)&&!resubmissions.has(jobId)},
124
- resubmissionState(jobId){const state=resubmissions.get(jobId)?.state;return state==='preparing'?undefined:state},
125
- async resubmit(jobId,signal){
126
- if(!provider.canResubmit?.(jobId)||readiness.interactive!=='ready')return refused('unavailable')
127
- const plan=plans.get(jobId)!
128
- // Reserve locally before the first await, preventing simultaneous clicks.
129
- retain(resubmissions,jobId,{state:'preparing'})
130
- let value:PreparedInteractive
131
- try{value=await connected.prepareInteractive(signal,plan.worker,plan.parent,plan.input)}
132
- catch(e){resubmissions.delete(jobId);throw e}
133
- plans.delete(jobId) // consume the old plan before the one submit attempt
134
- resubmissions.set(jobId,{state:'uncertain',prepared:value})
135
- const result=await connected.submitInteractive(value,signal)
136
- resubmissions.set(jobId,{state:'submitted',prepared:value})
137
- return result
138
- },
139
- async lookupResubmission(jobId,signal){
140
- const retry=resubmissions.get(jobId)
141
- if(!retry||retry.state!=='uncertain'||!retry.prepared)return refused('unavailable')
142
- const job=await provider.lookup(retry.prepared.intentId,signal)
143
- if(!job||job.jobId!==retry.prepared.jobId)return refused('unavailable')
144
- retry.state='submitted';return {jobId:job.jobId}
145
- },disconnect,
146
- }
147
- const connected=Object.assign(provider,{
148
- readiness,
149
- async prepareInteractive(signal:AbortSignal,worker:InteractivePlan['worker'],parent:InteractivePlan['parent'],input:InteractivePlan['input']){
150
- const plan:InteractivePlan={worker:{id:worker.id,revision:worker.revision},parent:{id:parent.id,revision:parent.revision},input:{steps:input.steps.map(s=>({action:s.action,segments:[...s.segments],...(s.limit===undefined?{}:{limit:s.limit}),...(s.maxBytes===undefined?{}:{maxBytes:s.maxBytes})}))}}
151
- const value=prepared(await request<PreparedInteractive>('jobs.prepare',plan as unknown as Record<string,unknown>,signal))
152
- retain(preparedPlans,value.intentId,plan);return value
153
- },
154
- async submitInteractive(value:PreparedInteractive,signal:AbortSignal){
155
- const input=prepared(value)
156
- if(leases.size>=MAX_ATTACH)refused('busy')
157
- const plan=preparedPlans.get(input.intentId);preparedPlans.delete(input.intentId)
158
- // Never retry submit automatically, including after a lost response.
159
- const raw=await request<Lease&{renewAfterMs:number;ttlMs:number}>('jobs.submit',{intentId:input.intentId,summaryDigest:input.summaryDigest},signal)
160
- if(!raw||raw.jobId!==input.jobId||!ref(raw.attachId)||!positive(raw.revision)||raw.renewAfterMs!==ATTACH_RENEW_MS||raw.ttlMs!==ATTACH_TTL_MS)refused()
161
- leases.set(raw.jobId,{jobId:raw.jobId,attachId:raw.attachId,revision:raw.revision,deadline:performance.now()+ATTACH_TTL_MS})
162
- if(plan)retain(plans,raw.jobId,plan)
163
- schedule()
164
- return {jobId:raw.jobId}
165
- },
166
- })
167
- return Object.assign(connected,{interactive:{get workers(){return workers.value},prepareInteractive:connected.prepareInteractive,submitInteractive:connected.submitInteractive}})
168
- }
169
- export function createConnectedJobsAdminProvider(ctx:Pick<Context,'call'>):JobsAdminProvider{
170
- return {mode:'connected',async list(signal,cursor){
171
- if(signal.aborted)refused('canceled')
172
- const page=adminPage(await ctx.call('jobs.admin.status',cursor?{cursor}:{}))
173
- if(signal.aborted)refused('canceled');return page
174
- },async cancel(jobId,revision,signal){
175
- if(signal.aborted)refused('canceled')
176
- await ctx.call('jobs.admin.cancel',{jobId,revision})
177
- if(signal.aborted)refused('canceled')
178
- }}
179
- }
@@ -1,62 +0,0 @@
1
- {
2
- "title": "Aufträge",
3
- "unavailable": "Aufträge sind in diesem Build nicht verfügbar.",
4
- "mock": "Testvorschau: keine NAS-Aktion",
5
- "interactiveHelp": "Diese Ansicht erneuert interaktive Aufträge alle 2 Sekunden. Nach 6 Sekunden ohne Erneuerung beginnt der Abbruch; er endet erst nach bestätigter Bereinigung. Schließen fordert den Abbruch an. Verborgene Tabs können zum Ablauf und Abbruch führen.",
6
- "backgroundHelp": "Bestätigte Hintergrundarbeit kann nach Schließen oder Abmelden bis zum Ablauf oder Neustart weiterlaufen. Kein Fortsetzen nach Neustart.",
7
- "prepare": "Hintergrundauftrag prüfen",
8
- "confirm": "Einmal bestätigen",
9
- "agree": "Ich stimme diesem einmaligen Nur-Lese-Auftrag auch während meiner Abwesenheit zu.",
10
- "refresh": "Aktualisieren",
11
- "lookup": "Ursprünglichen Auftrag prüfen",
12
- "uncertain": "Bestätigungsantwort verloren. Ursprünglichen Auftrag prüfen, nicht erneut senden.",
13
- "close": "Prüfung verwerfen",
14
- "cancel": "Auftrag abbrechen",
15
- "revoke": "Hintergrundzustimmung widerrufen",
16
- "revoked": "Widerrufen",
17
- "drained": "Bereinigung bestätigt",
18
- "cleanup": "Bereinigung erforderlich",
19
- "unknown": "Gesamtfortschritt unbekannt",
20
- "error": "Anfrage fehlgeschlagen. Aktuellen Zustand durch Aktualisieren prüfen.",
21
- "empty": "Keine Aufträge",
22
- "pending": "Ausstehend",
23
- "running": "Läuft",
24
- "stopping": "Wird beendet",
25
- "succeeded": "Abgeschlossen",
26
- "failed": "Fehlgeschlagen",
27
- "canceled": "Abgebrochen",
28
- "interrupted": "Unterbrochen",
29
- "app": "App",
30
- "worker": "Worker",
31
- "scope": "Bereichsreferenz",
32
- "actions": "Aktionen",
33
- "steps": "Schritte",
34
- "expires": "Ablauf",
35
- "starts": "Frühester Start",
36
- "warning": "Bereits erfolgte Aktionen sind nicht rückgängig zu machen. Zustimmung gilt einmal im aktuellen Lauf.",
37
- "effects": "Auswirkungen möglicherweise unbekannt",
38
- "next": "Nächste Seite",
39
- "accessLost": "Zugriff nicht bestätigt. Melden Sie sich erneut an und öffnen Sie diese Ansicht neu.",
40
- "interactiveUnavailable": "Interaktive Aufträge sind erst nach Anbindung der nativen Sitzungs- und Berechtigungsprüfung verfügbar.",
41
- "backgroundUnavailable": "Hintergrundaufträge sind nicht verfügbar.",
42
- "adminTitle": "Auftragsverwaltung",
43
- "loadManagement": "Aktualisieren, um den Verwaltungsstatus zu laden.",
44
- "revalidating": "Die Paketprüfungen werden erneut validiert. Neue Aufträge sind pausiert. Aktualisieren Sie zur Prüfung der Wiederherstellung. Abgebrochene Aufträge werden nicht fortgesetzt.",
45
- "fenceCanceled": "Dieser Auftrag wurde abgebrochen, weil die Paketprüfungen nicht verfügbar waren. Nach der Wiederherstellung erstellt erneutes Senden einen neuen Auftrag mit erneuter Berechtigungsprüfung. Es erfolgt kein automatisches Senden.",
46
- "resubmit": "Erneut senden",
47
- "resubmitUnavailable": "Der ursprüngliche Ablauf ist in dieser Ansicht nicht verfügbar. Wählen Sie die Eingaben erneut, um einen neuen Auftrag zu erstellen.",
48
- "resubmitUncertain": "Die Antwort auf das erneute Senden fehlt. Prüfen Sie den neuen Auftrag und senden Sie nicht erneut.",
49
- "resubmitLookup": "Neuen Auftrag prüfen",
50
- "resubmitSubmitted": "Ein neuer Auftrag wurde gesendet. Der abgebrochene Auftrag bleibt gestoppt.",
51
- "newInteractive": "Neuer interaktiver Auftrag",
52
- "chooseSource": "Quelldatei oder Ordner wählen",
53
- "sourceHelp": "Nur lesender Auftrag mit Ihrer aktuellen DSM-Sitzung. Die Dateiauswahl speichert die Zustimmung für den übergeordneten Ordner. Inhalte werden verworfen; nur Zähler werden gemeldet.",
54
- "operation": "Aktion",
55
- "statOperation": "Metadaten prüfen",
56
- "listOperation": "Ordner auflisten",
57
- "readOperation": "Datei lesen (Bytes zählen)",
58
- "entryLimit": "Maximale Einträge (1–100)",
59
- "byteLimit": "Maximale Bytes",
60
- "submitInteractive": "Auftrag einmal senden",
61
- "interactiveSubmitted": "Auftrag gesendet. Prüfen Sie unten den Fortschritt."
62
- }
@@ -1,62 +0,0 @@
1
- {
2
- "title": "Jobs",
3
- "unavailable": "Jobs are unavailable in this build.",
4
- "mock": "Mock preview — no NAS operation",
5
- "interactiveHelp": "This view renews interactive work every 2 seconds. After 6 seconds without renewal, cancellation starts; it completes only after cleanup is confirmed. Closing the view requests cancellation. Hidden tabs may expire and cancel the job.",
6
- "backgroundHelp": "An explicitly confirmed background job may continue after closing or signing out, until expiry or restart. Restart does not resume it.",
7
- "prepare": "Review background job",
8
- "confirm": "Confirm once",
9
- "agree": "I agree to this one-time read-only job continuing while I am offline.",
10
- "refresh": "Refresh",
11
- "lookup": "Check original job",
12
- "uncertain": "Confirmation reply was lost. Check the original job; do not submit again.",
13
- "close": "Discard review",
14
- "cancel": "Cancel job",
15
- "revoke": "Revoke background consent",
16
- "revoked": "Revoked",
17
- "drained": "Cleanup confirmed",
18
- "cleanup": "Cleanup required",
19
- "unknown": "Progress total unknown",
20
- "error": "Request could not be completed. Refresh to check the current state.",
21
- "empty": "No jobs",
22
- "pending": "Pending",
23
- "running": "Running",
24
- "stopping": "Stopping",
25
- "succeeded": "Completed",
26
- "failed": "Failed",
27
- "canceled": "Canceled",
28
- "interrupted": "Interrupted",
29
- "app": "App",
30
- "worker": "Worker",
31
- "scope": "Scope reference",
32
- "actions": "Actions",
33
- "steps": "Steps",
34
- "expires": "Expires",
35
- "starts": "Earliest start",
36
- "warning": "Effects already completed cannot be undone. Consent is valid for one job before the app restarts.",
37
- "effects": "Effects may be unknown",
38
- "next": "Next page",
39
- "accessLost": "Access could not be verified. Sign in again and reopen this view.",
40
- "interactiveUnavailable": "Interactive jobs are unavailable until native session and permission checks are connected.",
41
- "backgroundUnavailable": "Background jobs are unavailable.",
42
- "adminTitle": "Job management",
43
- "loadManagement": "Refresh to load management status.",
44
- "revalidating": "Package checks are being revalidated. New jobs are paused. Refresh to check recovery; canceled jobs will not resume.",
45
- "fenceCanceled": "This job was canceled because package checks became unavailable. After recovery, resubmit to create a new job and check permissions again. Nothing is resubmitted automatically.",
46
- "resubmit": "Resubmit",
47
- "resubmitUnavailable": "The original plan is unavailable in this view. Select the inputs again to create a new job.",
48
- "resubmitUncertain": "The resubmission reply was lost. Check the new job; do not submit again.",
49
- "resubmitLookup": "Check new job",
50
- "resubmitSubmitted": "A new job was submitted. The canceled job remains stopped.",
51
- "newInteractive": "New interactive job",
52
- "chooseSource": "Choose source file or folder",
53
- "sourceHelp": "Read-only job using your current DSM session. Selecting a file saves consent for its containing folder. File contents are discarded; jobs report counters only.",
54
- "operation": "Operation",
55
- "statOperation": "Inspect metadata",
56
- "listOperation": "List folder",
57
- "readOperation": "Read file (count bytes)",
58
- "entryLimit": "Maximum entries (1–100)",
59
- "byteLimit": "Maximum bytes",
60
- "submitInteractive": "Submit job once",
61
- "interactiveSubmitted": "Job submitted. Check progress below."
62
- }
@@ -1,62 +0,0 @@
1
- {
2
- "title": "Trabajos",
3
- "unavailable": "Los trabajos no están disponibles en esta versión.",
4
- "mock": "Vista simulada: sin operaciones NAS",
5
- "interactiveHelp": "Esta vista renueva las tareas interactivas cada 2 segundos. Tras 6 segundos sin renovación, empieza la cancelación; termina cuando se confirma la limpieza. Cerrar la vista solicita la cancelación. Las pestañas ocultas pueden provocar la caducidad y la cancelación.",
6
- "backgroundHelp": "Un trabajo de fondo confirmado puede continuar tras cerrar o salir hasta caducar o reiniciar. No se reanuda tras reiniciar.",
7
- "prepare": "Revisar trabajo de fondo",
8
- "confirm": "Confirmar una vez",
9
- "agree": "Acepto este trabajo único de solo lectura mientras estoy desconectado.",
10
- "refresh": "Actualizar",
11
- "lookup": "Consultar trabajo original",
12
- "uncertain": "Se perdió la respuesta. Consulte el trabajo original sin enviarlo de nuevo.",
13
- "close": "Descartar revisión",
14
- "cancel": "Cancelar trabajo",
15
- "revoke": "Revocar consentimiento",
16
- "revoked": "Revocado",
17
- "drained": "Limpieza confirmada",
18
- "cleanup": "Limpieza necesaria",
19
- "unknown": "Total desconocido",
20
- "error": "No se pudo completar la solicitud. Actualice para comprobar el estado.",
21
- "empty": "Sin trabajos",
22
- "pending": "Pendiente",
23
- "running": "En ejecución",
24
- "stopping": "Deteniéndose",
25
- "succeeded": "Completado",
26
- "failed": "Fallido",
27
- "canceled": "Cancelado",
28
- "interrupted": "Interrumpido",
29
- "app": "Aplicación",
30
- "worker": "Worker",
31
- "scope": "Referencia de alcance",
32
- "actions": "Acciones",
33
- "steps": "Pasos",
34
- "expires": "Caducidad",
35
- "starts": "Inicio más temprano",
36
- "warning": "Los efectos ya producidos no se pueden deshacer. El consentimiento vale una vez en el período actual.",
37
- "effects": "Puede haber efectos desconocidos",
38
- "next": "Página siguiente",
39
- "accessLost": "No se pudo verificar el acceso. Inicie sesión y abra esta vista de nuevo.",
40
- "interactiveUnavailable": "Las tareas interactivas no están disponibles hasta conectar las comprobaciones nativas de sesión y permisos.",
41
- "backgroundUnavailable": "Las tareas en segundo plano no están disponibles.",
42
- "adminTitle": "Gestión de tareas",
43
- "loadManagement": "Actualice para cargar el estado de gestión.",
44
- "revalidating": "Se están revalidando las comprobaciones del paquete. Los trabajos nuevos están en pausa. Actualice para comprobar la recuperación; los trabajos cancelados no se reanudan.",
45
- "fenceCanceled": "Este trabajo se canceló porque las comprobaciones del paquete no estaban disponibles. Tras la recuperación, reenviarlo crea un trabajo nuevo y vuelve a comprobar los permisos. No hay reenvío automático.",
46
- "resubmit": "Volver a enviar",
47
- "resubmitUnavailable": "El plan original no está disponible en esta vista. Seleccione de nuevo las entradas para crear un trabajo nuevo.",
48
- "resubmitUncertain": "Se perdió la respuesta al reenvío. Compruebe el trabajo nuevo y no vuelva a enviarlo.",
49
- "resubmitLookup": "Comprobar trabajo nuevo",
50
- "resubmitSubmitted": "Se envió un trabajo nuevo. El trabajo cancelado sigue detenido.",
51
- "newInteractive": "Nueva tarea interactiva",
52
- "chooseSource": "Elegir archivo o carpeta de origen",
53
- "sourceHelp": "Tarea de solo lectura con su sesión DSM actual. Elegir un archivo guarda el consentimiento para su carpeta. El contenido se descarta; solo se informan contadores.",
54
- "operation": "Operación",
55
- "statOperation": "Consultar metadatos",
56
- "listOperation": "Listar carpeta",
57
- "readOperation": "Leer archivo (contar bytes)",
58
- "entryLimit": "Máximo de entradas (1–100)",
59
- "byteLimit": "Máximo de bytes",
60
- "submitInteractive": "Enviar tarea una vez",
61
- "interactiveSubmitted": "Tarea enviada. Consulte el progreso abajo."
62
- }
@@ -1,62 +0,0 @@
1
- {
2
- "title": "Tâches",
3
- "unavailable": "Les tâches ne sont pas disponibles dans cette version.",
4
- "mock": "Aperçu simulé : aucune opération NAS",
5
- "interactiveHelp": "Cette vue renouvelle les tâches interactives toutes les 2 secondes. Après 6 secondes sans renouvellement, leur annulation commence et se termine après confirmation du nettoyage. Fermer la vue demande une annulation. Un onglet masqué peut entraîner une expiration et une annulation.",
6
- "backgroundHelp": "Une tâche de fond confirmée peut continuer après fermeture ou déconnexion jusqu’à expiration ou redémarrage. Aucun redémarrage de tâche automatique.",
7
- "prepare": "Examiner la tâche de fond",
8
- "confirm": "Confirmer une fois",
9
- "agree": "J’accepte cette tâche unique en lecture seule pendant mon absence.",
10
- "refresh": "Actualiser",
11
- "lookup": "Vérifier la tâche initiale",
12
- "uncertain": "Réponse perdue. Vérifiez la tâche initiale sans la soumettre à nouveau.",
13
- "close": "Abandonner l’examen",
14
- "cancel": "Annuler la tâche",
15
- "revoke": "Révoquer le consentement",
16
- "revoked": "Révoqué",
17
- "drained": "Nettoyage confirmé",
18
- "cleanup": "Nettoyage nécessaire",
19
- "unknown": "Total inconnu",
20
- "error": "Impossible de terminer la demande. Actualisez pour vérifier l’état.",
21
- "empty": "Aucune tâche",
22
- "pending": "En attente",
23
- "running": "En cours",
24
- "stopping": "Arrêt en cours",
25
- "succeeded": "Terminé",
26
- "failed": "Échec",
27
- "canceled": "Annulé",
28
- "interrupted": "Interrompu",
29
- "app": "Application",
30
- "worker": "Worker",
31
- "scope": "Référence du périmètre",
32
- "actions": "Actions",
33
- "steps": "Étapes",
34
- "expires": "Expiration",
35
- "starts": "Début au plus tôt",
36
- "warning": "Les effets déjà produits ne sont pas annulables. Le consentement ne vaut qu’une fois dans cette session de fonctionnement.",
37
- "effects": "Effets potentiellement inconnus",
38
- "next": "Page suivante",
39
- "accessLost": "Accès non vérifié. Reconnectez-vous et rouvrez cette vue.",
40
- "interactiveUnavailable": "Les tâches interactives attendent la connexion des contrôles natifs de session et de droits.",
41
- "backgroundUnavailable": "Les tâches en arrière-plan sont indisponibles.",
42
- "adminTitle": "Gestion des tâches",
43
- "loadManagement": "Actualisez pour charger l’état de gestion.",
44
- "revalidating": "Les vérifications du paquet sont en cours de revalidation. Les nouveaux travaux sont suspendus. Actualisez pour vérifier le rétablissement ; les travaux annulés ne reprennent pas.",
45
- "fenceCanceled": "Ce travail a été annulé car les vérifications du paquet étaient indisponibles. Après rétablissement, une nouvelle soumission crée un nouveau travail et revérifie les permissions. Aucune soumission automatique.",
46
- "resubmit": "Soumettre à nouveau",
47
- "resubmitUnavailable": "Le plan initial est indisponible dans cette vue. Sélectionnez à nouveau les entrées pour créer un nouveau travail.",
48
- "resubmitUncertain": "La réponse à la nouvelle soumission a été perdue. Vérifiez le nouveau travail sans le soumettre à nouveau.",
49
- "resubmitLookup": "Vérifier le nouveau travail",
50
- "resubmitSubmitted": "Un nouveau travail a été soumis. Le travail annulé reste arrêté.",
51
- "newInteractive": "Nouvelle tâche interactive",
52
- "chooseSource": "Choisir un fichier ou dossier source",
53
- "sourceHelp": "Tâche en lecture seule avec votre session DSM actuelle. Choisir un fichier enregistre le consentement pour son dossier parent. Le contenu est supprimé ; seuls les compteurs sont rapportés.",
54
- "operation": "Opération",
55
- "statOperation": "Vérifier les métadonnées",
56
- "listOperation": "Lister le dossier",
57
- "readOperation": "Lire le fichier (compter les octets)",
58
- "entryLimit": "Nombre maximal (1–100)",
59
- "byteLimit": "Octets maximaux",
60
- "submitInteractive": "Envoyer la tâche une fois",
61
- "interactiveSubmitted": "Tâche envoyée. Consultez la progression ci-dessous."
62
- }