@cairn-tool/cairn 3.2.0 → 3.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/README.md +73 -29
  2. package/dist/agent/audit/index.d.ts +6 -6
  3. package/dist/agent/audit/index.js +6 -17
  4. package/dist/agent/audit/index.js.map +1 -1
  5. package/dist/atomic-write.d.ts +22 -0
  6. package/dist/atomic-write.js +42 -0
  7. package/dist/atomic-write.js.map +1 -0
  8. package/dist/binary-kind.d.ts +13 -0
  9. package/dist/binary-kind.js +25 -0
  10. package/dist/binary-kind.js.map +1 -0
  11. package/dist/cli.js +543 -250
  12. package/dist/cli.js.map +1 -1
  13. package/dist/commands/jira.js +1 -21
  14. package/dist/commands/jira.js.map +1 -1
  15. package/dist/commands/pdf.d.ts +29 -0
  16. package/dist/commands/pdf.js +345 -0
  17. package/dist/commands/pdf.js.map +1 -0
  18. package/dist/contract/registry.js +64 -0
  19. package/dist/contract/registry.js.map +1 -1
  20. package/dist/contract/schemas/index.js +2 -0
  21. package/dist/contract/schemas/index.js.map +1 -1
  22. package/dist/contract/schemas/pdf.d.ts +2 -0
  23. package/dist/contract/schemas/pdf.js +292 -0
  24. package/dist/contract/schemas/pdf.js.map +1 -0
  25. package/dist/jira/adf/to-markdown.js +2 -32
  26. package/dist/jira/adf/to-markdown.js.map +1 -1
  27. package/dist/markdown-stringify.d.ts +35 -0
  28. package/dist/markdown-stringify.js +44 -0
  29. package/dist/markdown-stringify.js.map +1 -0
  30. package/dist/pdf/attachments.d.ts +50 -0
  31. package/dist/pdf/attachments.js +229 -0
  32. package/dist/pdf/attachments.js.map +1 -0
  33. package/dist/pdf/diagnostics.d.ts +110 -0
  34. package/dist/pdf/diagnostics.js +137 -0
  35. package/dist/pdf/diagnostics.js.map +1 -0
  36. package/dist/pdf/document.d.ts +159 -0
  37. package/dist/pdf/document.js +272 -0
  38. package/dist/pdf/document.js.map +1 -0
  39. package/dist/pdf/forms.d.ts +9 -0
  40. package/dist/pdf/forms.js +101 -0
  41. package/dist/pdf/forms.js.map +1 -0
  42. package/dist/pdf/inspect.d.ts +42 -0
  43. package/dist/pdf/inspect.js +232 -0
  44. package/dist/pdf/inspect.js.map +1 -0
  45. package/dist/pdf/layout.d.ts +78 -0
  46. package/dist/pdf/layout.js +524 -0
  47. package/dist/pdf/layout.js.map +1 -0
  48. package/dist/pdf/outline.d.ts +30 -0
  49. package/dist/pdf/outline.js +127 -0
  50. package/dist/pdf/outline.js.map +1 -0
  51. package/dist/pdf/read.d.ts +62 -0
  52. package/dist/pdf/read.js +193 -0
  53. package/dist/pdf/read.js.map +1 -0
  54. package/dist/pdf/struct.d.ts +35 -0
  55. package/dist/pdf/struct.js +226 -0
  56. package/dist/pdf/struct.js.map +1 -0
  57. package/dist/pdf/text.d.ts +71 -0
  58. package/dist/pdf/text.js +166 -0
  59. package/dist/pdf/text.js.map +1 -0
  60. package/dist/pdf/to-markdown.d.ts +22 -0
  61. package/dist/pdf/to-markdown.js +289 -0
  62. package/dist/pdf/to-markdown.js.map +1 -0
  63. package/dist/pdf/types.d.ts +205 -0
  64. package/dist/pdf/types.js +2 -0
  65. package/dist/pdf/types.js.map +1 -0
  66. package/dist/pdf/validate.d.ts +51 -0
  67. package/dist/pdf/validate.js +136 -0
  68. package/dist/pdf/validate.js.map +1 -0
  69. package/dist/serve/pdf-tools.d.ts +2 -0
  70. package/dist/serve/pdf-tools.js +196 -0
  71. package/dist/serve/pdf-tools.js.map +1 -0
  72. package/dist/serve/tools.d.ts +2 -17
  73. package/dist/serve/tools.js +4 -0
  74. package/dist/serve/tools.js.map +1 -1
  75. package/dist/serve/types.d.ts +22 -0
  76. package/dist/serve/types.js +2 -0
  77. package/dist/serve/types.js.map +1 -0
  78. package/package.json +2 -1
package/README.md CHANGED
@@ -58,16 +58,17 @@ failure to retry. The [complete command listing](docs/commands.md) has all of th
58
58
 
59
59
  ## What is in it
60
60
 
