stitchkit 0.114.2 → 0.115.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 (103) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/dist/agent-runtime/coding-tool-files.d.ts.map +1 -1
  3. package/dist/agent-runtime/coding-tool-listing.d.ts.map +1 -1
  4. package/dist/agent-runtime/coding-tool-paths.d.ts.map +1 -1
  5. package/dist/agent-runtime/coding-tool-refusals.d.ts +6 -0
  6. package/dist/agent-runtime/coding-tool-refusals.d.ts.map +1 -1
  7. package/dist/agent-runtime/coding-tool-search-patch.d.ts.map +1 -1
  8. package/dist/agent-runtime/contained-scan.d.ts +1 -1
  9. package/dist/agent-runtime/contained-scan.d.ts.map +1 -1
  10. package/dist/agent-runtime/sandbox-broker.d.ts.map +1 -1
  11. package/dist/agent-runtime/sandbox-bubblewrap-storage.d.ts.map +1 -1
  12. package/dist/application/directory-inbox-files.d.ts.map +1 -1
  13. package/dist/application/file-state-store.d.ts.map +1 -1
  14. package/dist/entrypoints/agent-runtime/coding-tools.js +6 -4
  15. package/dist/entrypoints/agent-runtime/harness.js +2 -1
  16. package/dist/entrypoints/agent-runtime/sandbox.js +13 -8
  17. package/dist/entrypoints/agent-runtime/sqlite/bun.js +8 -6
  18. package/dist/entrypoints/agent-runtime/sqlite/node.js +8 -6
  19. package/dist/entrypoints/agent-runtime/testing.js +8 -6
  20. package/dist/entrypoints/agent-runtime.js +8 -6
  21. package/dist/entrypoints/application/diagnostic-journal.js +2 -2
  22. package/dist/entrypoints/application/directory-inbox.js +10 -7
  23. package/dist/entrypoints/cli/publish.js +11 -8
  24. package/dist/entrypoints/cli.js +6 -3
  25. package/dist/entrypoints/files.js +10 -7
  26. package/dist/entrypoints/process/owner-loss.js +1 -1
  27. package/dist/entrypoints/process.js +3 -3
  28. package/dist/entrypoints/react/keyboard/testing.js +1 -1
  29. package/dist/entrypoints/react/keyboard.js +11 -11
  30. package/dist/entrypoints/server.js +4 -4
  31. package/dist/entrypoints/telegram.js +8 -5
  32. package/dist/entrypoints/tools.js +5 -2
  33. package/dist/files/chunk-spool.d.ts.map +1 -1
  34. package/dist/{index-2f9r0jgr.js → index-364k2zwa.js} +4 -4
  35. package/dist/{index-tnxsq7cw.js → index-3qqdqwxe.js} +90 -35
  36. package/dist/{index-s47ac8zt.js → index-7yx8j6ay.js} +133 -156
  37. package/dist/{index-912sza5h.js → index-90p34rts.js} +1 -1
  38. package/dist/{index-a3462dqf.js → index-944x38nv.js} +1 -1
  39. package/dist/{index-07dcf2yn.js → index-ac6vvm30.js} +5 -2
  40. package/dist/{index-qj1sy4ep.js → index-crmswbrt.js} +1 -1
  41. package/dist/{index-7r4knwf8.js → index-dr3t5n1v.js} +14 -4
  42. package/dist/{index-dc9ere5p.js → index-dx5cm9pc.js} +1 -1
  43. package/dist/{index-84bf5spd.js → index-f6m4c545.js} +5 -2
  44. package/dist/{index-hy802jnr.js → index-fdk4r4r6.js} +6 -3
  45. package/dist/index-j8kf56wx.js +100 -0
  46. package/dist/index-jj9228tt.js +6 -0
  47. package/dist/{index-bh2ht9y5.js → index-n8z3rvzw.js} +4 -1
  48. package/dist/index-nregbbsc.js +107 -0
  49. package/dist/{index-j4zh647a.js → index-tt30h7mr.js} +4 -1
  50. package/dist/{index-zrtrjkbf.js → index-x0ddbj85.js} +148 -172
  51. package/dist/{index-p02zgk8x.js → index-y4rxnvgp.js} +6 -0
  52. package/dist/{index-5v5a9k2n.js → index-z3d6smer.js} +1 -1
  53. package/dist/{index-6b3pcq5z.js → index-zqkz4af9.js} +1 -1
  54. package/dist/internal/atomic-file.d.ts.map +1 -1
  55. package/dist/internal/atomic-staging.d.ts.map +1 -1
  56. package/dist/internal/contained-directory.d.ts +20 -0
  57. package/dist/internal/contained-directory.d.ts.map +1 -0
  58. package/dist/{agent-runtime → internal}/contained-files.d.ts +14 -13
  59. package/dist/internal/contained-files.d.ts.map +1 -0
  60. package/dist/internal/contained-handle.d.ts +30 -0
  61. package/dist/internal/contained-handle.d.ts.map +1 -0
  62. package/dist/internal/contained-write.d.ts +12 -0
  63. package/dist/internal/contained-write.d.ts.map +1 -0
  64. package/dist/internal/darwin-binding.d.ts +1 -1
  65. package/dist/internal/darwin-binding.d.ts.map +1 -1
  66. package/dist/internal/errno.d.ts +3 -0
  67. package/dist/internal/errno.d.ts.map +1 -0
  68. package/dist/internal/process-instance.d.ts.map +1 -1
  69. package/dist/internal/write-download.d.ts +5 -14
  70. package/dist/internal/write-download.d.ts.map +1 -1
  71. package/dist/process/group-diagnostics.d.ts +1 -0
  72. package/dist/process/group-diagnostics.d.ts.map +1 -1
  73. package/dist/process/group-settlement.d.ts +2 -0
  74. package/dist/process/group-settlement.d.ts.map +1 -1
  75. package/dist/process/group.d.ts.map +1 -1
  76. package/dist/process/owner-loss-control.d.ts.map +1 -1
  77. package/dist/react/keyboard/hooks.d.ts +2 -2
  78. package/dist/react/keyboard/hooks.d.ts.map +1 -1
  79. package/dist/react/keyboard/layers.d.ts +2 -0
  80. package/dist/react/keyboard/layers.d.ts.map +1 -1
  81. package/dist/telegram/broadcast-state.d.ts.map +1 -1
  82. package/dist/tools/cli/download.d.ts.map +1 -1
  83. package/dist/tools/cli/publication-storage.d.ts.map +1 -1
  84. package/dist/tools/cli/publication.d.ts.map +1 -1
  85. package/dist/tools/cli/view.d.ts.map +1 -1
  86. package/llms/agent-runtime.txt +16 -6
  87. package/llms/cli.txt +34 -2
  88. package/llms/process.txt +2 -2
  89. package/llms/react-keyboard.txt +18 -2
  90. package/llms/stitchkit.txt +3 -3
  91. package/llms/{upgrading-0.104.0-0.114.0.txt → upgrading-0.104.0-0.115.0.txt} +62 -3
  92. package/llms/upgrading.txt +1 -1
  93. package/llms-full.txt +132 -15
  94. package/llms.txt +5 -5
  95. package/native/darwin-arm64.node +0 -0
  96. package/native/darwin-x64.node +0 -0
  97. package/native-assets.json +4 -4
  98. package/package.json +1 -1
  99. package/dist/agent-runtime/contained-darwin.d.ts +0 -21
  100. package/dist/agent-runtime/contained-darwin.d.ts.map +0 -1
  101. package/dist/agent-runtime/contained-files.d.ts.map +0 -1
  102. package/dist/agent-runtime/contained-write.d.ts +0 -9
  103. package/dist/agent-runtime/contained-write.d.ts.map +0 -1