61
- Six toolsets, plus `describe`, `schema`, `serve`, `completion`, and `check-update`.
62
-
63
- | Toolset | Does | Guide |
64
- | --------- | ------------------------------------------------------------------------- | -------------------------------------------- |
65
- | `md` | Lint, validate, query, and safely refactor a Markdown workspace. | [Markdown](docs/guide/markdown.md) |
66
- | `agent` | Compile one portable bundle into every assistant's native format. | [Agent bundles](docs/guide/agent-bundles.md) |
67
- | `scripts` | Resolve and run a repository's named commands from anywhere inside it. | [Named scripts](docs/guide/scripts.md) |
68
- | `usage` | Report on local assistant transcripts: tokens, tools, sessions, and cost. | [Usage reporting](docs/guide/usage.md) |
69
- | `archive` | Keep what a session produced before the logs are pruned, and get it back. | [Archiving](docs/guide/archiving.md) |
70
- | `jira` | Convert Jira and Confluence rich text between ADF and Markdown. | [Jira rich text](docs/guide/jira.md) |
61
+ Seven toolsets, plus `describe`, `schema`, `serve`, `completion`, and `check-update`.
62
+
63
+ | Toolset | Does | Guide |
64
+ | --------- | -------------------------------------------------------------------------------- | -------------------------------------------- |
65
+ | `md` | Lint, validate, query, and safely refactor a Markdown workspace. | [Markdown](docs/guide/markdown.md) |
66
+ | `agent` | Compile one portable bundle into every assistant's native format. | [Agent bundles](docs/guide/agent-bundles.md) |
67
+ | `scripts` | Resolve and run a repository's named commands from anywhere inside it. | [Named scripts](docs/guide/scripts.md) |
68
+ | `usage` | Report on local assistant transcripts: tokens, tools, sessions, and cost. | [Usage reporting](docs/guide/usage.md) |
69
+ | `archive` | Keep what a session produced before the logs are pruned, and get it back. | [Archiving](docs/guide/archiving.md) |
70
+ | `jira` | Convert Jira and Confluence rich text between ADF and Markdown. | [Jira rich text](docs/guide/jira.md) |
71
+ | `pdf` | Read PDF documents: text, structure, embedded files, and conversion to Markdown. | [PDF documents](docs/guide/pdf.md) |
71
72
 
72
73
  Nothing calls a model, and nothing sends anything anywhere. `scripts run` is the only command
73
74
  that executes anything, and only what a tracked file in your repository names.
@@ -77,34 +78,77 @@ that executes anything, and only what a tracked file in your repository names.
77
78
  Full documentation lives in