@@ -0,0 +1,3 @@
1
+ /** The system error code a failed filesystem or process call carries; absent on anything else. */
2
+ export declare function errnoOf(error: unknown): string | undefined;
3
+ //# sourceMappingURL=errno.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errno.d.ts","sourceRoot":"","sources":["../../src/internal/errno.ts"],"names":[],"mappings":"AAAA,kGAAkG;AAClG,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAO1D"}
@@ -1 +1 @@
1
- {"version":3,"file":"process-instance.d.ts","sourceRoot":"","sources":["../../src/internal/process-instance.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;;GAGG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;kBAOvB,CAAC;AACZ;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;GAEG;AACH,QAAA,MAAM,gCAAgC;;;;;;;;;;;;;;4BAGpC,CAAC;AAIH;;;GAGG;AACH,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAE1F;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,0BAA0B,CAAC,CAGrC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAS1E;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,MAAM,EACX,QAAQ,SAAU,GACjB,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAGjC;AAED,iEAAiE;AACjE,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,0BAA0B,CAAC,CAsDrC;AAED,QAAA,MAAM,0BAA0B;;;;;;;;;;;;;;;iBAW9B,CAAC;AACH;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,GAC3C,OAAO,CAAC,oBAAoB,CAAC,CAQ/B;AAED,UAAU,kBAAkB;IAC1B,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;IACnD,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC;IACjD,OAAO,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;CAC5D;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,EAC5C,MAAM,GAAE,kBAA2E,GAClF,OAAO,CAAC,oBAAoB,CAAC,CAuC/B"}
1
+ {"version":3,"file":"process-instance.d.ts","sourceRoot":"","sources":["../../src/internal/process-instance.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB;;;GAGG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;kBAOvB,CAAC;AACZ;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;GAEG;AACH,QAAA,MAAM,gCAAgC;;;;;;;;;;;;;;4BAGpC,CAAC;AAIH;;;GAGG;AACH,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAE1F;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,0BAA0B,CAAC,CAGrC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAS1E;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,MAAM,EACX,QAAQ,SAAU,GACjB,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAGjC;AAED,iEAAiE;AACjE,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,0BAA0B,CAAC,CAsDrC;AAED,QAAA,MAAM,0BAA0B;;;;;;;;;;;;;;;iBAW9B,CAAC;AACH;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,GAC3C,OAAO,CAAC,oBAAoB,CAAC,CAQ/B;AAED,UAAU,kBAAkB;IAC1B,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;IACnD,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC;IACjD,OAAO,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;CAC5D;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,EAC5C,MAAM,GAAE,kBAA2E,GAClF,OAAO,CAAC,oBAAoB,CAAC,CAuC/B"}
@@ -1,17 +1,8 @@
1
+ import type { ContainedFileHandle } from './contained-handle.js';
1
2
  /**
2
- * Write a downloaded body to disk, with the containment check both download
3
- * paths need.
4
- *
5
- * Shared by the CLI's `--output-dir` and the `mountDownload` native tool. It
6
- * deliberately takes an **already-resolved** target rather than building one:
7
- * the two callers derive the filename differently (an untrusted `file.name` vs a
8
- * name derived from the URL) and, more importantly, report the path back to the
9
- * user — so composing it here would silently change one of those outputs from
10
- * relative to absolute.
11
- *
12
- * The containment re-check is cheap and belongs on this side: both callers reduce
13
- * the name to a basename first, but that is an invariant of *their* code, and
14
- * this is where the write actually happens.
3
+ * Publish a CLI download as one direct child of the batch's pinned output root.
4
+ * Atomic replacement replaces links themselves, never the inode they point to.
5
+ * The caller owns the root descriptor and closes it after every file has settled.
15
6
  */
16
- export declare function writeDownload(root: string, target: string, data: Uint8Array): Promise<void>;
7
+ export declare function writeDownload(root: ContainedFileHandle, name: string, data: Uint8Array): Promise<void>;
17
8
  //# sourceMappingURL=write-download.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"write-download.d.ts","sourceRoot":"","sources":["../../src/internal/write-download.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,IAAI,CAAC,CAMf"}
1
+ {"version":3,"file":"write-download.d.ts","sourceRoot":"","sources":["../../src/internal/write-download.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAG9D;;;;GAIG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,mBAAmB,EACzB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,IAAI,CAAC,CAYf"}
@@ -8,6 +8,7 @@ declare const ObservationSchema: z.ZodObject<{
8
8
  observations: z.ZodNumber;
9
9
  lastStates: z.ZodArray<z.ZodString>;
10
10
  elapsedMs: z.ZodNumber;
11
+ reason: z.ZodOptional<z.ZodString>;
11
12
  }, z.core.$strip>;
12
13
  type Observation = z.infer<typeof ObservationSchema>;
13
14
  /** Only this internal error carries process-state diagnostics safe to promote. */
@@ -1 +1 @@
1
- {"version":3,"file":"group-diagnostics.d.ts","sourceRoot":"","sources":["../../src/process/group-diagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,iBAAiB;;;;;;;;;iBAMrB,CAAC;AACH,KAAK,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAGrD,kFAAkF;AAClF,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,YAAY,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,GAAE,OAAqB,EAKlF;CACF;AAQD,2FAA2F;AAC3F,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,EAAE,CA+BxE"}
1
+ {"version":3,"file":"group-diagnostics.d.ts","sourceRoot":"","sources":["../../src/process/group-diagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,iBAAiB;;;;;;;;;;iBAQrB,CAAC;AACH,KAAK,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAGrD,kFAAkF;AAClF,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,YAAY,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,GAAE,OAAqB,EAKlF;CACF;AAQD,2FAA2F;AAC3F,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,EAAE,CA+BxE"}
@@ -1,5 +1,7 @@
1
1
  /** `killpg(..., 0)` also sees Linux zombies; only live members can still perform work. */
2
2
  export declare function hasLiveGroupMember(table: string, group: number): boolean;
3
+ /** A bounded name for what stopped the observation; caller messages stay out of diagnostics. */
4
+ export declare function observationFailureReason(cause: unknown): string;
3
5
  /** A delivered SIGKILL is asynchronous; do not report cleanup until every group member is dead. */
4
6
  export declare function waitForProcessGroupExit(pid: number | undefined, deadline: number, killLiveMembers?: () => Promise<boolean>): Promise<void>;
5
7
  //# sourceMappingURL=group-settlement.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"group-settlement.d.ts","sourceRoot":"","sources":["../../src/process/group-settlement.ts"],"names":[],"mappings":"AAKA,0FAA0F;AAC1F,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAQxE;AAgBD,mGAAmG;AACnG,wBAAsB,uBAAuB,CAC3C,GAAG,EAAE,MAAM,GAAG,SAAS,EACvB,QAAQ,EAAE,MAAM,EAChB,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,GACvC,OAAO,CAAC,IAAI,CAAC,CAmDf"}
1
+ {"version":3,"file":"group-settlement.d.ts","sourceRoot":"","sources":["../../src/process/group-settlement.ts"],"names":[],"mappings":"AAMA,0FAA0F;AAC1F,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAQxE;AAgBD,gGAAgG;AAChG,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAK/D;AAED,mGAAmG;AACnG,wBAAsB,uBAAuB,CAC3C,GAAG,EAAE,MAAM,GAAG,SAAS,EACvB,QAAQ,EAAE,MAAM,EAChB,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,GACvC,OAAO,CAAC,IAAI,CAAC,CAmDf"}
@@ -1 +1 @@
1
- {"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../src/process/group.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,KAAK,6BAA6B,EAAE,MAAM,YAAY,CAAC;AAKpF,+FAA+F;AAC/F,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO;IAYpE,MAAM;IACN,MAAM;EAIT;AAeD,gGAAgG;AAChG,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,GAAG,OAAO,CASpF;AAyCD,sGAAsG;AACtG,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,6BAA6B,CAAC;IAC/C,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,gEAAgE;IAChE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,CAmB/E;AAED,gGAAgG;AAChG,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,gBAAgB,GAAG;IAAE,MAAM,EAAE,aAAa,CAAC;IAAC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;CAAE,GAC/E,OAAO,CAAC,OAAO,CAAC,CAsBlB;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE;IAC1C,MAAM,EAAE,aAAa,CAAC;IACtB,MAAM,EAAE,6BAA6B,CAAC;IACtC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7B,KAAK,EAAE,OAAO,CAAC;CAChB,GAAG,OAAO,CAAC,OAAO,CAAC,CAyBnB;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,kBAAkB,CAQtE;AAED,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAMxF"}
1
+ {"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../src/process/group.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,kBAAkB,EAAE,KAAK,6BAA6B,EAAE,MAAM,YAAY,CAAC;AAKpF,+FAA+F;AAC/F,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO;IAYpE,MAAM;IACN,MAAM;EAIT;AAeD,gGAAgG;AAChG,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,GAAG,OAAO,CASpF;AAyCD,sGAAsG;AACtG,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,6BAA6B,CAAC;IAC/C,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,gEAAgE;IAChE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,CAmB/E;AAED,gGAAgG;AAChG,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,gBAAgB,GAAG;IAAE,MAAM,EAAE,aAAa,CAAC;IAAC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;CAAE,GAC/E,OAAO,CAAC,OAAO,CAAC,CAsBlB;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE;IAC1C,MAAM,EAAE,aAAa,CAAC;IACtB,MAAM,EAAE,6BAA6B,CAAC;IACtC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7B,KAAK,EAAE,OAAO,CAAC;CAChB,GAAG,OAAO,CAAC,OAAO,CAAC,CAyBnB;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,kBAAkB,CAQtE;AAED,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAMxF"}
@@ -1 +1 @@
1
- {"version":3,"file":"owner-loss-control.d.ts","sourceRoot":"","sources":["../../src/process/owner-loss-control.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAe1C,UAAU,YAAY;IACpB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,OAAO,CAAC;CAC5F;AASD,2FAA2F;AAC3F,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAOlE;AAQD,mFAAmF;AACnF,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAwDjF;AAED,gGAAgG;AAChG,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAG7E;AAED,oGAAoG;AACpG,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAIxF"}
1
+ {"version":3,"file":"owner-loss-control.d.ts","sourceRoot":"","sources":["../../src/process/owner-loss-control.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAgB1C,UAAU,YAAY;IACpB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,OAAO,CAAC;CAC5F;AASD,2FAA2F;AAC3F,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAOlE;AAQD,mFAAmF;AACnF,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAwDjF;AAED,gGAAgG;AAChG,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAG7E;AAED,oGAAoG;AACpG,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAIxF"}
@@ -30,7 +30,7 @@ export interface KeyLayerOptions {
30
30
  /** Default `'bubble'`: after everything nearer. `'capture'`: before it, `local` layers only. */
31
31
  readonly phase?: KeyLayerPhase;
32
32
  }
33
- /** Put a layer on the window's key stack for as long as the component is mounted. */
33
+ /** A layer adopts committed options before the caller's layout effects and leaves at unmount. */
34
34
  export declare function useKeyLayer(options: KeyLayerOptions): void;
35
35
  export interface EscapeLayerOptions {
36
36
  readonly kind: 'overlay' | 'local' | 'route';
@@ -48,7 +48,7 @@ export declare function useEscapeLayer(options: EscapeLayerOptions): void;
48
48
  export interface NavZoneProps {
49
49
  readonly ref: (element: HTMLElement | null) => void;
50
50
  readonly role?: 'listbox' | 'tablist';
51
- readonly 'aria-orientation': ZoneOrientation;
51
+ readonly 'aria-orientation'?: ZoneOrientation;
52
52
  readonly 'aria-label'?: string;
53
53
  readonly 'data-keyboard-zone': '';
54
54
  readonly onKeyDown: (event: {
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/react/keyboard/hooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/react/keyboard/hooks.ts"],"names":[],"mappings":"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"}
@@ -94,6 +94,8 @@ export interface KeyLayerState<E extends LayerKeyEvent, S extends LayerScope<S>>
94
94
  export interface KeyLayerHandle<E extends LayerKeyEvent, S extends LayerScope<S>> {
95
95
  update(state: KeyLayerState<E, S>): void;
96
96
  remove(): void;
97
+ /** Put a removed layer back in the place it held, without counting as an activation. */
98
+ restore(): void;
97
99
  }
98
100
  /** Where the stack listens. A `Window` is one. */
99
101
  export interface KeyListenerTarget<E> {
@@ -1 +1 @@
1
- {"version":3,"file":"layers.d.ts","sourceRoot":"","sources":["../../../src/react/keyboard/layers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"layers.d.ts","sourceRoot":"","sources":["../../../src/react/keyboard/layers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"broadcast-state.d.ts","sourceRoot":"","sources":["../../src/telegram/broadcast-state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAwB,KAAK,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE1F,eAAO,MAAM,8BAA8B;;;;;EAKzC,CAAC;AACH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAEtF,QAAA,MAAM,YAAY,iDAAyD,CAAC;AAC5E,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAItE,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;oBASrB,CAAC;AACH,KAAK,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAErD,sFAAsF;AACtF,MAAM,MAAM,iBAAiB,GAAG,GAAG,CAAC,MAAM,EAAE,wBAAwB,GAAG,SAAS,CAAC,CAAC;AAIlF,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAMtD;AAKD,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,CAM9E;AAED,wBAAsB,cAAc,CAClC,KAAK,EAAE,cAAc,GACpB,OAAO,CAAC,0BAA0B,EAAE,GAAG,IAAI,CAAC,CAO9C;AAED,wBAAsB,eAAe,CACnC,KAAK,EAAE,cAAc,EACrB,UAAU,EAAE,SAAS,0BAA0B,EAAE,EACjD,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,IAAI,CAAC,CAMf;AAED,+FAA+F;AAC/F,wBAAsB,cAAc,CAClC,KAAK,EAAE,cAAc,EACrB,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,IAAI,CAAC,CAOf;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAsBpF;AAED,wBAAsB,aAAa,CACjC,KAAK,EAAE,cAAc,EACrB,IAAI,EAAE,WAAW,EACjB,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,IAAI,CAAC,CAUf;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CACjC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,cAAc,GACpB,OAAO,CAAC,iBAAiB,CAAC,CAW5B"}
1
+ {"version":3,"file":"broadcast-state.d.ts","sourceRoot":"","sources":["../../src/telegram/broadcast-state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAwB,KAAK,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE1F,eAAO,MAAM,8BAA8B;;;;;EAKzC,CAAC;AACH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAEtF,QAAA,MAAM,YAAY,iDAAyD,CAAC;AAC5E,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAItE,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;oBASrB,CAAC;AACH,KAAK,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAErD,sFAAsF;AACtF,MAAM,MAAM,iBAAiB,GAAG,GAAG,CAAC,MAAM,EAAE,wBAAwB,GAAG,SAAS,CAAC,CAAC;AAIlF,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAMtD;AAID,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,CAM9E;AAED,wBAAsB,cAAc,CAClC,KAAK,EAAE,cAAc,GACpB,OAAO,CAAC,0BAA0B,EAAE,GAAG,IAAI,CAAC,CAO9C;AAED,wBAAsB,eAAe,CACnC,KAAK,EAAE,cAAc,EACrB,UAAU,EAAE,SAAS,0BAA0B,EAAE,EACjD,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,IAAI,CAAC,CAMf;AAED,+FAA+F;AAC/F,wBAAsB,cAAc,CAClC,KAAK,EAAE,cAAc,EACrB,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,IAAI,CAAC,CAOf;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAsBpF;AAED,wBAAsB,aAAa,CACjC,KAAK,EAAE,cAAc,EACrB,IAAI,EAAE,WAAW,EACjB,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,IAAI,CAAC,CAUf;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CACjC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,cAAc,GACpB,OAAO,CAAC,iBAAiB,CAAC,CAW5B"}
@@ -1 +1 @@
1
- {"version":3,"file":"download.d.ts","sourceRoot":"","sources":["../../../src/tools/cli/download.ts"],"names":[],"mappings":"AAIA,mFAAmF;AACnF,eAAO,MAAM,0BAA0B,QAAoB,CAAC;AAE5D,oFAAoF;AACpF,wBAAsB,eAAe,CACnC,KAAK,EAAE,KAAK,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EAC3C,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EAC9B,KAAK,EAAE,OAAO,EACd,YAAY,EAAE,OAAO,EACrB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAAG,SAAS,GAC5B,OAAO,CAAC,OAAO,CAAC,CAyBlB"}
1
+ {"version":3,"file":"download.d.ts","sourceRoot":"","sources":["../../../src/tools/cli/download.ts"],"names":[],"mappings":"AAOA,mFAAmF;AACnF,eAAO,MAAM,0BAA0B,QAAoB,CAAC;AAE5D,oFAAoF;AACpF,wBAAsB,eAAe,CACnC,KAAK,EAAE,KAAK,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EAC3C,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EAC9B,KAAK,EAAE,OAAO,EACd,YAAY,EAAE,OAAO,EACrB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAAG,SAAS,GAC5B,OAAO,CAAC,OAAO,CAAC,CA8ClB"}
@@ -1 +1 @@
1
- {"version":3,"file":"publication-storage.d.ts","sourceRoot":"","sources":["../../../src/tools/cli/publication-storage.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,mBAAmB,EAEzB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,KAAK,gBAAgB,EAA0B,MAAM,YAAY,CAAC;AAE3E,OAAO,EAGL,KAAK,eAAe,EAGrB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,KAAK,EAAE,UAAU,CAAC;CACnB;AACD,MAAM,WAAW,YAAa,SAAQ,mBAAmB;IACvD,SAAS,EAAE,MAAM,CAAC;CACnB;AACD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,mBAAmB,CAAC;IAC3B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B;AAED,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC,CAKvC;AAED,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GACvC,OAAO,CAAC,IAAI,CAAC,CAIf;AAED,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,eAAe,EACrB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,kBAAkB,CAAC,CAyB7B;AAED,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,MAAM,EAAE,CAAC,CAcnB;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,kBAAkB,EAC3B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,eAAe,EACrB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC,CAiB1C;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,mBAAmB,EAC3B,IAAI,EAAE,eAAe,EACrB,YAAY,EAAE,OAAO,GACpB,MAAM,EAAE,CAuCV;AA4BD;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,kBAAkB,EAC3B,MAAM,EAAE,mBAAmB,EAC3B,IAAI,EAAE,eAAe,EACrB,MAAM,EAAE,WAAW,EACnB,YAAY,EAAE,OAAO,GACpB,OAAO,CAAC,IAAI,CAAC,CAkBf;AAED,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,kBAAkB,EAC3B,IAAI,EAAE,eAAe,EACrB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,YAAY,EAAE,CAAC,CA0BzB;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,kBAAkB,EAC3B,OAAO,EAAE,YAAY,EACrB,IAAI,EAAE,eAAe,EACrB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC,CAaf;AAKD;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,kBAAkB,EAC3B,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,MAAM,CAAC,CAkBjB"}
1
+ {"version":3,"file":"publication-storage.d.ts","sourceRoot":"","sources":["../../../src/tools/cli/publication-storage.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,mBAAmB,EAEzB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,KAAK,gBAAgB,EAA0B,MAAM,YAAY,CAAC;AAE3E,OAAO,EAGL,KAAK,eAAe,EAGrB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,KAAK,EAAE,UAAU,CAAC;CACnB;AACD,MAAM,WAAW,YAAa,SAAQ,mBAAmB;IACvD,SAAS,EAAE,MAAM,CAAC;CACnB;AACD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,mBAAmB,CAAC;IAC3B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B;AAED,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC,CAKvC;AAED,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GACvC,OAAO,CAAC,IAAI,CAAC,CAIf;AAED,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,eAAe,EACrB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,kBAAkB,CAAC,CAyB7B;AAED,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,MAAM,EAAE,CAAC,CAcnB;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,kBAAkB,EAC3B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,eAAe,EACrB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC,CAiB1C;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,mBAAmB,EAC3B,IAAI,EAAE,eAAe,EACrB,YAAY,EAAE,OAAO,GACpB,MAAM,EAAE,CAuCV;AA4BD;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,kBAAkB,EAC3B,MAAM,EAAE,mBAAmB,EAC3B,IAAI,EAAE,eAAe,EACrB,MAAM,EAAE,WAAW,EACnB,YAAY,EAAE,OAAO,GACpB,OAAO,CAAC,IAAI,CAAC,CAkBf;AAED,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,kBAAkB,EAC3B,IAAI,EAAE,eAAe,EACrB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,YAAY,EAAE,CAAC,CA0BzB;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,kBAAkB,EAC3B,OAAO,EAAE,YAAY,EACrB,IAAI,EAAE,eAAe,EACrB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC,CAaf;AAKD;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,kBAAkB,EAC3B,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,MAAM,CAAC,CAkBjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"publication.d.ts","sourceRoot":"","sources":["../../../src/tools/cli/publication.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAYxB,OAAO,EAGL,KAAK,qBAAqB,EAI3B,MAAM,wBAAwB,CAAC;AAoBhC,YAAY,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAEzF,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAGhB,CAAC;AACH;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAoThE;;;GAGG;AACH,wBAAsB,UAAU,CAC9B,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,oBAAoB,CAAC,CAU/B"}
1
+ {"version":3,"file":"publication.d.ts","sourceRoot":"","sources":["../../../src/tools/cli/publication.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAaxB,OAAO,EAGL,KAAK,qBAAqB,EAI3B,MAAM,wBAAwB,CAAC;AAoBhC,YAAY,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAEzF,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAGhB,CAAC;AACH;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAoThE;;;GAGG;AACH,wBAAsB,UAAU,CAC9B,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,oBAAoB,CAAC,CAU/B"}
@@ -1 +1 @@
1
- {"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../src/tools/cli/view.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGjD,yEAAyE;AACzE,MAAM,MAAM,aAAa,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAwK7F,gFAAgF;AAChF,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,GAAG,aAAa,CA+B/E"}
1
+ {"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../src/tools/cli/view.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGjD,yEAAyE;AACzE,MAAM,MAAM,aAAa,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AA4M7F,gFAAgF;AAChF,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,GAAG,aAAa,CAgC/E"}
@@ -301,17 +301,27 @@ approval input fails the run with a private diagnostic rather than starting a fr
301
301
  `read_output`. Every call passes a required host authorization callback. An optional async/sync
302
302
  `authorizePath({ path })` is the one operation-independent policy for direct file access and
303
303
  discovery: direct read/write/edit refuses a denied path, while listing, glob and search omit it.
304
- Denial is recursive on every surface — direct access and discovery base paths ask about `.` and each
305
- ancestor, outermost first, stopping at the first refusal, so denying `credentials` denies everything
304
+ Denial is recursive on every surface — direct access asks about each named ancestor and the file,
305
+ outermost first, stopping at the first refusal; discovery rooted at `.` also asks about `.`.
306
+ Thus denying `credentials` denies everything
306
307
  under it. The comparison is segment-wise, so it does not deny `credentials-backup`, and a path of
307
- depth N costs N+1 questions. Directory decisions happen before descent; file decisions and
308
+ depth N costs N questions for direct access. Directory decisions happen before descent; file decisions and
308
309
  `search_files.include` happen before opening content. Requested paths use `/`: a backslash is
309
310
  refused rather than normalised, because the workspace walk reads it as a separator and every
310
311
  authorization callback would otherwise be asked about a different decomposition than the one opened. File paths are relative, bounded and contained after
311
- descriptor-relative resolution: each ancestor is opened without following symlinks and remains
312
- pinned through authorization and the filesystem effect. Reads revalidate the pinned file identity;
312
+ descriptor-relative resolution: each ancestor is opened without following symlinks. Reads and edits
313
+ stay pinned through authorization; `write_file` plans before it and opens the parent after, because
314
+ the parent it creates does not exist yet. Reads revalidate the pinned file identity;
313
315
  writes and patches revalidate the pinned parent identity; search and resource discovery descend
314
- only through opened directories. Linux traverses `/proc/self/fd`; macOS uses the package's
316
+ only through opened directories. A path that changed during authorization refuses with `CONFLICT`.
317
+ Policies compare path strings, so on a case-insensitive filesystem such as default macOS volumes a
318
+ rule on `credentials` does not match `CREDENTIALS`; such a host must normalize in its own policy.
319
+ NUL bytes are refused before either host policy sees a path.
320
+ Reads and edits open file candidates without blocking on special files, then require a regular
321
+ file. A writerless FIFO therefore refuses instead of occupying a filesystem worker. `write_file`
322
+ supplies the exact missing-directory plan as `createsDirectories` to host authorization; the
323
+ descriptor walk may create only those entries. An ancestor that disappears after approval refuses
324
+ with `CONFLICT`, without expanding that plan. Linux traverses `/proc/self/fd`; macOS uses the package's
315
325
  architecture-specific Node-API `openat` backend. Unsupported platforms, including FreeBSD until a
316
326
  real backend is qualified, fail closed. The package needs no install-time compiler or script.
317
327
  Other platforms fail these filesystem operations closed because Node exposes no equivalent
package/llms/cli.txt CHANGED
@@ -612,6 +612,29 @@ myapp generate "a fox" --wait --output-dir ./out
612
612
  myapp generate "a fox" --wait --json > result.json &
613
613
  ```
614
614
 
615
+ ### Download filesystem boundary
616
+
617
+ `--output-dir` resolves the explicitly configured root once before fetching and pins that
618
+ one directory for the whole batch. An initial root alias (including a symbolic link) selects
619
+ its canonical directory; missing components are created through pinned parents. The root
620
+ capability continues to name the same directory if another actor renames it or replaces its
621
+ pathname. The original spelling printed in `saved` is a display path, not a re-open of the root.
622
+
623
+ Each media name becomes a direct child. Downloads atomically replace an existing file,
624
+ symbolic link (including a dangling link), or hard link without changing the inode a link
625
+ points to. An existing directory refuses replacement. Ordinary files retain their permission
626
+ bits; new files use `0666 & ~umask`. Replacing writes a new file beside the old one, so it needs
627
+ write permission on the directory, gives the file to the process user, replaces a read-only
628
+ file, and refuses a bind-mounted one. Symlinks inside a contained parent path are never followed.
629
+ The successful operation's JSON remains on stdout when a download fails; per-file diagnostics
630
+ go to stderr and any failed file makes the exit non-zero. Already saved files remain saved.
631
+
632
+ This filesystem protection supports Linux and macOS. On Linux it uses directory descriptors;
633
+ on macOS it uses the packaged native backend. A bundled or compiled macOS CLI must use
634
+ [`createNativePackaging`](./native-io.md) from `stitchkit/files/packaging` at build
635
+ time. Missing native support and unsupported platforms, including Windows, refuse the download;
636
+ CLI commands without downloads continue to work. There is no weaker path-based fallback.
637
+
615
638
  ## Aggregate views
616
639
 
617
640
  The CLI's audience is agents, scripts and `jq`, so output is JSON. That settles
@@ -652,11 +675,20 @@ value for the sort field sorts **last in both directions**: it is not the
652
675
  smallest, it is not on the scale at all, and letting it lead an ascending list
653
676
  would answer a question nobody asked.
654
677
 
655
- Three rules worth knowing before you rely on them:
678
+ Rules worth knowing before you rely on them:
656
679
 
657
- - **A field the result does not carry is a presentation error.** A group of zero
680
+ - **A field no record carries in a nonempty collection is a presentation error.** A group of zero
658
681
  over a misspelled field is indistinguishable from a true empty answer, and the
659
682
  caller reads it as data. The message names the fields that *are* there.
683
+ Plain and dotted field paths read own properties only at every segment; inherited
684
+ properties are not record data. Own keys named `constructor`, `prototype` or `toString`
685
+ are ordinary fields.
686
+ - **An empty collection is a successful answer.** Count and grouped sums return `{}`,
687
+ an ungrouped sum returns `0`, and sorted records return `[]`. Tables keep their header
688
+ and separator without data rows. This applies both to a direct `[]` and to the single
689
+ array field of an envelope such as `{ items: [], total: 0 }`. With no records, field
690
+ presence cannot be checked, so a misspelled field answers empty too; malformed paths, unsafe
691
+ `__proto__` segments and a field of the envelope itself (`--sum total` here) still refuse.
660
692
  - **An aggregate needs a collection** — the result itself when it is an array,
661
693
  or the single array field of a result object. An aggregate over a scalar, or
662
694
  over an object with two array fields, is refused rather than guessed.
package/llms/process.txt CHANGED
@@ -522,8 +522,8 @@ a static loader enters a bundle.
522
522
 
523
523
  Only these calls load the addon, and only on macOS: process identity (`observeProcessInstance`
524
524
  and `probeProcessOwner`), every exclusive lock (`withExclusiveLock` and what is built on it, such
525
- as the file state store and the diagnostic journal) and the contained file operations of the Agent
526
- coding tools. Without the addon a lock still works, but it cannot record or check its owner's
525
+ as the file state store and the diagnostic journal), the contained file operations of the Agent
526
+ coding tools and `--output-dir` downloads of `stitchkit/cli`. Without the addon a download refuses, and a lock still works, but it cannot record or check its owner's
527
527
  identity, so a lock held by a crashed owner is not reclaimed. The managed file boundary
528
528
  (`createManagedFileBoundary` and the transfer tools built on it), atomic writes and the chunk
529
529
  spool never load it, on any operating system. The package is free of import side effects
@@ -89,6 +89,17 @@ together, only `scope` tells the stack which one is inside.
89
89
  **`active`** (default `true`) switches a layer off without unmounting it;
90
90
  becoming active again puts it on top of its kind.
91
91
 
92
+ Layers register, adopt options and clean up in the browser's layout-effect phase.
93
+ Call the hook before a layout effect that dispatches a key: that effect sees the
94
+ committed `active`, handler and scope immediately, without waiting for passive
95
+ effects. Rendering alone never changes the stack; an abandoned render leaves the
96
+ last committed layer intact. A Suspense boundary that hides committed content
97
+ disconnects its layout effects, so a layer behind the fallback goes quiet and
98
+ returns to its place on reveal. The same lifecycle backs `useEscapeLayer` and a
99
+ zone's outside-key layer. Server rendering installs no listener and does not
100
+ access `window`. The browser phase is chosen when the module loads, so a test
101
+ that installs a DOM does so before it imports these hooks.
102
+
92
103
  **Fields keep their keys.** Keys pressed in an input, a text area, a select, an
93
104
  editable region, a combobox, a slider or any area marked `data-local-keys` do not
94
105
  reach layers — except Escape, which a field that wants it keeps with
@@ -140,6 +151,11 @@ function ChatList({ chats, openId, open }) {
140
151
  | `ignore(event)` | — | a key that is the application's own right now — return `true` and the zone leaves it whole; see [dragging](#a-zone-inside-a-drag-and-drop-list) |
141
152
  | `onReveal(id)` | — | focus went to an item with no element yet — a row of a virtualized list outside the rendered range; scroll it in, and focus lands on it when it mounts |
142
153
 
154
+ `role: 'none'` adds neither a container/item role nor `aria-orientation` or
155
+ `aria-selected`; native links and buttons keep their semantics. The orientation
156
+ still controls which arrows move focus. Only listbox and tablist zones emit
157
+ `aria-orientation` (vertical by default).
158
+
143
159
  The callbacks return `false` to leave the key to the page, anything else takes
144
160
  it. A key the zone does not take bubbles on to the layers — in a vertical list
145
161
  ← and → are not the list's keys, so the section switch above hears them.
@@ -420,9 +436,9 @@ no component, no styles, no router — see the [keyboard guide](../guide/keyboar
420
436
 
421
437
  | Export | Kind | Summary |
422
438
  |--------|------|---------|
423
- | `useKeyLayer` | hook | put a layer on the window's one key stack — asked `overlay` → `local` → `route` → `zone` → `global`, innermost first within a kind |
439
+ | `useKeyLayer` | hook | put a layer on the window's one key stack; registration, options and cleanup follow the browser layout-effect phase, before later layout effects in the caller; asked `overlay` → `local` → `route` → `zone` → `global`, innermost first within a kind |
424
440
  | `useEscapeLayer` | hook | an `overlay`, `local` or `route` layer for Escape: one press closes one level |
425
- | `useNavZone` | hook | a list zone — roving tab stop, arrows move DOM focus, select, highlight or focus mode, cross-axis enter/exit, boundaries, `ignore` for a key the application is using; props carry no key without a value |
441
+ | `useNavZone` | hook | a list zone — roving tab stop, arrows move DOM focus, select, highlight or focus mode, cross-axis enter/exit, boundaries, `ignore` for a key the application is using; props carry no key without a value; `role: 'none'` omits roles, `aria-orientation` and `aria-selected`, preserving native link/button semantics |
426
442
  | `nextZoneIndex` | function | where a move lands in a list of a given length: an index, `'before-start'` or `'after-end'` |
427
443
  | `isKeyFieldTarget` | function | whether a key was pressed in a field or a `data-local-keys` area, the test layers use |
428
444
  | `KeyLayerOptions` | _type_ | `kind`, `onKey`, `active`, `scope`, `fields`, `phase` — `'capture'` is for a `local` layer only: it hears a key before the element that has focus does, as a menu over a text field must, and a key it takes goes no further |
@@ -86,13 +86,13 @@ own, recorded as an ADR.
86
86
  | `stitchkit/geo` | server (Bun or Node) | evolving | managed GeoIP reader generations, last-known-good reload and the optional MaxMind adapter |
87
87
  | `stitchkit/oauth` | browser **and** server | evolving | provider-neutral Authorization Code + PKCE request and one-shot callback transaction mechanics |
88
88
  | `stitchkit/google` | server (Bun or Node) | evolving | optional Google code exchange and verified OIDC identity adapter |
89
- | `stitchkit/observability` | server | stable<br>_redefined in 2 of the 59 minors since 0.56.2, most recently 0.92.0_ | request/tool event projections — `createObservability`, trace context, sanitisation |
89
+ | `stitchkit/observability` | server | stable<br>_redefined in 2 of the 60 minors since 0.56.2, most recently 0.92.0_ | request/tool event projections — `createObservability`, trace context, sanitisation |
90
90
  | `stitchkit/testing` | tests on Bun or Node | stable | in-process generated clients over a real Fetch handler, the managed-resource conformance kit and manual time for schedules and retries |
91
91
  | `stitchkit/declaration` | browser + build and deployment tooling (Bun or Node) | evolving | `ProjectDeclarationSchema` — the one machine-readable statement a repository makes about itself |
92
92
  | `stitchkit/react` | browser + server rendering | stable | `createCursorQuery`, `createCacheBridge`, QueryClient and `ApiError` retry policy |
93
93
  | `stitchkit/react/keyboard` | browser | evolving | which part of a screen gets a key — ordered layers, one Escape per level, list zones with real focus; see [keyboard guide](keyboard.md) |
94
94
  | `stitchkit/react/keyboard/testing` | server (Bun or Node) | evolving | the keyboard layers and zones without a DOM — fakes for the window, elements and key events beside the two engines, to test the order of layers, `scope`/`inert` and the edges of a zone in milliseconds |
95
- | `stitchkit/agent-runtime` | server | evolving<br>_redefined in 24 of the 59 minors since 0.56.2, most recently 0.113.0_ | optional durable conversation/run loop, history, models, prompts, fencing and events |
95
+ | `stitchkit/agent-runtime` | server | evolving<br>_redefined in 25 of the 60 minors since 0.56.2, most recently 0.115.0_ | optional durable conversation/run loop, history, models, prompts, fencing and events |
96
96
  | `stitchkit/agent-runtime/sandbox` | server | evolving | optional Linux Bubblewrap sessions, durable workspaces and a host HTTP credential gateway; see [sandbox guide](sandbox.md) |
97
97
  | `stitchkit/agent-runtime/testing` | tests on Bun or Node | evolving | credential-free replay, scripted provider faults, deterministic race controls and the agent-store conformance kit |
98
98
  | `stitchkit/agent-runtime/harness` | server | evolving | resource-aware process-local facade over the canonical Agent runtime; supervision stays outside |
@@ -104,7 +104,7 @@ own, recorded as an ADR.
104
104
  | `stitchkit/agent-runtime/sqlite/bun` | server (Bun) | evolving | durable built-in SQLite store for the agent runtime |
105
105
  | `stitchkit/agent-runtime/sqlite/node` | server (Node ≥ 22.5) | evolving | durable built-in SQLite store for the agent runtime |
106
106
  | `stitchkit-tui` | terminal (Bun) | evolving | optional official OpenTUI host over a caller-composed headless runtime |
107
- | `stitchkit/application` | browser + server | evolving<br>_redefined in 14 of the 59 minors since 0.56.2, most recently 0.110.0_ | managed resource graph, readiness, admission, schedules, subtree restart and bounded shutdown |
107
+ | `stitchkit/application` | browser + server | evolving<br>_redefined in 14 of the 60 minors since 0.56.2, most recently 0.110.0_ | managed resource graph, readiness, admission, schedules, subtree restart and bounded shutdown |
108
108
  | `stitchkit/application/grammy` | server | evolving | a grammY bot as application resources — configuration, then polling with updates admitted by batch — and the webhook adapter |
109
109
  | `stitchkit/application/opentelemetry` | server | evolving | maps application snapshots onto an injected OpenTelemetry `Meter` |
110
110
  | `stitchkit/application/schemas` | browser + server | evolving | the application's snapshot, health and shutdown schemas alone, without the kernel |
@@ -1,14 +1,73 @@
1
- # Upgrading 0.104.0 → 0.114.0 — stitchkit docs slice
1
+ # Upgrading 0.104.0 → 0.115.0 — stitchkit docs slice
2
2
 
3
3
  > Generated from the `docs/` tree by `bun run gen:llms`. The index of all slices is
4
4
  > `llms.txt` in this package.
5
5
 
6
- Contains: Guide: Upgrading, 0.104.0 → 0.114.0 (docs/guide/upgrading.md)
6
+ Contains: Guide: Upgrading, 0.104.0 → 0.115.0 (docs/guide/upgrading.md)
7
7
 
8
8
  ==============================================================================
9
- # Guide: Upgrading, 0.104.0 → 0.114.0 (docs/guide/upgrading.md)
9
+ # Guide: Upgrading, 0.104.0 → 0.115.0 (docs/guide/upgrading.md)
10
10
  ==============================================================================
11
11
 
12
+ ## Released migration: 0.115.0
13
+
14
+ ### contained-cli-downloads
15
+
16
+ **Who must act:** a CLI that uses `--output-dir` on Windows, from a macOS bundle or compiled binary
17
+ built without `createNativePackaging`, into a directory it cannot write or over bind-mounted files;
18
+ a coding-tools host that allows `edit` but refuses `read` for a path; and code or CSS that reads
19
+ `aria-orientation` of a `role: 'none'` zone. A CLI writing into its own directory on Linux or
20
+ unbundled macOS, and every CLI command without a download, need no change.
21
+
22
+ `--output-dir` now writes through a pinned directory descriptor
23
+ ([ADR 0276](../decisions/0276-a-download-writes-through-its-root-capability.md)). There is no
24
+ path-based fallback, so a platform without that backend refuses the download: the operation still
25
+ succeeds, its result stays on stdout, stderr names the refusal and the exit is non-zero.
26
+
27
+ 1. On macOS, build a bundled or compiled CLI with the native packaging plugin:
28
+
29
+ ```ts
30
+ // before
31
+ await Bun.build({
32
+ entrypoints: ['src/cli.ts'],
33
+ compile: { target: 'bun-darwin-arm64', outfile: 'dist/cli' },
34
+ })
35
+ // after
36
+ import { createNativePackaging } from 'stitchkit/files/packaging'
37
+
38
+ const native = createNativePackaging({
39
+ platform: 'darwin', architecture: 'arm64', delivery: 'embedded',
40
+ })
41
+ if (native.state !== 'ready') throw new Error(native.code)
42
+ await Bun.build({
43
+ entrypoints: ['src/cli.ts'],
44
+ compile: { target: 'bun-darwin-arm64', outfile: 'dist/cli' },
45
+ plugins: [native.plugin],
46
+ })
47
+ ```
48
+
49
+ A JS bundle uses `delivery: 'companion'`; every shape is in the [native I/O guide](./native-io.md). Search pattern:
50
+ `createCli` with a `download` option in a project that runs `bun build` for macOS.
51
+ 2. On Windows, run the download through Linux or macOS, or read the URLs from the operation's
52
+ JSON result and fetch them yourself. Stitchkit offers no weaker path on that platform.
53
+ 3. A download now replaces a file rather than rewriting it. Give the process write permission on
54
+ the output directory, and do not point it at a bind-mounted file: that refuses with `EBUSY`. A
55
+ replaced file belongs to the process user, and a read-only file is replaced like any other.
56
+ 4. Read the orientation you configured. A zone with `role: 'none'` has no attribute, and a default
57
+ would silently turn a horizontal zone vertical:
58
+
59
+ ```ts
60
+ // before
61
+ const axis: ZoneOrientation = zone.zoneProps['aria-orientation']
62
+ // after
63
+ const axis: ZoneOrientation = options.orientation ?? 'vertical'
64
+ ```
65
+
66
+ Search pattern: `aria-orientation` next to `useNavZone`, and `[aria-orientation]` in CSS and
67
+ test selectors. Type-check: a read typed as `ZoneOrientation` fails to compile.
68
+ 5. In a coding-tools `authorize`, answer `read` for every path you answer `edit` for. `edit_file`
69
+ asks both, `read` first.
70
+
12
71
  ## Released migration: 0.114.0
13
72
 
14
73
  **Who must act:** code with an exhaustive `switch` or `Record` over
@@ -11,7 +11,7 @@ Contains: Guide: Upgrading, general (docs/guide/upgrading.md)
11
11
 
12
12
  Load this slice, then every range slice between your installed version and the target:
13
13
 
14
- - 0.104.0 → 0.114.0: `llms/upgrading-0.104.0-0.114.0.txt`
14
+ - 0.104.0 → 0.115.0: `llms/upgrading-0.104.0-0.115.0.txt`
15
15
  - 0.79.0 → 0.103.13: `llms/upgrading-0.79.0-0.103.13.txt`
16
16
  - 0.62.0 → 0.78.0: `llms/upgrading-0.62.0-0.78.0.txt`
17
17
  - 0.44.0 → 0.61.0: `llms/upgrading-0.44.0-0.61.0.txt`