78
79
  [`docs/`](https://github.com/cairn-tool/cairn/tree/main/docs).
79
80
 
80
- | Page | Covers |
81
- | ---------------------------------------------------- | ------------------------------------------------------ |
82
- | [Documentation contents](docs/_contents.md) | Index of everything below. |
83
- | [Complete command listing](docs/commands.md) | Every command, with a one-line description. |
84
- | [Guides](docs/guide.md) | Why each toolset exists. |
85
- | [Project configuration](docs/configuration.md) | The `.cairn.yml` schema. |
86
- | [Machine-readable result contract](docs/contract.md) | JSON output, the envelope, and what may change. |
87
- | [File formats and schemas](docs/formats.md) | The files Cairn itself reads and writes. |
88
- | [Diagnostic codes](docs/formats/diagnostic-codes.md) | Every `AB###` and `AD###`, with severity and meaning. |
89
- | [Providers](docs/providers.md) | What is known about each assistant's own formats. |
90
- | [Cairn's own plugins](docs/plugins.md) | The six toolsets, shipped as agent bundles. |
91
- | [Installing Cairn](docs/install.md) | Node versions, stable paths, and building from source. |
92
- | [Migrating from claude-cli](docs/migration.md) | Every pre-rename identifier, and what still reads it. |
93
-
94
- ## Claude Code plugins
81
+ | Page | Covers |
82
+ | ---------------------------------------------------- | --------------------------------------------------------------- |
83
+ | [Documentation contents](docs/_contents.md) | Index of everything below. |
84
+ | [Complete command listing](docs/commands.md) | Every command, with a one-line description. |
85
+ | [Guides](docs/guide.md) | Why each toolset exists. |
86
+ | [Project configuration](docs/configuration.md) | The `.cairn.yml` schema. |
87
+ | [Machine-readable result contract](docs/contract.md) | JSON output, the envelope, and what may change. |
88
+ | [File formats and schemas](docs/formats.md) | The files Cairn itself reads and writes. |
89
+ | [Diagnostic codes](docs/formats/diagnostic-codes.md) | Every `AB###`, `AD###`, and `AP###`, with severity and meaning. |
90
+ | [Providers](docs/providers.md) | What is known about each assistant's own formats. |
91
+ | [Cairn's own plugins](docs/plugins.md) | The toolsets, shipped as agent bundles. |
92
+ | [Installing Cairn](docs/install.md) | Node versions, stable paths, and building from source. |
93
+ | [Migrating from claude-cli](docs/migration.md) | Every pre-rename identifier, and what still reads it. |
94
+
95
+ ## Plugins
95
96
 
96
97
  Cairn ships its own toolsets as installable plugins, so an assistant has the command surface
97
- available without rediscovering it from `--help`:
98
+ available without rediscovering it from `--help`. Each host gets its own marketplace branch,
99
+ holding that host's catalog at the branch root:
100
+
101
+ | Host | Branch | Catalog |
102
+ | ----------- | ---------------- | --------------------------------- |
103
+ | Claude Code | `claude-plugins` | `.claude-plugin/marketplace.json` |
104
+ | Codex | `codex-plugins` | `.codex-plugin/marketplace.json` |
105
+ | Cursor | `cursor-plugins` | `.cursor-plugin/marketplace.json` |
106
+
107
+ The marketplace is named `cairn`, and the plugins in it are `cairn-markdown`, `cairn-scripts`,
108
+ `cairn-usage`, `cairn-archive`, `cairn-agent`, and `cairn-jira`.
109
+
110
+ ### Claude Code
98
111
 
99
112
  ```text
100
113
  /plugin marketplace add cairn-tool/cairn@claude-plugins
101
114
  /plugin install cairn-markdown@cairn
102
115
  ```
103
116
 
104
- Codex and Cursor get their own marketplace branches, `codex-plugins` and `cursor-plugins`.
117
+ ### Codex
118
+
119
+ Add the branch as a marketplace, then install from it by name. `--ref` is what pins the
120
+ marketplace to the published branch rather than `main`:
121
+
122
+ ```bash
123
+ codex plugin marketplace add cairn-tool/cairn --ref codex-plugins
124
+ codex plugin add cairn-markdown@cairn
125
+ ```
126
+
127
+ `codex plugin list --marketplace cairn` shows what the branch offers, and
128
+ `codex plugin marketplace upgrade cairn` re-fetches it after a release — the snapshot Codex
129
+ installs from is local, so it does not update on its own.
130
+
131
+ ### Cursor
132
+
133
+ Cursor has no CLI for adding a marketplace; a repository-backed one is a **team marketplace**,
134
+ which is a Teams or Enterprise feature. In the dashboard, go to **Plugins → Team Marketplaces →
135
+ Add Marketplace → Import from Repo**, point it at `https://github.com/cairn-tool/cairn` and the
136
+ `cursor-plugins` branch, then install from **Customize** in the sidebar. Turning on **Auto
137
+ Refresh** re-reads the catalog whenever that branch is pushed.
138
+
139
+ Without a team plan, install locally instead — this drops the plugins into
140
+ `~/.cursor/plugins/local`, which Cursor scans on startup:
141
+
142
+ ```bash
143
+ scripts/install-cursor.sh
144
+ ```
145
+
146
+ Antigravity and OpenCode have no marketplace concept at all; there a plugin is a directory drop,
147
+ so use [`agent install`](docs/commands/agent/install.md) or the
148
+ [install scripts](scripts/README.md).
105
149
 
106
- They are authored as agent bundles under `plugins/`, built with the same `agent` commands they
107
- document. **The `cairn` binary is a separate install** — the plugins invoke it, they do not
150
+ The plugins are authored as agent bundles under `plugins/`, built with the same `agent` commands
151
+ they document. **The `cairn` binary is a separate install** — the plugins invoke it, they do not
108
152
  carry it. See [Cairn's own plugins](docs/plugins.md) for what each one contains.
109
153
 
110
154
  ## Contributing
@@ -1,5 +1,6 @@
1
1
  import type { AgentBundle, AgentDiagnostic, AgentProfile, AgentTarget, Artifact, SourceFile } from "../types.js";
2
2
  import type { AuditBaseline } from "./baseline.js";
3
+ import { binaryKind } from "../../binary-kind.js";
3
4
  /** A single file larger than this is worth a reviewer's attention. */
4
5
  export declare const MAX_FILE_BYTES: number;
5
6
  /** A bundle larger than this is worth a reviewer's attention. */
@@ -83,13 +84,12 @@ export declare const AUDIT_CODES: ReadonlySet<string>;
83
84
  /** Splits a command line into tokens, honoring single and double quotes. */
84
85
  export declare function tokenize(command: string): string[];
85
86
  /**
86
- * Executable-format magic number.
87
- *
88
- * Header parsing only, mirroring `imageKind` in the packager: pulling in a
89
- * binary-format library to answer "is this an executable" would be a dependency
90
- * for a review nicety.
87
+ * Re-exported so `agent audit`'s consumers keep one import site. The
88
+ * implementation moved to `src/binary-kind.ts` when `pdf attachments` needed
89
+ * the same magic-number test; see that module for why it is shared rather than
90
+ * imported across toolsets.
91
91
  */
92
- export declare function binaryKind(content: Buffer): "elf" | "pe" | "macho" | null;
92
+ export { binaryKind };
93
93
  /** Shannon entropy per character, used only to grade a candidate secret. */
94
94
  export declare function entropy(value: string): number;
95
95
  /**
@@ -5,6 +5,7 @@ import { allFiles } from "../parser.js";
5
5
  import { policyEntries } from "../render.js";
6
6
  import { COMPONENT_KEYS } from "../manifest.js";
7
7
  import { TARGET_PROFILES } from "../targets/index.js";
8
+ import { binaryKind } from "../../binary-kind.js";
8
9
  /** A single file larger than this is worth a reviewer's attention. */
9
10
  export const MAX_FILE_BYTES = 1024 * 1024;
10
11
  /** A bundle larger than this is worth a reviewer's attention. */
@@ -133,24 +134,12 @@ export function tokenize(command) {
133
134
  return tokens;
134
135
  }
135
136
  /**
136
- * Executable-format magic number.
137
- *
138
- * Header parsing only, mirroring `imageKind` in the packager: pulling in a
139
- * binary-format library to answer "is this an executable" would be a dependency
140
- * for a review nicety.
137
+ * Re-exported so `agent audit`'s consumers keep one import site. The
138
+ * implementation moved to `src/binary-kind.ts` when `pdf attachments` needed
139
+ * the same magic-number test; see that module for why it is shared rather than
140
+ * imported across toolsets.
141
141
  */
142
- export function binaryKind(content) {
143
- if (content.length < 4)
144
- return null;
145
- if (content.subarray(0, 4).toString("hex") === "7f454c46")
146
- return "elf";
147
- if (content[0] === 0x4d && content[1] === 0x5a)
148
- return "pe";
149
- const magic = content.subarray(0, 4).toString("hex");
150
- if (["feedface", "feedfacf", "cefaedfe", "cffaedfe", "cafebabe"].includes(magic))
151
- return "macho";
152
- return null;
153
- }
142
+ export { binaryKind };
154
143
  /** Shannon entropy per character, used only to grade a candidate secret. */
155
144
  export function entropy(value) {
156
145
  const counts = new Map();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agent/audit/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agent/audit/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAU7B,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,sEAAsE;AACtE,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,GAAG,IAAI,CAAC;AAC1C,iEAAiE;AACjE,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAEhD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;AAE3D;;;GAGG;AACH,MAAM,qBAAqB,GAAG,IAAI,GAAG,CACnC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,CAChF,CAAC;AAEF,kFAAkF;AAClF,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,CAAC,gBAAgB,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC,CAAC;AAExF,MAAM,YAAY,GAAG;IACnB,IAAI;IACJ,MAAM;IACN,KAAK;IACL,MAAM;IACN,KAAK;IACL,QAAQ;IACR,SAAS;IACT,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,YAAY;CACb,CAAC;AAEF,yEAAyE;AACzE,MAAM,UAAU,GAAG,CAAC,GAAG,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAErF,uEAAuE;AACvE,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AAEtE,MAAM,UAAU,GACd,6GAA6G,CAAC;AAEhH,iFAAiF;AACjF,MAAM,YAAY,GAChB,oJAAoJ,CAAC;AAEvJ,qEAAqE;AACrE,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC;IAC9B,SAAS;IACT,MAAM;IACN,KAAK;IACL,KAAK;IACL,aAAa;IACb,SAAS;IACT,QAAQ;IACR,WAAW;CACZ,CAAC,CAAC;AAEH,2DAA2D;AAC3D,MAAM,iBAAiB,GACrB,gFAAgF,CAAC;AAuDnF,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,2EAA2E;IAC3E,8EAA8E;IAC9E,iFAAiF;CAClF,CAAC;AAEF,kDAAkD;AAClD,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;CACR,CAAC;AAEF,qFAAqF;AACrF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AAElD,oDAAoD;AACpD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAE7E;;;;;GAKG;AACH,MAAM,CAAC,MAAM,WAAW,GAAwB,IAAI,GAAG,CAAC;IACtD,GAAG,aAAa;IAChB,GAAG,eAAe;IAClB,GAAG,eAAe;CACnB,CAAC,CAAC;AAEH,SAAS,IAAI,CACX,IAAY,EACZ,OAAe,EACf,QAAkC,EAAE;IAEpC,OAAO,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,IAAI,CACX,IAAY,EACZ,OAAe,EACf,QAAkC,EAAE;IAEpC,OAAO,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;AACnD,CAAC;AAED,SAAS,IAAI,CACX,IAAY,EACZ,OAAe,EACf,QAAkC,EAAE;IAEpC,OAAO,EAAE,GAAG,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;AACnF,CAAC;AAED,SAAS,MAAM,CAAC,KAAc;IAC5B,OAAO,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAChE,CAAC,CAAE,KAAiC;QACpC,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,SAAS,KAAK,CAAC,KAAa;IAC1B,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzC,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,QAAQ,CAAC,OAAe;IACtC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAAC;QAChE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAChD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,OAAO,EAAE,UAAU,EAAE,CAAC;AAEtB,4EAA4E;AAC5E,MAAM,UAAU,OAAO,CAAC,KAAa;IACnC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,KAAK,MAAM,IAAI,IAAI,KAAK;QAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACxE,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;QACpC,MAAM,WAAW,GAAG,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;QACzC,KAAK,IAAI,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAmB;IACtD,MAAM,KAAK,GAAiB,EAAE,CAAC;IAC/B,KAAK,MAAM,KAAK,IAAI,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QACzE,IAAI,kBAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;YAAE,SAAS;QACtD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,KAAK,CAAC,WAAW,EAAE;YACrB,KAAK,CAAC,IAAI,CACR,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAC1F,CAAC;aACC,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,KAAK,CAAC,cAAc,EAAE;YAC/C,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC;gBAC9B,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,KAAK;aACrC,CAAC,CAAC;IACP,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAChF,CAAC;AAED,8EAA8E;AAC9E,SAAS,SAAS,CAAC,KAA8B;IAC/C,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACtC,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IACxB,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;QAChC,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QACzC,OAAO,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAmD,CAAC,CAAC,CAAC,EAAE,CAAC;IACjG,CAAC,CAAC,CAAC;AACL,CAAC;AAED,uFAAuF;AACvF,SAAS,UAAU,CAAC,KAA8B;IAChD,OAAO,CACL,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;QACnB,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QACpB,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAC/E,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,SAAS,eAAe,CAAC,OAAgB;IACvC,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9B,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IACtB,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC;QAC7C,IAAI,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,QAAQ;YAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7D,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;QAC5B,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,KAAK;YAAE,KAAK,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;IACzE,OAAO,KAAK,CAAC;AACf,CAAC;AAED,6CAA6C;AAC7C,SAAS,UAAU,CAAC,KAA8B;IAChD,OAAO,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;AACxC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAAC,MAAmB;IACjD,MAAM,QAAQ,GAAmB,EAAE,CAAC;IACpC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,MAAM,IAAI,GAAG,CAAC,MAA+B,EAAE,MAAoB,EAAQ,EAAE;YAC3E,KAAK,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;gBAChE,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;oBACnE,KAAK,MAAM,OAAO,IAAI,eAAe,CAAC,OAAO,CAAC;wBAC5C,QAAQ,CAAC,IAAI,CAAC;4BACZ,MAAM,EAAE,MAAM;4BACd,IAAI,EAAE,KAAK;4BACX,OAAO;4BACP,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BAC7B,IAAI,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI;yBACzB,CAAC,CAAC;QACX,CAAC,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACzB,KAAK,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;YAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACzF,CAAC;IACD,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC;QACf,MAAM,IAAI,GAAG,CAAC,MAA+B,EAAE,MAAoB,EAAQ,EAAE;YAC3E,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBAC/D,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC7B,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ;oBAAE,SAAS;gBAC5D,QAAQ,CAAC,IAAI,CAAC;oBACZ,MAAM,EAAE,KAAK;oBACb,IAAI;oBACJ,OAAO,EAAE,MAAM,CAAC,OAAO;oBACvB,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACxE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC7B,IAAI,EAAE,MAAM,CAAC,GAAG,EAAE,IAAI;iBACvB,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACvB,KAAK,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACvF,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,8EAA8E;AAC9E,SAAS,cAAc,CACrB,MAAmB;IAEnB,IAAI,CAAC,MAAM,CAAC,GAAG;QAAE,OAAO,EAAE,CAAC;IAC3B,MAAM,KAAK,GAAmF,EAAE,CAAC;IACjG,MAAM,IAAI,GAAG,CAAC,MAA+B,EAAE,MAAoB,EAAQ,EAAE;QAC3E,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YAC/D,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAC7B,IAAI,MAAM;gBAAE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC,CAAC;IACF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACvB,KAAK,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;QAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACrF,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,eAAe,CAAC,KAAa;IACpC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;IAC9E,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACjC,CAAC;AAED,mEAAmE;AACnE,MAAM,UAAU,aAAa,CAAC,QAAwB,EAAE,MAAmB;IACzE,MAAM,WAAW,GAAsB,EAAE,CAAC;IAC1C,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;QAC/E,MAAM,MAAM,GAAG,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC;QACnE,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9D,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;QAEhE,IAAI,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;YACnF,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC;gBAClD,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,iCAAiC,QAAQ,KAAK,KAAK,CAAC,IAAI,EAAE,EAAE;oBACxE,GAAG,KAAK;oBACR,WAAW,EAAE,gEAAgE;iBAC9E,CAAC,CACH,CAAC;QACN,CAAC;QAED,IAAI,2CAA2C,CAAC,IAAI,CAAC,IAAI,CAAC;YACxD,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,iDAAiD,KAAK,CAAC,IAAI,EAAE,EAAE;gBAC3E,GAAG,KAAK;gBACR,WAAW,EAAE,+DAA+D;aAC7E,CAAC,CACH,CAAC;QAEJ,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,iCAAiC,CAAC,EAAE,CAAC;YACrE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC;YACnC,IAAI,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC;gBAAE,SAAS;YACvF,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,kBAAkB,QAAQ,gCAAgC,KAAK,CAAC,IAAI,EAAE,EAAE;gBACpF,GAAG,KAAK;gBACR,WAAW,EAAE,6CAA6C;aAC3D,CAAC,CACH,CAAC;QACJ,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,MAAM;YACxB,IAAI,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7D,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,mCAAmC,KAAK,MAAM,KAAK,CAAC,IAAI,EAAE,EAAE;oBACxE,GAAG,KAAK;oBACR,WAAW,EAAE,yEAAyE;iBACvF,CAAC,CACH,CAAC;gBACF,MAAM;YACR,CAAC;QAEH,IACE,mEAAmE,CAAC,IAAI,CAAC,IAAI,CAAC;YAC9E,iCAAiC,CAAC,IAAI,CAAC,IAAI,CAAC;YAE5C,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,wCAAwC,KAAK,CAAC,IAAI,EAAE,EAAE;gBAClE,GAAG,KAAK;gBACR,WAAW,EAAE,uEAAuE;aACrF,CAAC,CACH,CAAC;QAEJ,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,SAAS,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;YACzC,IAAI,SAAS,KAAK,IAAI;gBAAE,SAAS;YACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YACnD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;gBAChE,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,6CAA6C,SAAS,EAAE,EAAE;oBACtE,GAAG,KAAK;oBACR,WAAW,EAAE,oCAAoC;iBAClD,CAAC,CACH,CAAC;gBACF,SAAS;YACX,CAAC;YACD,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YAC1C,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC;YAChD,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC;gBAC1E,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,WAAW,SAAS,uCAAuC,EAAE;oBACzE,GAAG,KAAK;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,oDAAoD;iBAClE,CAAC,CACH,CAAC;QACN,CAAC;IACH,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,QAAQ,CAAC,MAAmB;IAC1C,MAAM,WAAW,GAAsB,EAAE,CAAC;IAC1C,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9D,MAAM,KAAK,GAAG;YACZ,SAAS,EAAE,OAAO,IAAI,EAAE;YACxB,IAAI,EAAE,MAAM,CAAC,GAAG,EAAE,IAAI;YACtB,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC9B,CAAC;QACF,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,SAAS,CAAC;QAClD,IACE,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ;YAC9B,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,OAAO,CAAC;YAE1D,WAAW,CAAC,IAAI,CACd,IAAI,CACF,OAAO,EACP,eAAe,IAAI,+BAA+B;gBAChD,CAAC,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,EAClF,EAAE,GAAG,KAAK,EAAE,WAAW,EAAE,2CAA2C,EAAE,CACvE,CACF,CAAC;QAEJ,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YACpE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,EAAE;gBAAE,SAAS;YACxD,MAAM,WAAW,GAAG,0DAA0D,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3F,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW;gBACtC,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,eAAe,IAAI,mCAAmC,GAAG,EAAE,EAAE;oBACzE,GAAG,KAAK;oBACR,WAAW,EAAE,kEAAkE;iBAChF,CAAC,CACH,CAAC;iBACC,IAAI,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;gBAC/B,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,eAAe,IAAI,SAAS,GAAG,kCAAkC,EAAE;oBAC/E,GAAG,KAAK;oBACR,WAAW,EAAE,0DAA0D;iBACxE,CAAC,CACH,CAAC;iBACC,IACH,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC;gBACzB,KAAK,CAAC,MAAM,IAAI,EAAE;gBAClB,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC;gBACjC,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG;gBAErB,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,eAAe,IAAI,SAAS,GAAG,4BAA4B,EAAE;oBACzE,GAAG,KAAK;oBACR,WAAW,EAAE,iCAAiC;iBAC/C,CAAC,CACH,CAAC;QACN,CAAC;QAED,MAAM,QAAQ,GACZ,MAAM,CAAC,UAAU,KAAK,IAAI;YAC1B,MAAM,CAAC,GAAG,KAAK,IAAI;YACnB,MAAM,CAAC,GAAG,KAAK,SAAS;YACxB,MAAM,CAAC,GAAG,KAAK,GAAG;YAClB,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC3E,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC;QAC/B,IAAI,QAAQ;YACV,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,eAAe,IAAI,oCAAoC,EAAE;gBACrE,GAAG,KAAK;gBACR,WAAW,EAAE,+CAA+C;aAC7D,CAAC,CACH,CAAC;QAEJ,IACE,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ;YAClC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;YAEjF,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,eAAe,IAAI,oCAAoC,EAAE;gBACrE,GAAG,KAAK;gBACR,WAAW,EAAE,mDAAmD;aACjE,CAAC,CACH,CAAC;IACN,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,4DAA4D;AAC5D,MAAM,UAAU,aAAa,CAAC,MAAmB;IAC/C,MAAM,WAAW,GAAsB,EAAE,CAAC;IAC1C,KAAK,MAAM,KAAK,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,QAAQ,IAAI,QAAQ,CAAC,CAAC;QAClE,IAAI,MAAM,KAAK,OAAO;YAAE,SAAS;QACjC,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;QACxE,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;YACvC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YACzC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACvB,MAAM,KAAK,GAAG,EAAE,SAAS,EAAE,UAAU,OAAO,IAAI,SAAS,EAAE,EAAE,CAAC;QAC9D,MAAM,QAAQ,GAAG,KAAK,CAAC,gBAAgB,IAAI,KAAK,CAAC,UAAU,CAAC;QAE5D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YACnD,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,eAAe,OAAO,4BAA4B,EAAE;gBAChE,GAAG,KAAK;gBACR,WAAW,EAAE,sDAAsD;aACpE,CAAC,CACH,CAAC;QAEJ,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC3D,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;QAChE,IAAI,KAAK,KAAK,EAAE,IAAI,KAAK,KAAK,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAChE,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,eAAe,OAAO,IAAI,SAAS,qCAAqC,EAAE;gBACtF,GAAG,KAAK;gBACR,WAAW,EAAE,sEAAsE;aACpF,CAAC,CACH,CAAC;aACC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;YAClD,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,eAAe,OAAO,iCAAiC,OAAO,EAAE,EAAE;gBAC9E,GAAG,KAAK;gBACR,WAAW,EAAE,+DAA+D;aAC7E,CAAC,CACH,CAAC;IACN,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,SAAS,YAAY,CAAC,MAAmB;IACvC,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;AAC/D,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,iBAAiB,CAAC,MAAmB;IACnD,MAAM,WAAW,GAAsB,EAAE,CAAC;IAC1C,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;IAChE,MAAM,MAAM,GAAG,IAAI,GAAG,CACpB,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CACzB,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CACvE,CACF,CAAC;IACF,KAAK,MAAM,SAAS,IAAI,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7C,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;YACnD,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC;YACtC,CAAC,CAAC,EAAE,CAAC;QACP,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,SAAS;QAC5B,MAAM,KAAK,GAAG,EAAE,SAAS,EAAE,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC;QAClE,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,WAAW,CAAC;YAC5F,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,cAAc,SAAS,CAAC,IAAI,4BAA4B,EAAE,KAAK,CAAC,CAC/E,CAAC;QACJ,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;YACnD,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,cAAc,SAAS,CAAC,IAAI,2BAA2B,EAAE,KAAK,CAAC,CAC9E,CAAC;QAEJ,yEAAyE;QACzE,oEAAoE;QACpE,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACzD,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,KAAK,SAAS,CAAC;YAAE,SAAS;QACrF,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QACrF,IAAI,OAAO,CAAC,MAAM;YAChB,WAAW,CAAC,IAAI,CACd,IAAI,CACF,OAAO,EACP,cAAc,SAAS,CAAC,IAAI,kCAAkC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAClF;gBACE,GAAG,KAAK;gBACR,WAAW,EACT,mFAAmF;aACtF,CACF,CACF,CAAC;IACN,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,8DAA8D;AAC9D,MAAM,UAAU,cAAc,CAAC,MAAmB,EAAE,KAAmB;IACrE,MAAM,WAAW,GAAsB,EAAE,CAAC;IAC1C,MAAM,cAAc,GAAG,IAAI,GAAG,CAC5B,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAC3E,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CACtD,CACF,CAAC;IACF,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAC7B,4EAA4E;QAC5E,uDAAuD;QACvD,IAAI,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,EAAE;YAClE,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,0BAA0B,IAAI,CAAC,IAAI,EAAE,EAAE;gBACnD,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,WAAW,EAAE,qDAAqD;aACnE,CAAC,CACH,CAAC;QAEJ,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,IAAI;YACN,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,WAAW,IAAI,gBAAgB,IAAI,CAAC,IAAI,EAAE,EAAE;gBACxD,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,WAAW,EAAE,mEAAmE;aACjF,CAAC,CACH,CAAC;aACC,IACH,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;YACxB,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YAClC,sEAAsE;YACtE,uDAAuD;YACvD,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;YAEhC,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,8BAA8B,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAC9E,CAAC;QAEJ,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,cAAc,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7F,WAAW,CAAC,IAAI,CACd,IAAI,CACF,OAAO,EACP,gBAAgB,cAAc,WAAW,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,EAC7E,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CACpB,CACF,CAAC;IACN,CAAC;IACD,IAAI,KAAK,GAAG,eAAe;QACzB,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,kBAAkB,eAAe,WAAW,KAAK,GAAG,EAAE;YAClE,WAAW,EAAE,4DAA4D;SAC1E,CAAC,CACH,CAAC;IACJ,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,yDAAyD;AACzD,MAAM,UAAU,mBAAmB,CAAC,MAAmB;IACrD,IAAI,MAAM,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IAC7B,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;IAC1D,MAAM,SAAS,GAA4B;QACzC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;QAChC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;QAChC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;QAC9B,KAAK,EAAE,MAAM,CAAC,KAAK,KAAK,SAAS;QACjC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;QACpC,GAAG,EAAE,MAAM,CAAC,GAAG,KAAK,SAAS;QAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;KACjC,CAAC;IACF,OAAO,cAAc,CAAC,MAAM,CAC1B,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAChG,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CACZ,IAAI,CAAC,OAAO,EAAE,2CAA2C,GAAG,sBAAsB,EAAE;QAClF,WAAW,EAAE,6CAA6C;KAC3D,CAAC,CACH,CAAC;AACJ,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,aAAa,CAC3B,MAAmB,EACnB,SAAqB,EACrB,OAAsB,EACtB,QAAwB;IAExB,MAAM,WAAW,GAAsB,EAAE,CAAC;IAC1C,MAAM,SAAS,GAAG,gBAAgB,CAAC;IAEnC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,IAAI,CAAC,iCAAiC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,SAAS;QACrE,IAAI,MAAe,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC,EAAE,KAAK,CAAC;QACzD,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;YAC/D,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;gBACvB,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,kDAAkD,KAAK,EAAE,EAAE;oBACvE,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,WAAW,EAAE,wCAAwC;iBACtD,CAAC,CACH,CAAC;IACR,CAAC;IAED,wEAAwE;IACxE,8DAA8D;IAC9D,KAAK,MAAM,SAAS,IAAI,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC;QAClF,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3F,KAAK,MAAM,KAAK,IAAI,MAAM;YACxB,IAAI,2BAA2B,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;gBAClE,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,cAAc,SAAS,CAAC,IAAI,gCAAgC,KAAK,EAAE,EAAE;oBACjF,SAAS,EAAE,SAAS,CAAC,IAAI;oBACzB,IAAI,EAAE,SAAS,CAAC,IAAI;oBACpB,WAAW,EAAE,wCAAwC;iBACtD,CAAC,CACH,CAAC;IACR,CAAC;IAED,2EAA2E;IAC3E,wEAAwE;IACxE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,GAAG;QAAE,OAAO,WAAW,CAAC;IACrF,KAAK,MAAM,MAAM,IAAI,OAAO;QAC1B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,GAAG,MAAM,IAAI,OAAO,GAAG,CAAC;YACvC,MAAM,KAAK,GAAG,SAAS;iBACpB,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;iBACtD,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YACzD,sEAAsE;YACtE,MAAM,IAAI,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC;YAC9C,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI;gBAAE,SAAS;YACtC,MAAM,gBAAgB,GAAG,SAAS,CAAC,IAAI,CACrC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,GAAG,MAAM,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,EAAE,CAC1E,CAAC;YACF,IAAI,CAAC,gBAAgB;gBAAE,SAAS;YAChC,IAAI,QAA6C,CAAC;YAClD,IAAI,CAAC;gBACH,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC3E,CAAC;YAAC,MAAM,CAAC;gBACP,SAAS;YACX,CAAC;YACD,KAAK,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC;gBAC9D,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;gBAC9B,IAAI,OAAO,KAAK,KAAK,QAAQ;oBAAE,SAAS;gBACxC,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACjE,IAAI,CAAC,UAAU;oBAAE,SAAS;gBAC1B,IACE,CAAC,KAAK,CAAC,IAAI,CACT,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,KAAK,UAAU,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,UAAU,GAAG,CAAC,CAClF;oBAED,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,iCAAiC,GAAG,KAAK,KAAK,uBAAuB,EAAE;wBACnF,MAAM;wBACN,OAAO;wBACP,IAAI,EAAE,gBAAgB,CAAC,IAAI;qBAC5B,CAAC,CACH,CAAC;YACN,CAAC;QACH,CAAC;IACH,OAAO,WAAW,CAAC;AACrB,CAAC"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Writes one file atomically: staged beside the destination with `wx`, then
3
+ * renamed. The same pattern as `src/edit-plan.ts`; `src/agent/writer.ts` stages
4
+ * whole artifact trees and is the wrong tool for a single file.
5
+ *
6
+ * Shared by `jira adf --output`, `pdf --output`, and `pdf attachments --extract`
7
+ * rather than copied into each, for the reason `src/mapping-quality.ts` was
8
+ * extracted: the `wx` flag, the directory refusal, and the unlink-on-rename-failure
9
+ * are one invariant, and a second copy is how the two stop agreeing. The refusal
10
+ * message is user-facing text in two toolsets' documented behavior and must be one
11
+ * string.
12
+ *
13
+ * `content` widened to accept bytes when `pdf attachments --extract` needed to
14
+ * write an embedded file, which is binary and must not go through a utf-8 encode.
15
+ *
16
+ * Note what the `wx` does and does not buy: it guards the *staging* file, so two
17
+ * processes cannot stage over each other. The `rename` still replaces whatever is
18
+ * at the destination. That is right for `--output`, which names one file the user
19
+ * asked to write, and wrong for extracting many attacker-named files — so
20
+ * `src/pdf/attachments.ts` resolves collisions while planning, before calling this.
21
+ */
22
+ export declare function writeAtomically(destination: string, content: string | Uint8Array): void;
@@ -0,0 +1,42 @@
1
+ import fs from "node:fs";
2
+ import path from "node:path";
3
+ /**
4
+ * Writes one file atomically: staged beside the destination with `wx`, then
5
+ * renamed. The same pattern as `src/edit-plan.ts`; `src/agent/writer.ts` stages
6
+ * whole artifact trees and is the wrong tool for a single file.
7
+ *
8
+ * Shared by `jira adf --output`, `pdf --output`, and `pdf attachments --extract`
9
+ * rather than copied into each, for the reason `src/mapping-quality.ts` was
10
+ * extracted: the `wx` flag, the directory refusal, and the unlink-on-rename-failure
11
+ * are one invariant, and a second copy is how the two stop agreeing. The refusal
12
+ * message is user-facing text in two toolsets' documented behavior and must be one
13
+ * string.
14
+ *
15
+ * `content` widened to accept bytes when `pdf attachments --extract` needed to
16
+ * write an embedded file, which is binary and must not go through a utf-8 encode.
17
+ *
18
+ * Note what the `wx` does and does not buy: it guards the *staging* file, so two
19
+ * processes cannot stage over each other. The `rename` still replaces whatever is
20
+ * at the destination. That is right for `--output`, which names one file the user
21
+ * asked to write, and wrong for extracting many attacker-named files — so
22
+ * `src/pdf/attachments.ts` resolves collisions while planning, before calling this.
23
+ */
24
+ export function writeAtomically(destination, content) {
25
+ const resolved = path.resolve(destination);
26
+ if (fs.existsSync(resolved) && fs.statSync(resolved).isDirectory())
27
+ throw new Error(`--output is a directory: ${destination}`);
28
+ const staged = `${resolved}.cairn-${process.pid}.tmp`;
29
+ fs.mkdirSync(path.dirname(resolved), { recursive: true });
30
+ if (typeof content === "string")
31
+ fs.writeFileSync(staged, content, { encoding: "utf-8", flag: "wx" });
32
+ else
33
+ fs.writeFileSync(staged, content, { flag: "wx" });
34
+ try {
35
+ fs.renameSync(staged, resolved);
36
+ }
37
+ catch (error) {
38
+ fs.rmSync(staged, { force: true });
39
+ throw error;
40
+ }
41
+ }
42
+ //# sourceMappingURL=atomic-write.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"atomic-write.js","sourceRoot":"","sources":["../src/atomic-write.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,eAAe,CAAC,WAAmB,EAAE,OAA4B;IAC/E,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC3C,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE;QAChE,MAAM,IAAI,KAAK,CAAC,4BAA4B,WAAW,EAAE,CAAC,CAAC;IAC7D,MAAM,MAAM,GAAG,GAAG,QAAQ,UAAU,OAAO,CAAC,GAAG,MAAM,CAAC;IACtD,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1D,IAAI,OAAO,OAAO,KAAK,QAAQ;QAC7B,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;;QAClE,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,IAAI,CAAC;QACH,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAClC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACnC,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Executable-format magic number.
3
+ *
4
+ * Header parsing only, mirroring `imageKind` in the packager: pulling in a
5
+ * binary-format library to answer "is this an executable" would be a dependency
6
+ * for a review nicety.
7
+ *
8
+ * Shared by `agent audit`, which grades a bundle's files, and by
9
+ * `pdf attachments`, which grades an embedded file — for the reason
10
+ * `src/mapping-quality.ts` was extracted. Importing it across toolsets instead
11
+ * would drag the whole agent audit module, and its import graph, into `pdf`.
12
+ */
13
+ export declare function binaryKind(content: Buffer): "elf" | "pe" | "macho" | null;
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Executable-format magic number.
3
+ *
4
+ * Header parsing only, mirroring `imageKind` in the packager: pulling in a
5
+ * binary-format library to answer "is this an executable" would be a dependency
6
+ * for a review nicety.
7
+ *
8
+ * Shared by `agent audit`, which grades a bundle's files, and by
9
+ * `pdf attachments`, which grades an embedded file — for the reason
10
+ * `src/mapping-quality.ts` was extracted. Importing it across toolsets instead
11
+ * would drag the whole agent audit module, and its import graph, into `pdf`.
12
+ */
13
+ export function binaryKind(content) {
14
+ if (content.length < 4)
15
+ return null;
16
+ if (content.subarray(0, 4).toString("hex") === "7f454c46")
17
+ return "elf";
18
+ if (content[0] === 0x4d && content[1] === 0x5a)
19
+ return "pe";
20
+ const magic = content.subarray(0, 4).toString("hex");
21
+ if (["feedface", "feedfacf", "cefaedfe", "cffaedfe", "cafebabe"].includes(magic))
22
+ return "macho";
23
+ return null;
24
+ }
25
+ //# sourceMappingURL=binary-kind.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binary-kind.js","sourceRoot":"","sources":["../src/binary-kind.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,UAAU,CAAC,OAAe;IACxC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACpC,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,UAAU;QAAE,OAAO,KAAK,CAAC;IACxE,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC5D,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACrD,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC;IACjG,OAAO,IAAI,CAAC;AACd,CAAC"}