signetai 0.85.1 → 0.85.3

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 (3) hide show
  1. package/dist/cli.js +371 -191
  2. package/dist/daemon.js +148 -69
  3. package/package.json +1 -1
package/dist/cli.js CHANGED
@@ -26021,23 +26021,29 @@ function symlinkSkills(sourceDir, targetDir, options = {}) {
26021
26021
  var home = homedir5();
26022
26022
  var SIGNET_BLOCK_START = "<!-- SIGNET:START -->";
26023
26023
  var SIGNET_BLOCK_END = "<!-- SIGNET:END -->";
26024
- function buildSignetBlock() {
26024
+ function buildSignetBlock(workspace = "$SIGNET_WORKSPACE") {
26025
+ const root = normalizeWorkspace(workspace);
26025
26026
  return `${SIGNET_BLOCK_START}
26026
26027
  Signet Agent System
26027
26028
  ===
26028
26029
 
26029
26030
  Your identity and memory are managed by Signet, a portable agent identity
26030
- system. This lets you maintain consistent behavior across different AI
26031
- platforms (Claude Code, OpenCode, Cursor, etc.).
26032
-
26033
- Key files in \`~/.agents/\`:
26034
- - \`agent.yaml\` Configuration
26035
- - \`AGENTS.md\` Instructions (source of truth)
26036
- - \`SOUL.md\` Personality and tone
26037
- - \`IDENTITY.md\` — Agent identity
26038
- - \`USER.md\` User profile
26039
- - \`MEMORY.md\` — Working memory summary
26040
- - \`SIGNET-ARCHITECTURE.md\` — How the memory pipeline works (read if asked)
26031
+ system. It gives you durable identity, working memory, and memory retrieval
26032
+ across different AI platforms (Claude Code, OpenCode, Cursor, etc.).
26033
+
26034
+ You are operating inside a layered memory runtime. The markdown files in
26035
+ your workspace are important prompt surfaces, but they are not the whole
26036
+ system. Treat \`MEMORY.md\` as a rendered working-memory head over deeper
26037
+ temporal and structured state, not as the canonical source of truth.
26038
+
26039
+ Key files in your Signet workspace (\`${root}/\`):
26040
+ - \`${root}/agent.yaml\` — Configuration
26041
+ - \`${root}/AGENTS.md\` — Instructions and operating rules
26042
+ - \`${root}/SOUL.md\` — Personality, values, and temperament
26043
+ - \`${root}/IDENTITY.md\` — Agent identity
26044
+ - \`${root}/USER.md\` — User profile and relationship context
26045
+ - \`${root}/MEMORY.md\` — Auto-generated working memory summary
26046
+ - \`${root}/SIGNET-ARCHITECTURE.md\` — How the memory pipeline works (read if asked)
26041
26047
 
26042
26048
  Dashboard: http://localhost:3850
26043
26049
 
@@ -26052,7 +26058,27 @@ signet recall "user preferences"
26052
26058
  \`\`\`
26053
26059
 
26054
26060
  Memory is automatically loaded at session start. Important context is
26055
- summarized in \`~/.agents/MEMORY.md\`.
26061
+ summarized in \`${root}/MEMORY.md\`.
26062
+
26063
+ Identity Stewardship
26064
+ ---
26065
+
26066
+ Treat the files in your Signet workspace as distinct layers of context:
26067
+
26068
+ - \`AGENTS.md\` — how you operate
26069
+ - \`SOUL.md\` — how you sound, what you value, and your temperament
26070
+ - \`IDENTITY.md\` — who you are
26071
+ - \`USER.md\` — who the user is and how to relate to them
26072
+ - \`MEMORY.md\` — episodic and operational context generated by Signet
26073
+
26074
+ You should actively maintain \`AGENTS.md\`, \`SOUL.md\`, \`IDENTITY.md\`,
26075
+ and \`USER.md\` as durable context. These files are always editable by
26076
+ you. Update them when you learn stable truths that belong there. Prefer
26077
+ additive, intentional refinement over impulsive rewrites. Preserve
26078
+ continuity unless the user explicitly wants a deeper identity rewrite.
26079
+
26080
+ Do not edit \`MEMORY.md\` manually. It is system-managed and regenerated
26081
+ by Signet.
26056
26082
 
26057
26083
  Secrets
26058
26084
  ---
@@ -26061,10 +26087,10 @@ API keys and tokens are stored securely in Signet. Agents never see
26061
26087
  raw values — secrets are injected into subprocesses as environment
26062
26088
  variables with output automatically redacted.
26063
26089
 
26064
- - \`secret_list\` MCP tool — discover available secret names
26065
- - \`secret_exec\` MCP tool — run a command with secrets injected as env vars
26090
+ - \`mcp__signet__secret_list\` — discover available secret names
26091
+ - \`mcp__signet__secret_exec\` — run a command with secrets injected as env vars
26066
26092
 
26067
- Example: to use an API key stored as "OPENAI_API_KEY", call \`secret_exec\`
26093
+ Example: to use an API key stored as "OPENAI_API_KEY", call \`mcp__signet__secret_exec\`
26068
26094
  with \`command: "curl -H \\"Authorization: Bearer $OPENAI_API_KEY\\" ..."\`
26069
26095
  and \`secrets: { "OPENAI_API_KEY": "OPENAI_API_KEY" }\`.
26070
26096
 
@@ -26074,21 +26100,22 @@ Knowledge Graph
26074
26100
  Signet maintains a knowledge graph of entities extracted from your
26075
26101
  conversations. Use these MCP tools to explore it:
26076
26102
 
26077
- - \`knowledge_expand\` — drill into an entity's aspects, attributes, constraints, and dependencies
26078
- - \`knowledge_expand_session\` — find session summaries linked to an entity (temporal drill-down)
26103
+ - \`mcp__signet__knowledge_expand\` — drill into an entity's aspects, attributes, constraints, and dependencies
26104
+ - \`mcp__signet__knowledge_expand_session\` — find session summaries linked to an entity (temporal drill-down)
26079
26105
 
26080
26106
  About This System
26081
26107
  ---
26082
26108
 
26083
26109
  When users ask about your memory or how you work across sessions:
26084
- Signet is a persistent memory and identity layer that runs alongside
26085
- you. It automatically captures facts from conversations after they end,
26086
- scores them by importance and recency, and injects relevant ones into
26087
- your context on every prompt. Sessions are summarized asynchronously
26088
- by a background worker. You also have explicit /remember and /recall
26089
- commands for things auto-capture might miss.
26090
-
26091
- For the full pipeline details, read \`~/.agents/SIGNET-ARCHITECTURE.md\`.
26110
+ Signet is a persistent identity and memory runtime. Your durable
26111
+ substrate lives in \`AGENTS.md\`, \`SOUL.md\`, \`IDENTITY.md\`, and
26112
+ \`USER.md\`. \`MEMORY.md\` is a rendered temporal head over deeper
26113
+ working-memory state, not the canonical store. At prompt time, Signet
26114
+ can surface context through hybrid retrieval across structured memory,
26115
+ thread or temporal summaries, and transcript fallback when needed. Not
26116
+ every important memory appears directly in \`MEMORY.md\`.
26117
+
26118
+ For the full pipeline details, read \`${root}/SIGNET-ARCHITECTURE.md\`.
26092
26119
  ${SIGNET_BLOCK_END}
26093
26120
 
26094
26121
  `;
@@ -26100,6 +26127,13 @@ function stripSignetBlock(content) {
26100
26127
  function escapeRegex(str) {
26101
26128
  return str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
26102
26129
  }
26130
+ function normalizeWorkspace(workspace) {
26131
+ const root = workspace.trim().replace(/[`\n\r]/g, "");
26132
+ if (!root) {
26133
+ return "$SIGNET_WORKSPACE";
26134
+ }
26135
+ return root.endsWith("/") ? root.slice(0, -1) : root;
26136
+ }
26103
26137
  var SKIP_SUBTYPES = new Set([
26104
26138
  "channel_join",
26105
26139
  "channel_leave",
@@ -26242,8 +26276,8 @@ var SKIP_FILES = new Set([
26242
26276
  ]);
26243
26277
 
26244
26278
  class BaseConnector {
26245
- buildSignetBlock() {
26246
- return buildSignetBlock();
26279
+ buildSignetBlock(basePath = "$SIGNET_WORKSPACE") {
26280
+ return buildSignetBlock(basePath);
26247
26281
  }
26248
26282
  stripSignetBlock(content) {
26249
26283
  return stripSignetBlock(content);
@@ -26253,11 +26287,13 @@ class BaseConnector {
26253
26287
  }
26254
26288
  generateHeader(sourcePath, targetName) {
26255
26289
  const name = targetName || this.name;
26256
- return `# Auto-generated from ${sourcePath}
26257
- # Source: ${sourcePath}
26290
+ const safe = (p) => p.replace(/[\n\r]/g, "");
26291
+ const root = dirname2(sourcePath);
26292
+ return `# Auto-generated from ${safe(sourcePath)}
26293
+ # Source: ${safe(sourcePath)}
26258
26294
  # Generated: ${new Date().toISOString()}
26259
26295
  # DO NOT EDIT - changes will be overwritten
26260
- # Edit the source files in ~/.agents/ instead
26296
+ # Edit the source files in ${safe(root)}/ instead
26261
26297
 
26262
26298
  `;
26263
26299
  }
@@ -44900,23 +44936,29 @@ function symlinkSkills2(sourceDir, targetDir, options = {}) {
44900
44936
  var home3 = homedir53();
44901
44937
  var SIGNET_BLOCK_START2 = "<!-- SIGNET:START -->";
44902
44938
  var SIGNET_BLOCK_END2 = "<!-- SIGNET:END -->";
44903
- function buildSignetBlock2() {
44939
+ function buildSignetBlock2(workspace = "$SIGNET_WORKSPACE") {
44940
+ const root = normalizeWorkspace2(workspace);
44904
44941
  return `${SIGNET_BLOCK_START2}
44905
44942
  Signet Agent System
44906
44943
  ===
44907
44944
 
44908
44945
  Your identity and memory are managed by Signet, a portable agent identity
44909
- system. This lets you maintain consistent behavior across different AI
44910
- platforms (Claude Code, OpenCode, Cursor, etc.).
44911
-
44912
- Key files in \`~/.agents/\`:
44913
- - \`agent.yaml\` Configuration
44914
- - \`AGENTS.md\` Instructions (source of truth)
44915
- - \`SOUL.md\` Personality and tone
44916
- - \`IDENTITY.md\` — Agent identity
44917
- - \`USER.md\` User profile
44918
- - \`MEMORY.md\` — Working memory summary
44919
- - \`SIGNET-ARCHITECTURE.md\` — How the memory pipeline works (read if asked)
44946
+ system. It gives you durable identity, working memory, and memory retrieval
44947
+ across different AI platforms (Claude Code, OpenCode, Cursor, etc.).
44948
+
44949
+ You are operating inside a layered memory runtime. The markdown files in
44950
+ your workspace are important prompt surfaces, but they are not the whole
44951
+ system. Treat \`MEMORY.md\` as a rendered working-memory head over deeper
44952
+ temporal and structured state, not as the canonical source of truth.
44953
+
44954
+ Key files in your Signet workspace (\`${root}/\`):
44955
+ - \`${root}/agent.yaml\` — Configuration
44956
+ - \`${root}/AGENTS.md\` — Instructions and operating rules
44957
+ - \`${root}/SOUL.md\` — Personality, values, and temperament
44958
+ - \`${root}/IDENTITY.md\` — Agent identity
44959
+ - \`${root}/USER.md\` — User profile and relationship context
44960
+ - \`${root}/MEMORY.md\` — Auto-generated working memory summary
44961
+ - \`${root}/SIGNET-ARCHITECTURE.md\` — How the memory pipeline works (read if asked)
44920
44962
 
44921
44963
  Dashboard: http://localhost:3850
44922
44964
 
@@ -44931,7 +44973,27 @@ signet recall "user preferences"
44931
44973
  \`\`\`
44932
44974
 
44933
44975
  Memory is automatically loaded at session start. Important context is
44934
- summarized in \`~/.agents/MEMORY.md\`.
44976
+ summarized in \`${root}/MEMORY.md\`.
44977
+
44978
+ Identity Stewardship
44979
+ ---
44980
+
44981
+ Treat the files in your Signet workspace as distinct layers of context:
44982
+
44983
+ - \`AGENTS.md\` — how you operate
44984
+ - \`SOUL.md\` — how you sound, what you value, and your temperament
44985
+ - \`IDENTITY.md\` — who you are
44986
+ - \`USER.md\` — who the user is and how to relate to them
44987
+ - \`MEMORY.md\` — episodic and operational context generated by Signet
44988
+
44989
+ You should actively maintain \`AGENTS.md\`, \`SOUL.md\`, \`IDENTITY.md\`,
44990
+ and \`USER.md\` as durable context. These files are always editable by
44991
+ you. Update them when you learn stable truths that belong there. Prefer
44992
+ additive, intentional refinement over impulsive rewrites. Preserve
44993
+ continuity unless the user explicitly wants a deeper identity rewrite.
44994
+
44995
+ Do not edit \`MEMORY.md\` manually. It is system-managed and regenerated
44996
+ by Signet.
44935
44997
 
44936
44998
  Secrets
44937
44999
  ---
@@ -44940,10 +45002,10 @@ API keys and tokens are stored securely in Signet. Agents never see
44940
45002
  raw values — secrets are injected into subprocesses as environment
44941
45003
  variables with output automatically redacted.
44942
45004
 
44943
- - \`secret_list\` MCP tool — discover available secret names
44944
- - \`secret_exec\` MCP tool — run a command with secrets injected as env vars
45005
+ - \`mcp__signet__secret_list\` — discover available secret names
45006
+ - \`mcp__signet__secret_exec\` — run a command with secrets injected as env vars
44945
45007
 
44946
- Example: to use an API key stored as "OPENAI_API_KEY", call \`secret_exec\`
45008
+ Example: to use an API key stored as "OPENAI_API_KEY", call \`mcp__signet__secret_exec\`
44947
45009
  with \`command: "curl -H \\"Authorization: Bearer $OPENAI_API_KEY\\" ..."\`
44948
45010
  and \`secrets: { "OPENAI_API_KEY": "OPENAI_API_KEY" }\`.
44949
45011
 
@@ -44953,21 +45015,22 @@ Knowledge Graph
44953
45015
  Signet maintains a knowledge graph of entities extracted from your
44954
45016
  conversations. Use these MCP tools to explore it:
44955
45017
 
44956
- - \`knowledge_expand\` — drill into an entity's aspects, attributes, constraints, and dependencies
44957
- - \`knowledge_expand_session\` — find session summaries linked to an entity (temporal drill-down)
45018
+ - \`mcp__signet__knowledge_expand\` — drill into an entity's aspects, attributes, constraints, and dependencies
45019
+ - \`mcp__signet__knowledge_expand_session\` — find session summaries linked to an entity (temporal drill-down)
44958
45020
 
44959
45021
  About This System
44960
45022
  ---
44961
45023
 
44962
45024
  When users ask about your memory or how you work across sessions:
44963
- Signet is a persistent memory and identity layer that runs alongside
44964
- you. It automatically captures facts from conversations after they end,
44965
- scores them by importance and recency, and injects relevant ones into
44966
- your context on every prompt. Sessions are summarized asynchronously
44967
- by a background worker. You also have explicit /remember and /recall
44968
- commands for things auto-capture might miss.
44969
-
44970
- For the full pipeline details, read \`~/.agents/SIGNET-ARCHITECTURE.md\`.
45025
+ Signet is a persistent identity and memory runtime. Your durable
45026
+ substrate lives in \`AGENTS.md\`, \`SOUL.md\`, \`IDENTITY.md\`, and
45027
+ \`USER.md\`. \`MEMORY.md\` is a rendered temporal head over deeper
45028
+ working-memory state, not the canonical store. At prompt time, Signet
45029
+ can surface context through hybrid retrieval across structured memory,
45030
+ thread or temporal summaries, and transcript fallback when needed. Not
45031
+ every important memory appears directly in \`MEMORY.md\`.
45032
+
45033
+ For the full pipeline details, read \`${root}/SIGNET-ARCHITECTURE.md\`.
44971
45034
  ${SIGNET_BLOCK_END2}
44972
45035
 
44973
45036
  `;
@@ -44979,6 +45042,13 @@ function stripSignetBlock2(content) {
44979
45042
  function escapeRegex2(str) {
44980
45043
  return str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
44981
45044
  }
45045
+ function normalizeWorkspace2(workspace) {
45046
+ const root = workspace.trim().replace(/[`\n\r]/g, "");
45047
+ if (!root) {
45048
+ return "$SIGNET_WORKSPACE";
45049
+ }
45050
+ return root.endsWith("/") ? root.slice(0, -1) : root;
45051
+ }
44982
45052
  var SKIP_SUBTYPES3 = new Set([
44983
45053
  "channel_join",
44984
45054
  "channel_leave",
@@ -45121,8 +45191,8 @@ var SKIP_FILES3 = new Set([
45121
45191
  ]);
45122
45192
 
45123
45193
  class BaseConnector2 {
45124
- buildSignetBlock() {
45125
- return buildSignetBlock2();
45194
+ buildSignetBlock(basePath = "$SIGNET_WORKSPACE") {
45195
+ return buildSignetBlock2(basePath);
45126
45196
  }
45127
45197
  stripSignetBlock(content) {
45128
45198
  return stripSignetBlock2(content);
@@ -45132,11 +45202,13 @@ class BaseConnector2 {
45132
45202
  }
45133
45203
  generateHeader(sourcePath, targetName) {
45134
45204
  const name = targetName || this.name;
45135
- return `# Auto-generated from ${sourcePath}
45136
- # Source: ${sourcePath}
45205
+ const safe = (p) => p.replace(/[\n\r]/g, "");
45206
+ const root = dirname22(sourcePath);
45207
+ return `# Auto-generated from ${safe(sourcePath)}
45208
+ # Source: ${safe(sourcePath)}
45137
45209
  # Generated: ${new Date().toISOString()}
45138
45210
  # DO NOT EDIT - changes will be overwritten
45139
- # Edit the source files in ~/.agents/ instead
45211
+ # Edit the source files in ${safe(root)}/ instead
45140
45212
 
45141
45213
  `;
45142
45214
  }
@@ -54573,23 +54645,29 @@ function symlinkSkills3(sourceDir, targetDir, options = {}) {
54573
54645
  var home5 = homedir55();
54574
54646
  var SIGNET_BLOCK_START3 = "<!-- SIGNET:START -->";
54575
54647
  var SIGNET_BLOCK_END3 = "<!-- SIGNET:END -->";
54576
- function buildSignetBlock3() {
54648
+ function buildSignetBlock3(workspace = "$SIGNET_WORKSPACE") {
54649
+ const root = normalizeWorkspace3(workspace);
54577
54650
  return `${SIGNET_BLOCK_START3}
54578
54651
  Signet Agent System
54579
54652
  ===
54580
54653
 
54581
54654
  Your identity and memory are managed by Signet, a portable agent identity
54582
- system. This lets you maintain consistent behavior across different AI
54583
- platforms (Claude Code, OpenCode, Cursor, etc.).
54584
-
54585
- Key files in \`~/.agents/\`:
54586
- - \`agent.yaml\` Configuration
54587
- - \`AGENTS.md\` Instructions (source of truth)
54588
- - \`SOUL.md\` Personality and tone
54589
- - \`IDENTITY.md\` — Agent identity
54590
- - \`USER.md\` User profile
54591
- - \`MEMORY.md\` — Working memory summary
54592
- - \`SIGNET-ARCHITECTURE.md\` — How the memory pipeline works (read if asked)
54655
+ system. It gives you durable identity, working memory, and memory retrieval
54656
+ across different AI platforms (Claude Code, OpenCode, Cursor, etc.).
54657
+
54658
+ You are operating inside a layered memory runtime. The markdown files in
54659
+ your workspace are important prompt surfaces, but they are not the whole
54660
+ system. Treat \`MEMORY.md\` as a rendered working-memory head over deeper
54661
+ temporal and structured state, not as the canonical source of truth.
54662
+
54663
+ Key files in your Signet workspace (\`${root}/\`):
54664
+ - \`${root}/agent.yaml\` — Configuration
54665
+ - \`${root}/AGENTS.md\` — Instructions and operating rules
54666
+ - \`${root}/SOUL.md\` — Personality, values, and temperament
54667
+ - \`${root}/IDENTITY.md\` — Agent identity
54668
+ - \`${root}/USER.md\` — User profile and relationship context
54669
+ - \`${root}/MEMORY.md\` — Auto-generated working memory summary
54670
+ - \`${root}/SIGNET-ARCHITECTURE.md\` — How the memory pipeline works (read if asked)
54593
54671
 
54594
54672
  Dashboard: http://localhost:3850
54595
54673
 
@@ -54604,7 +54682,27 @@ signet recall "user preferences"
54604
54682
  \`\`\`
54605
54683
 
54606
54684
  Memory is automatically loaded at session start. Important context is
54607
- summarized in \`~/.agents/MEMORY.md\`.
54685
+ summarized in \`${root}/MEMORY.md\`.
54686
+
54687
+ Identity Stewardship
54688
+ ---
54689
+
54690
+ Treat the files in your Signet workspace as distinct layers of context:
54691
+
54692
+ - \`AGENTS.md\` — how you operate
54693
+ - \`SOUL.md\` — how you sound, what you value, and your temperament
54694
+ - \`IDENTITY.md\` — who you are
54695
+ - \`USER.md\` — who the user is and how to relate to them
54696
+ - \`MEMORY.md\` — episodic and operational context generated by Signet
54697
+
54698
+ You should actively maintain \`AGENTS.md\`, \`SOUL.md\`, \`IDENTITY.md\`,
54699
+ and \`USER.md\` as durable context. These files are always editable by
54700
+ you. Update them when you learn stable truths that belong there. Prefer
54701
+ additive, intentional refinement over impulsive rewrites. Preserve
54702
+ continuity unless the user explicitly wants a deeper identity rewrite.
54703
+
54704
+ Do not edit \`MEMORY.md\` manually. It is system-managed and regenerated
54705
+ by Signet.
54608
54706
 
54609
54707
  Secrets
54610
54708
  ---
@@ -54613,10 +54711,10 @@ API keys and tokens are stored securely in Signet. Agents never see
54613
54711
  raw values — secrets are injected into subprocesses as environment
54614
54712
  variables with output automatically redacted.
54615
54713
 
54616
- - \`secret_list\` MCP tool — discover available secret names
54617
- - \`secret_exec\` MCP tool — run a command with secrets injected as env vars
54714
+ - \`mcp__signet__secret_list\` — discover available secret names
54715
+ - \`mcp__signet__secret_exec\` — run a command with secrets injected as env vars
54618
54716
 
54619
- Example: to use an API key stored as "OPENAI_API_KEY", call \`secret_exec\`
54717
+ Example: to use an API key stored as "OPENAI_API_KEY", call \`mcp__signet__secret_exec\`
54620
54718
  with \`command: "curl -H \\"Authorization: Bearer $OPENAI_API_KEY\\" ..."\`
54621
54719
  and \`secrets: { "OPENAI_API_KEY": "OPENAI_API_KEY" }\`.
54622
54720
 
@@ -54626,21 +54724,22 @@ Knowledge Graph
54626
54724
  Signet maintains a knowledge graph of entities extracted from your
54627
54725
  conversations. Use these MCP tools to explore it:
54628
54726
 
54629
- - \`knowledge_expand\` — drill into an entity's aspects, attributes, constraints, and dependencies
54630
- - \`knowledge_expand_session\` — find session summaries linked to an entity (temporal drill-down)
54727
+ - \`mcp__signet__knowledge_expand\` — drill into an entity's aspects, attributes, constraints, and dependencies
54728
+ - \`mcp__signet__knowledge_expand_session\` — find session summaries linked to an entity (temporal drill-down)
54631
54729
 
54632
54730
  About This System
54633
54731
  ---
54634
54732
 
54635
54733
  When users ask about your memory or how you work across sessions:
54636
- Signet is a persistent memory and identity layer that runs alongside
54637
- you. It automatically captures facts from conversations after they end,
54638
- scores them by importance and recency, and injects relevant ones into
54639
- your context on every prompt. Sessions are summarized asynchronously
54640
- by a background worker. You also have explicit /remember and /recall
54641
- commands for things auto-capture might miss.
54642
-
54643
- For the full pipeline details, read \`~/.agents/SIGNET-ARCHITECTURE.md\`.
54734
+ Signet is a persistent identity and memory runtime. Your durable
54735
+ substrate lives in \`AGENTS.md\`, \`SOUL.md\`, \`IDENTITY.md\`, and
54736
+ \`USER.md\`. \`MEMORY.md\` is a rendered temporal head over deeper
54737
+ working-memory state, not the canonical store. At prompt time, Signet
54738
+ can surface context through hybrid retrieval across structured memory,
54739
+ thread or temporal summaries, and transcript fallback when needed. Not
54740
+ every important memory appears directly in \`MEMORY.md\`.
54741
+
54742
+ For the full pipeline details, read \`${root}/SIGNET-ARCHITECTURE.md\`.
54644
54743
  ${SIGNET_BLOCK_END3}
54645
54744
 
54646
54745
  `;
@@ -54652,6 +54751,13 @@ function stripSignetBlock3(content) {
54652
54751
  function escapeRegex3(str) {
54653
54752
  return str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
54654
54753
  }
54754
+ function normalizeWorkspace3(workspace) {
54755
+ const root = workspace.trim().replace(/[`\n\r]/g, "");
54756
+ if (!root) {
54757
+ return "$SIGNET_WORKSPACE";
54758
+ }
54759
+ return root.endsWith("/") ? root.slice(0, -1) : root;
54760
+ }
54655
54761
  var SKIP_SUBTYPES5 = new Set([
54656
54762
  "channel_join",
54657
54763
  "channel_leave",
@@ -54794,8 +54900,8 @@ var SKIP_FILES5 = new Set([
54794
54900
  ]);
54795
54901
 
54796
54902
  class BaseConnector3 {
54797
- buildSignetBlock() {
54798
- return buildSignetBlock3();
54903
+ buildSignetBlock(basePath = "$SIGNET_WORKSPACE") {
54904
+ return buildSignetBlock3(basePath);
54799
54905
  }
54800
54906
  stripSignetBlock(content) {
54801
54907
  return stripSignetBlock3(content);
@@ -54805,11 +54911,13 @@ class BaseConnector3 {
54805
54911
  }
54806
54912
  generateHeader(sourcePath, targetName) {
54807
54913
  const name = targetName || this.name;
54808
- return `# Auto-generated from ${sourcePath}
54809
- # Source: ${sourcePath}
54914
+ const safe = (p) => p.replace(/[\n\r]/g, "");
54915
+ const root = dirname23(sourcePath);
54916
+ return `# Auto-generated from ${safe(sourcePath)}
54917
+ # Source: ${safe(sourcePath)}
54810
54918
  # Generated: ${new Date().toISOString()}
54811
54919
  # DO NOT EDIT - changes will be overwritten
54812
- # Edit the source files in ~/.agents/ instead
54920
+ # Edit the source files in ${safe(root)}/ instead
54813
54921
 
54814
54922
  `;
54815
54923
  }
@@ -64096,16 +64204,16 @@ var SKIP_FILES22 = new Set([
64096
64204
  ".env",
64097
64205
  ".env.local"
64098
64206
  ]);
64099
- var EXTENSION_BUNDLE = `var s0="http://localhost:3850",r="oh-my-pi",c="plugin",G0=5000,V0=1e4,o0=5000,t0="SIGNET_SESSION_START_TIMEOUT",e0="SIGNET_FETCH_TIMEOUT",Y0="signet-oh-my-pi-hidden-recall",R0="signet-oh-my-pi-session-context";function lZ(){return{"Content-Type":"application/json","x-signet-runtime-path":c,"x-signet-actor":"oh-my-pi-extension","x-signet-actor-type":"harness"}}function cZ($){return $ instanceof DOMException&&$.name==="TimeoutError"}async function iZ($,W,V={}){let B=await ZZ($,W,V);if(!B.ok)return null;return B.data}async function ZZ($,W,V={}){let{method:B="POST",body:O,timeout:_=G0}=V;try{let Y={method:B,headers:lZ(),signal:AbortSignal.timeout(_)};if(O!==void 0)Y.body=JSON.stringify(O);let H=await fetch(\`\${$}\${W}\`,Y);if(!H.ok)return console.warn(\`[signet-oh-my-pi] \${B} \${W} failed: \${H.status}\`),{ok:!1,reason:"http",status:H.status};try{return{ok:!0,data:await H.json()}}catch{return console.warn(\`[signet-oh-my-pi] \${B} \${W} returned invalid JSON\`),{ok:!1,reason:"invalid-json",status:H.status}}}catch(Y){if(cZ(Y))return console.warn(\`[signet-oh-my-pi] \${B} \${W} timed out after \${_}ms\`),{ok:!1,reason:"timeout"};return console.warn(\`[signet-oh-my-pi] \${B} \${W} error:\`,Y),{ok:!1,reason:"offline"}}}function $Z($){return{post(W,V,B=G0){return iZ($,W,{method:"POST",body:V,timeout:B})},postResult(W,V,B=G0){return ZZ($,W,{method:"POST",body:V,timeout:B})}}}function s($){return typeof $==="object"&&$!==null}function S0($){let W=Reflect.get(globalThis,"process");if(!s(W))return;let V=Reflect.get(W,"env");if(!s(V))return;let B=Reflect.get(V,$);return typeof B==="string"?B:void 0}function k($){if(typeof $!=="string")return;let W=$.trim();return W.length>0?W:void 0}function o($){return k(S0($))}import{homedir as s6}from"node:os";import{join as o6}from"node:path";import{createRequire as aZ}from"node:module";import{join as _8,dirname as O5}from"path";import{fileURLToPath as K5}from"url";import{homedir as P6}from"os";import{join as k6}from"path";import{createRequire as f6}from"node:module";import{existsSync as VZ,readFileSync as v6,statSync as e8}from"node:fs";import{join as b6}from"node:path";import{homedir as u6}from"node:os";var C=($,W)=>()=>(W||$((W={exports:{}}).exports,W),W.exports),_0=aZ(import.meta.url),P=C(($)=>{var W=Symbol.for("yaml.alias"),V=Symbol.for("yaml.document"),B=Symbol.for("yaml.map"),O=Symbol.for("yaml.pair"),_=Symbol.for("yaml.scalar"),Y=Symbol.for("yaml.seq"),H=Symbol.for("yaml.node.type"),U=(K)=>!!K&&typeof K==="object"&&K[H]===W,G=(K)=>!!K&&typeof K==="object"&&K[H]===V,J=(K)=>!!K&&typeof K==="object"&&K[H]===B,Z=(K)=>!!K&&typeof K==="object"&&K[H]===O,X=(K)=>!!K&&typeof K==="object"&&K[H]===_,z=(K)=>!!K&&typeof K==="object"&&K[H]===Y;function Q(K){if(K&&typeof K==="object")switch(K[H]){case B:case Y:return!0}return!1}function R(K){if(K&&typeof K==="object")switch(K[H]){case W:case B:case _:case Y:return!0}return!1}var q=(K)=>(X(K)||Q(K))&&!!K.anchor;$.ALIAS=W,$.DOC=V,$.MAP=B,$.NODE_TYPE=H,$.PAIR=O,$.SCALAR=_,$.SEQ=Y,$.hasAnchor=q,$.isAlias=U,$.isCollection=Q,$.isDocument=G,$.isMap=J,$.isNode=R,$.isPair=Z,$.isScalar=X,$.isSeq=z}),q0=C(($)=>{var W=P(),V=Symbol("break visit"),B=Symbol("skip children"),O=Symbol("remove node");function _(X,z){let Q=G(z);if(W.isDocument(X)){if(Y(null,X.contents,Q,Object.freeze([X]))===O)X.contents=null}else Y(null,X,Q,Object.freeze([]))}_.BREAK=V,_.SKIP=B,_.REMOVE=O;function Y(X,z,Q,R){let q=J(X,z,Q,R);if(W.isNode(q)||W.isPair(q))return Z(X,R,q),Y(X,q,Q,R);if(typeof q!=="symbol"){if(W.isCollection(z)){R=Object.freeze(R.concat(z));for(let K=0;K<z.items.length;++K){let F=Y(K,z.items[K],Q,R);if(typeof F==="number")K=F-1;else if(F===V)return V;else if(F===O)z.items.splice(K,1),K-=1}}else if(W.isPair(z)){R=Object.freeze(R.concat(z));let K=Y("key",z.key,Q,R);if(K===V)return V;else if(K===O)z.key=null;let F=Y("value",z.value,Q,R);if(F===V)return V;else if(F===O)z.value=null}}return q}async function H(X,z){let Q=G(z);if(W.isDocument(X)){if(await U(null,X.contents,Q,Object.freeze([X]))===O)X.contents=null}else await U(null,X,Q,Object.freeze([]))}H.BREAK=V,H.SKIP=B,H.REMOVE=O;async function U(X,z,Q,R){let q=await J(X,z,Q,R);if(W.isNode(q)||W.isPair(q))return Z(X,R,q),U(X,q,Q,R);if(typeof q!=="symbol"){if(W.isCollection(z)){R=Object.freeze(R.concat(z));for(let K=0;K<z.items.length;++K){let F=await U(K,z.items[K],Q,R);if(typeof F==="number")K=F-1;else if(F===V)return V;else if(F===O)z.items.splice(K,1),K-=1}}else if(W.isPair(z)){R=Object.freeze(R.concat(z));let K=await U("key",z.key,Q,R);if(K===V)return V;else if(K===O)z.key=null;let F=await U("value",z.value,Q,R);if(F===V)return V;else if(F===O)z.value=null}}return q}function G(X){if(typeof X==="object"&&(X.Collection||X.Node||X.Value))return Object.assign({Alias:X.Node,Map:X.Node,Scalar:X.Node,Seq:X.Node},X.Value&&{Map:X.Value,Scalar:X.Value,Seq:X.Value},X.Collection&&{Map:X.Collection,Seq:X.Collection},X);return X}function J(X,z,Q,R){if(typeof Q==="function")return Q(X,z,R);if(W.isMap(z))return Q.Map?.(X,z,R);if(W.isSeq(z))return Q.Seq?.(X,z,R);if(W.isPair(z))return Q.Pair?.(X,z,R);if(W.isScalar(z))return Q.Scalar?.(X,z,R);if(W.isAlias(z))return Q.Alias?.(X,z,R);return}function Z(X,z,Q){let R=z[z.length-1];if(W.isCollection(R))R.items[X]=Q;else if(W.isPair(R))if(X==="key")R.key=Q;else R.value=Q;else if(W.isDocument(R))R.contents=Q;else{let q=W.isAlias(R)?"alias":"scalar";throw Error(\`Cannot replace node with \${q} parent\`)}}$.visit=_,$.visitAsync=H}),YZ=C(($)=>{var W=P(),V=q0(),B={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},O=(Y)=>Y.replace(/[!,[\\]{}]/g,(H)=>B[H]);class _{constructor(Y,H){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},_.defaultYaml,Y),this.tags=Object.assign({},_.defaultTags,H)}clone(){let Y=new _(this.yaml,this.tags);return Y.docStart=this.docStart,Y}atDocument(){let Y=new _(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:_.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},_.defaultTags);break}return Y}add(Y,H){if(this.atNextDocument)this.yaml={explicit:_.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},_.defaultTags),this.atNextDocument=!1;let U=Y.trim().split(/[ \\t]+/),G=U.shift();switch(G){case"%TAG":{if(U.length!==2){if(H(0,"%TAG directive should contain exactly two parts"),U.length<2)return!1}let[J,Z]=U;return this.tags[J]=Z,!0}case"%YAML":{if(this.yaml.explicit=!0,U.length!==1)return H(0,"%YAML directive should contain exactly one part"),!1;let[J]=U;if(J==="1.1"||J==="1.2")return this.yaml.version=J,!0;else{let Z=/^\\d+\\.\\d+$/.test(J);return H(6,\`Unsupported YAML version \${J}\`,Z),!1}}default:return H(0,\`Unknown directive \${G}\`,!0),!1}}tagName(Y,H){if(Y==="!")return"!";if(Y[0]!=="!")return H(\`Not a valid tag: \${Y}\`),null;if(Y[1]==="<"){let Z=Y.slice(2,-1);if(Z==="!"||Z==="!!")return H(\`Verbatim tags aren't resolved, so \${Y} is invalid.\`),null;if(Y[Y.length-1]!==">")H("Verbatim tags must end with a >");return Z}let[,U,G]=Y.match(/^(.*!)([^!]*)$/s);if(!G)H(\`The \${Y} tag has no suffix\`);let J=this.tags[U];if(J)try{return J+decodeURIComponent(G)}catch(Z){return H(String(Z)),null}if(U==="!")return Y;return H(\`Could not resolve tag: \${Y}\`),null}tagString(Y){for(let[H,U]of Object.entries(this.tags))if(Y.startsWith(U))return H+O(Y.substring(U.length));return Y[0]==="!"?Y:\`!<\${Y}>\`}toString(Y){let H=this.yaml.explicit?[\`%YAML \${this.yaml.version||"1.2"}\`]:[],U=Object.entries(this.tags),G;if(Y&&U.length>0&&W.isNode(Y.contents)){let J={};V.visit(Y.contents,(Z,X)=>{if(W.isNode(X)&&X.tag)J[X.tag]=!0}),G=Object.keys(J)}else G=[];for(let[J,Z]of U){if(J==="!!"&&Z==="tag:yaml.org,2002:")continue;if(!Y||G.some((X)=>X.startsWith(Z)))H.push(\`%TAG \${J} \${Z}\`)}return H.join(\`
64207
+ var EXTENSION_BUNDLE = `var s0="http://localhost:3850",r="oh-my-pi",c="plugin",G0=5000,V0=1e4,o0=5000,t0="SIGNET_SESSION_START_TIMEOUT",e0="SIGNET_FETCH_TIMEOUT",Y0="signet-oh-my-pi-hidden-recall",R0="signet-oh-my-pi-session-context";function lZ(){return{"Content-Type":"application/json","x-signet-runtime-path":c,"x-signet-actor":"oh-my-pi-extension","x-signet-actor-type":"harness"}}function cZ($){return $ instanceof DOMException&&$.name==="TimeoutError"}async function iZ($,W,V={}){let B=await ZZ($,W,V);if(!B.ok)return null;return B.data}async function ZZ($,W,V={}){let{method:B="POST",body:O,timeout:_=G0}=V;try{let Y={method:B,headers:lZ(),signal:AbortSignal.timeout(_)};if(O!==void 0)Y.body=JSON.stringify(O);let H=await fetch(\`\${$}\${W}\`,Y);if(!H.ok)return console.warn(\`[signet-oh-my-pi] \${B} \${W} failed: \${H.status}\`),{ok:!1,reason:"http",status:H.status};try{return{ok:!0,data:await H.json()}}catch{return console.warn(\`[signet-oh-my-pi] \${B} \${W} returned invalid JSON\`),{ok:!1,reason:"invalid-json",status:H.status}}}catch(Y){if(cZ(Y))return console.warn(\`[signet-oh-my-pi] \${B} \${W} timed out after \${_}ms\`),{ok:!1,reason:"timeout"};return console.warn(\`[signet-oh-my-pi] \${B} \${W} error:\`,Y),{ok:!1,reason:"offline"}}}function $Z($){return{post(W,V,B=G0){return iZ($,W,{method:"POST",body:V,timeout:B})},postResult(W,V,B=G0){return ZZ($,W,{method:"POST",body:V,timeout:B})}}}function s($){return typeof $==="object"&&$!==null}function w0($){let W=Reflect.get(globalThis,"process");if(!s(W))return;let V=Reflect.get(W,"env");if(!s(V))return;let B=Reflect.get(V,$);return typeof B==="string"?B:void 0}function k($){if(typeof $!=="string")return;let W=$.trim();return W.length>0?W:void 0}function o($){return k(w0($))}import{homedir as s6}from"node:os";import{join as o6}from"node:path";import{createRequire as aZ}from"node:module";import{join as _8,dirname as O5}from"path";import{fileURLToPath as K5}from"url";import{homedir as P6}from"os";import{join as k6}from"path";import{createRequire as f6}from"node:module";import{existsSync as VZ,readFileSync as v6,statSync as e8}from"node:fs";import{join as b6}from"node:path";import{homedir as u6}from"node:os";var C=($,W)=>()=>(W||$((W={exports:{}}).exports,W),W.exports),_0=aZ(import.meta.url),P=C(($)=>{var W=Symbol.for("yaml.alias"),V=Symbol.for("yaml.document"),B=Symbol.for("yaml.map"),O=Symbol.for("yaml.pair"),_=Symbol.for("yaml.scalar"),Y=Symbol.for("yaml.seq"),H=Symbol.for("yaml.node.type"),U=(K)=>!!K&&typeof K==="object"&&K[H]===W,G=(K)=>!!K&&typeof K==="object"&&K[H]===V,J=(K)=>!!K&&typeof K==="object"&&K[H]===B,Z=(K)=>!!K&&typeof K==="object"&&K[H]===O,X=(K)=>!!K&&typeof K==="object"&&K[H]===_,z=(K)=>!!K&&typeof K==="object"&&K[H]===Y;function Q(K){if(K&&typeof K==="object")switch(K[H]){case B:case Y:return!0}return!1}function R(K){if(K&&typeof K==="object")switch(K[H]){case W:case B:case _:case Y:return!0}return!1}var q=(K)=>(X(K)||Q(K))&&!!K.anchor;$.ALIAS=W,$.DOC=V,$.MAP=B,$.NODE_TYPE=H,$.PAIR=O,$.SCALAR=_,$.SEQ=Y,$.hasAnchor=q,$.isAlias=U,$.isCollection=Q,$.isDocument=G,$.isMap=J,$.isNode=R,$.isPair=Z,$.isScalar=X,$.isSeq=z}),q0=C(($)=>{var W=P(),V=Symbol("break visit"),B=Symbol("skip children"),O=Symbol("remove node");function _(X,z){let Q=G(z);if(W.isDocument(X)){if(Y(null,X.contents,Q,Object.freeze([X]))===O)X.contents=null}else Y(null,X,Q,Object.freeze([]))}_.BREAK=V,_.SKIP=B,_.REMOVE=O;function Y(X,z,Q,R){let q=J(X,z,Q,R);if(W.isNode(q)||W.isPair(q))return Z(X,R,q),Y(X,q,Q,R);if(typeof q!=="symbol"){if(W.isCollection(z)){R=Object.freeze(R.concat(z));for(let K=0;K<z.items.length;++K){let F=Y(K,z.items[K],Q,R);if(typeof F==="number")K=F-1;else if(F===V)return V;else if(F===O)z.items.splice(K,1),K-=1}}else if(W.isPair(z)){R=Object.freeze(R.concat(z));let K=Y("key",z.key,Q,R);if(K===V)return V;else if(K===O)z.key=null;let F=Y("value",z.value,Q,R);if(F===V)return V;else if(F===O)z.value=null}}return q}async function H(X,z){let Q=G(z);if(W.isDocument(X)){if(await U(null,X.contents,Q,Object.freeze([X]))===O)X.contents=null}else await U(null,X,Q,Object.freeze([]))}H.BREAK=V,H.SKIP=B,H.REMOVE=O;async function U(X,z,Q,R){let q=await J(X,z,Q,R);if(W.isNode(q)||W.isPair(q))return Z(X,R,q),U(X,q,Q,R);if(typeof q!=="symbol"){if(W.isCollection(z)){R=Object.freeze(R.concat(z));for(let K=0;K<z.items.length;++K){let F=await U(K,z.items[K],Q,R);if(typeof F==="number")K=F-1;else if(F===V)return V;else if(F===O)z.items.splice(K,1),K-=1}}else if(W.isPair(z)){R=Object.freeze(R.concat(z));let K=await U("key",z.key,Q,R);if(K===V)return V;else if(K===O)z.key=null;let F=await U("value",z.value,Q,R);if(F===V)return V;else if(F===O)z.value=null}}return q}function G(X){if(typeof X==="object"&&(X.Collection||X.Node||X.Value))return Object.assign({Alias:X.Node,Map:X.Node,Scalar:X.Node,Seq:X.Node},X.Value&&{Map:X.Value,Scalar:X.Value,Seq:X.Value},X.Collection&&{Map:X.Collection,Seq:X.Collection},X);return X}function J(X,z,Q,R){if(typeof Q==="function")return Q(X,z,R);if(W.isMap(z))return Q.Map?.(X,z,R);if(W.isSeq(z))return Q.Seq?.(X,z,R);if(W.isPair(z))return Q.Pair?.(X,z,R);if(W.isScalar(z))return Q.Scalar?.(X,z,R);if(W.isAlias(z))return Q.Alias?.(X,z,R);return}function Z(X,z,Q){let R=z[z.length-1];if(W.isCollection(R))R.items[X]=Q;else if(W.isPair(R))if(X==="key")R.key=Q;else R.value=Q;else if(W.isDocument(R))R.contents=Q;else{let q=W.isAlias(R)?"alias":"scalar";throw Error(\`Cannot replace node with \${q} parent\`)}}$.visit=_,$.visitAsync=H}),YZ=C(($)=>{var W=P(),V=q0(),B={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},O=(Y)=>Y.replace(/[!,[\\]{}]/g,(H)=>B[H]);class _{constructor(Y,H){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},_.defaultYaml,Y),this.tags=Object.assign({},_.defaultTags,H)}clone(){let Y=new _(this.yaml,this.tags);return Y.docStart=this.docStart,Y}atDocument(){let Y=new _(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:_.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},_.defaultTags);break}return Y}add(Y,H){if(this.atNextDocument)this.yaml={explicit:_.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},_.defaultTags),this.atNextDocument=!1;let U=Y.trim().split(/[ \\t]+/),G=U.shift();switch(G){case"%TAG":{if(U.length!==2){if(H(0,"%TAG directive should contain exactly two parts"),U.length<2)return!1}let[J,Z]=U;return this.tags[J]=Z,!0}case"%YAML":{if(this.yaml.explicit=!0,U.length!==1)return H(0,"%YAML directive should contain exactly one part"),!1;let[J]=U;if(J==="1.1"||J==="1.2")return this.yaml.version=J,!0;else{let Z=/^\\d+\\.\\d+$/.test(J);return H(6,\`Unsupported YAML version \${J}\`,Z),!1}}default:return H(0,\`Unknown directive \${G}\`,!0),!1}}tagName(Y,H){if(Y==="!")return"!";if(Y[0]!=="!")return H(\`Not a valid tag: \${Y}\`),null;if(Y[1]==="<"){let Z=Y.slice(2,-1);if(Z==="!"||Z==="!!")return H(\`Verbatim tags aren't resolved, so \${Y} is invalid.\`),null;if(Y[Y.length-1]!==">")H("Verbatim tags must end with a >");return Z}let[,U,G]=Y.match(/^(.*!)([^!]*)$/s);if(!G)H(\`The \${Y} tag has no suffix\`);let J=this.tags[U];if(J)try{return J+decodeURIComponent(G)}catch(Z){return H(String(Z)),null}if(U==="!")return Y;return H(\`Could not resolve tag: \${Y}\`),null}tagString(Y){for(let[H,U]of Object.entries(this.tags))if(Y.startsWith(U))return H+O(Y.substring(U.length));return Y[0]==="!"?Y:\`!<\${Y}>\`}toString(Y){let H=this.yaml.explicit?[\`%YAML \${this.yaml.version||"1.2"}\`]:[],U=Object.entries(this.tags),G;if(Y&&U.length>0&&W.isNode(Y.contents)){let J={};V.visit(Y.contents,(Z,X)=>{if(W.isNode(X)&&X.tag)J[X.tag]=!0}),G=Object.keys(J)}else G=[];for(let[J,Z]of U){if(J==="!!"&&Z==="tag:yaml.org,2002:")continue;if(!Y||G.some((X)=>X.startsWith(Z)))H.push(\`%TAG \${J} \${Z}\`)}return H.join(\`
64100
64208
  \`)}}_.defaultYaml={explicit:!1,version:"1.2"},_.defaultTags={"!!":"tag:yaml.org,2002:"},$.Directives=_}),y0=C(($)=>{var W=P(),V=q0();function B(H){if(/[\\x00-\\x19\\s,[\\]{}]/.test(H)){let G=\`Anchor must not contain whitespace or control characters: \${JSON.stringify(H)}\`;throw Error(G)}return!0}function O(H){let U=new Set;return V.visit(H,{Value(G,J){if(J.anchor)U.add(J.anchor)}}),U}function _(H,U){for(let G=1;;++G){let J=\`\${H}\${G}\`;if(!U.has(J))return J}}function Y(H,U){let G=[],J=new Map,Z=null;return{onAnchor:(X)=>{G.push(X),Z??(Z=O(H));let z=_(U,Z);return Z.add(z),z},setAnchors:()=>{for(let X of G){let z=J.get(X);if(typeof z==="object"&&z.anchor&&(W.isScalar(z.node)||W.isCollection(z.node)))z.node.anchor=z.anchor;else{let Q=Error("Failed to resolve repeated object (this should not happen)");throw Q.source=X,Q}}},sourceObjects:J}}$.anchorIsValid=B,$.anchorNames=O,$.createNodeAnchors=Y,$.findNewAnchor=_}),RZ=C(($)=>{function W(V,B,O,_){if(_&&typeof _==="object")if(Array.isArray(_))for(let Y=0,H=_.length;Y<H;++Y){let U=_[Y],G=W(V,_,String(Y),U);if(G===void 0)delete _[Y];else if(G!==U)_[Y]=G}else if(_ instanceof Map)for(let Y of Array.from(_.keys())){let H=_.get(Y),U=W(V,_,Y,H);if(U===void 0)_.delete(Y);else if(U!==H)_.set(Y,U)}else if(_ instanceof Set)for(let Y of Array.from(_)){let H=W(V,_,Y,Y);if(H===void 0)_.delete(Y);else if(H!==Y)_.delete(Y),_.add(H)}else for(let[Y,H]of Object.entries(_)){let U=W(V,_,Y,H);if(U===void 0)delete _[Y];else if(U!==H)_[Y]=U}return V.call(B,O,_)}$.applyReviver=W}),t=C(($)=>{var W=P();function V(B,O,_){if(Array.isArray(B))return B.map((Y,H)=>V(Y,String(H),_));if(B&&typeof B.toJSON==="function"){if(!_||!W.hasAnchor(B))return B.toJSON(O,_);let Y={aliasCount:0,count:1,res:void 0};_.anchors.set(B,Y),_.onCreate=(U)=>{Y.res=U,delete _.onCreate};let H=B.toJSON(O,_);if(_.onCreate)_.onCreate(H);return H}if(typeof B==="bigint"&&!_?.keep)return Number(B);return B}$.toJS=V}),f0=C(($)=>{var W=RZ(),V=P(),B=t();class O{constructor(_){Object.defineProperty(this,V.NODE_TYPE,{value:_})}clone(){let _=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(this.range)_.range=this.range.slice();return _}toJS(_,{mapAsMap:Y,maxAliasCount:H,onAnchor:U,reviver:G}={}){if(!V.isDocument(_))throw TypeError("A document argument is required");let J={anchors:new Map,doc:_,keep:!0,mapAsMap:Y===!0,mapKeyWarned:!1,maxAliasCount:typeof H==="number"?H:100},Z=B.toJS(this,"",J);if(typeof U==="function")for(let{count:X,res:z}of J.anchors.values())U(z,X);return typeof G==="function"?W.applyReviver(G,{"":Z},"",Z):Z}}$.NodeBase=O}),O0=C(($)=>{var W=y0(),V=q0(),B=P(),O=f0(),_=t();class Y extends O.NodeBase{constructor(U){super(B.ALIAS);this.source=U,Object.defineProperty(this,"tag",{set(){throw Error("Alias nodes cannot have tags")}})}resolve(U,G){let J;if(G?.aliasResolveCache)J=G.aliasResolveCache;else if(J=[],V.visit(U,{Node:(X,z)=>{if(B.isAlias(z)||B.hasAnchor(z))J.push(z)}}),G)G.aliasResolveCache=J;let Z=void 0;for(let X of J){if(X===this)break;if(X.anchor===this.source)Z=X}return Z}toJSON(U,G){if(!G)return{source:this.source};let{anchors:J,doc:Z,maxAliasCount:X}=G,z=this.resolve(Z,G);if(!z){let R=\`Unresolved alias (the anchor must be set before the alias): \${this.source}\`;throw ReferenceError(R)}let Q=J.get(z);if(!Q)_.toJS(z,null,G),Q=J.get(z);if(Q?.res===void 0)throw ReferenceError("This should not happen: Alias anchor was not resolved?");if(X>=0){if(Q.count+=1,Q.aliasCount===0)Q.aliasCount=H(Z,z,J);if(Q.count*Q.aliasCount>X)throw ReferenceError("Excessive alias count indicates a resource exhaustion attack")}return Q.res}toString(U,G,J){let Z=\`*\${this.source}\`;if(U){if(W.anchorIsValid(this.source),U.options.verifyAliasOrder&&!U.anchors.has(this.source)){let X=\`Unresolved alias (the anchor must be set before the alias): \${this.source}\`;throw Error(X)}if(U.implicitKey)return\`\${Z} \`}return Z}}function H(U,G,J){if(B.isAlias(G)){let Z=G.resolve(U),X=J&&Z&&J.get(Z);return X?X.count*X.aliasCount:0}else if(B.isCollection(G)){let Z=0;for(let X of G.items){let z=H(U,X,J);if(z>Z)Z=z}return Z}else if(B.isPair(G)){let Z=H(U,G.key,J),X=H(U,G.value,J);return Math.max(Z,X)}return 1}$.Alias=Y}),x=C(($)=>{var W=P(),V=f0(),B=t(),O=(Y)=>!Y||typeof Y!=="function"&&typeof Y!=="object";class _ extends V.NodeBase{constructor(Y){super(W.SCALAR);this.value=Y}toJSON(Y,H){return H?.keep?this.value:B.toJS(this.value,Y,H)}toString(){return String(this.value)}}_.BLOCK_FOLDED="BLOCK_FOLDED",_.BLOCK_LITERAL="BLOCK_LITERAL",_.PLAIN="PLAIN",_.QUOTE_DOUBLE="QUOTE_DOUBLE",_.QUOTE_SINGLE="QUOTE_SINGLE",$.Scalar=_,$.isScalarValue=O}),K0=C(($)=>{var W=O0(),V=P(),B=x(),O="tag:yaml.org,2002:";function _(H,U,G){if(U){let J=G.filter((X)=>X.tag===U),Z=J.find((X)=>!X.format)??J[0];if(!Z)throw Error(\`Tag \${U} not found\`);return Z}return G.find((J)=>J.identify?.(H)&&!J.format)}function Y(H,U,G){if(V.isDocument(H))H=H.contents;if(V.isNode(H))return H;if(V.isPair(H)){let F=G.schema[V.MAP].createNode?.(G.schema,null,G);return F.items.push(H),F}if(H instanceof String||H instanceof Number||H instanceof Boolean||typeof BigInt<"u"&&H instanceof BigInt)H=H.valueOf();let{aliasDuplicateObjects:J,onAnchor:Z,onTagObj:X,schema:z,sourceObjects:Q}=G,R=void 0;if(J&&H&&typeof H==="object")if(R=Q.get(H),R)return R.anchor??(R.anchor=Z(H)),new W.Alias(R.anchor);else R={anchor:null,node:null},Q.set(H,R);if(U?.startsWith("!!"))U=O+U.slice(2);let q=_(H,U,z.tags);if(!q){if(H&&typeof H.toJSON==="function")H=H.toJSON();if(!H||typeof H!=="object"){let F=new B.Scalar(H);if(R)R.node=F;return F}q=H instanceof Map?z[V.MAP]:(Symbol.iterator in Object(H))?z[V.SEQ]:z[V.MAP]}if(X)X(q),delete G.onTagObj;let K=q?.createNode?q.createNode(G.schema,H,G):typeof q?.nodeClass?.from==="function"?q.nodeClass.from(G.schema,H,G):new B.Scalar(H);if(U)K.tag=U;else if(!q.default)K.tag=q.tag;if(R)R.node=K;return K}$.createNode=Y}),g0=C(($)=>{var W=K0(),V=P(),B=f0();function O(H,U,G){let J=G;for(let Z=U.length-1;Z>=0;--Z){let X=U[Z];if(typeof X==="number"&&Number.isInteger(X)&&X>=0){let z=[];z[X]=J,J=z}else J=new Map([[X,J]])}return W.createNode(J,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error("This should not happen, please report a bug.")},schema:H,sourceObjects:new Map})}var _=(H)=>H==null||typeof H==="object"&&!!H[Symbol.iterator]().next().done;class Y extends B.NodeBase{constructor(H,U){super(H);Object.defineProperty(this,"schema",{value:U,configurable:!0,enumerable:!1,writable:!0})}clone(H){let U=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(H)U.schema=H;if(U.items=U.items.map((G)=>V.isNode(G)||V.isPair(G)?G.clone(H):G),this.range)U.range=this.range.slice();return U}addIn(H,U){if(_(H))this.add(U);else{let[G,...J]=H,Z=this.get(G,!0);if(V.isCollection(Z))Z.addIn(J,U);else if(Z===void 0&&this.schema)this.set(G,O(this.schema,J,U));else throw Error(\`Expected YAML collection at \${G}. Remaining path: \${J}\`)}}deleteIn(H){let[U,...G]=H;if(G.length===0)return this.delete(U);let J=this.get(U,!0);if(V.isCollection(J))return J.deleteIn(G);else throw Error(\`Expected YAML collection at \${U}. Remaining path: \${G}\`)}getIn(H,U){let[G,...J]=H,Z=this.get(G,!0);if(J.length===0)return!U&&V.isScalar(Z)?Z.value:Z;else return V.isCollection(Z)?Z.getIn(J,U):void 0}hasAllNullValues(H){return this.items.every((U)=>{if(!V.isPair(U))return!1;let G=U.value;return G==null||H&&V.isScalar(G)&&G.value==null&&!G.commentBefore&&!G.comment&&!G.tag})}hasIn(H){let[U,...G]=H;if(G.length===0)return this.has(U);let J=this.get(U,!0);return V.isCollection(J)?J.hasIn(G):!1}setIn(H,U){let[G,...J]=H;if(J.length===0)this.set(G,U);else{let Z=this.get(G,!0);if(V.isCollection(Z))Z.setIn(J,U);else if(Z===void 0&&this.schema)this.set(G,O(this.schema,J,U));else throw Error(\`Expected YAML collection at \${G}. Remaining path: \${J}\`)}}}$.Collection=Y,$.collectionFromPath=O,$.isEmptyPath=_}),F0=C(($)=>{var W=(O)=>O.replace(/^(?!$)(?: $)?/gm,"#");function V(O,_){if(/^\\n+$/.test(O))return O.substring(1);return _?O.replace(/^(?! *$)/gm,_):O}var B=(O,_,Y)=>O.endsWith(\`
64101
64209
  \`)?V(Y,_):Y.includes(\`
64102
64210
  \`)?\`
64103
64211
  \`+V(Y,_):(O.endsWith(" ")?"":" ")+Y;$.indentComment=V,$.lineComment=B,$.stringifyComment=W}),nZ=C(($)=>{var W="flow",V="block",B="quoted";function O(Y,H,U="flow",{indentAtStart:G,lineWidth:J=80,minContentWidth:Z=20,onFold:X,onOverflow:z}={}){if(!J||J<0)return Y;if(J<Z)Z=0;let Q=Math.max(1+Z,1+J-H.length);if(Y.length<=Q)return Y;let R=[],q={},K=J-H.length;if(typeof G==="number")if(G>J-Math.max(2,Z))R.push(0);else K=J-G;let F=void 0,j=void 0,M=!1,L=-1,A=-1,I=-1;if(U===V){if(L=_(Y,L,H.length),L!==-1)K=L+Q}for(let N;N=Y[L+=1];){if(U===B&&N==="\\\\"){switch(A=L,Y[L+1]){case"x":L+=3;break;case"u":L+=5;break;case"U":L+=9;break;default:L+=1}I=L}if(N===\`
64104
64212
  \`){if(U===V)L=_(Y,L,H.length);K=L+H.length+Q,F=void 0}else{if(N===" "&&j&&j!==" "&&j!==\`
64105
64213
  \`&&j!=="\\t"){let D=Y[L+1];if(D&&D!==" "&&D!==\`
64106
- \`&&D!=="\\t")F=L}if(L>=K)if(F)R.push(F),K=F+Q,F=void 0;else if(U===B){while(j===" "||j==="\\t")j=N,N=Y[L+=1],M=!0;let D=L>I+1?L-2:A-1;if(q[D])return Y;R.push(D),q[D]=!0,K=D+Q,F=void 0}else M=!0}j=N}if(M&&z)z();if(R.length===0)return Y;if(X)X();let T=Y.slice(0,R[0]);for(let N=0;N<R.length;++N){let D=R[N],w=R[N+1]||Y.length;if(D===0)T=\`
64107
- \${H}\${Y.slice(0,w)}\`;else{if(U===B&&q[D])T+=\`\${Y[D]}\\\\\`;T+=\`
64108
- \${H}\${Y.slice(D+1,w)}\`}}return T}function _(Y,H,U){let G=H,J=H+1,Z=Y[J];while(Z===" "||Z==="\\t")if(H<J+U)Z=Y[++H];else{do Z=Y[++H];while(Z&&Z!==\`
64214
+ \`&&D!=="\\t")F=L}if(L>=K)if(F)R.push(F),K=F+Q,F=void 0;else if(U===B){while(j===" "||j==="\\t")j=N,N=Y[L+=1],M=!0;let D=L>I+1?L-2:A-1;if(q[D])return Y;R.push(D),q[D]=!0,K=D+Q,F=void 0}else M=!0}j=N}if(M&&z)z();if(R.length===0)return Y;if(X)X();let T=Y.slice(0,R[0]);for(let N=0;N<R.length;++N){let D=R[N],S=R[N+1]||Y.length;if(D===0)T=\`
64215
+ \${H}\${Y.slice(0,S)}\`;else{if(U===B&&q[D])T+=\`\${Y[D]}\\\\\`;T+=\`
64216
+ \${H}\${Y.slice(D+1,S)}\`}}return T}function _(Y,H,U){let G=H,J=H+1,Z=Y[J];while(Z===" "||Z==="\\t")if(H<J+U)Z=Y[++H];else{do Z=Y[++H];while(Z&&Z!==\`
64109
64217
  \`);G=H,J=H+1,Z=Y[J]}return G}$.FOLD_BLOCK=V,$.FOLD_FLOW=W,$.FOLD_QUOTED=B,$.foldFlowLines=O}),j0=C(($)=>{var W=x(),V=nZ(),B=(z,Q)=>({indentAtStart:Q?z.indent.length:z.indentAtStart,lineWidth:z.options.lineWidth,minContentWidth:z.options.minContentWidth}),O=(z)=>/^(%|---|\\.\\.\\.)/m.test(z);function _(z,Q,R){if(!Q||Q<0)return!1;let q=Q-R,K=z.length;if(K<=q)return!1;for(let F=0,j=0;F<K;++F)if(z[F]===\`
64110
64218
  \`){if(F-j>q)return!0;if(j=F+1,K-j<=q)return!1}return!0}function Y(z,Q){let R=JSON.stringify(z);if(Q.options.doubleQuotedAsJSON)return R;let{implicitKey:q}=Q,K=Q.options.doubleQuotedMinMultiLineLength,F=Q.indent||(O(z)?" ":""),j="",M=0;for(let L=0,A=R[L];A;A=R[++L]){if(A===" "&&R[L+1]==="\\\\"&&R[L+2]==="n")j+=R.slice(M,L)+"\\\\ ",L+=1,M=L,A="\\\\";if(A==="\\\\")switch(R[L+1]){case"u":{j+=R.slice(M,L);let I=R.substr(L+2,4);switch(I){case"0000":j+="\\\\0";break;case"0007":j+="\\\\a";break;case"000b":j+="\\\\v";break;case"001b":j+="\\\\e";break;case"0085":j+="\\\\N";break;case"00a0":j+="\\\\_";break;case"2028":j+="\\\\L";break;case"2029":j+="\\\\P";break;default:if(I.substr(0,2)==="00")j+="\\\\x"+I.substr(2);else j+=R.substr(L,6)}L+=5,M=L+1}break;case"n":if(q||R[L+2]==='"'||R.length<K)L+=1;else{j+=R.slice(M,L)+\`
64111
64219
 
@@ -64118,53 +64226,53 @@ var EXTENSION_BUNDLE = `var s0="http://localhost:3850",r="oh-my-pi",c="plugin",G
64118
64226
  |$)\`,"g")}catch{G=/\\n+(?!\\n|$)/g}function J({comment:z,type:Q,value:R},q,K,F){let{blockQuote:j,commentString:M,lineWidth:L}=q.options;if(!j||/\\n[\\t ]+$/.test(R))return U(R,q);let A=q.indent||(q.forceBlockIndent||O(R)?" ":""),I=j==="literal"?!0:j==="folded"||Q===W.Scalar.BLOCK_FOLDED?!1:Q===W.Scalar.BLOCK_LITERAL?!0:!_(R,L,A.length);if(!R)return I?\`|
64119
64227
  \`:\`>
64120
64228
  \`;let T,N;for(N=R.length;N>0;--N){let E=R[N-1];if(E!==\`
64121
- \`&&E!=="\\t"&&E!==" ")break}let D=R.substring(N),w=D.indexOf(\`
64122
- \`);if(w===-1)T="-";else if(R===D||w!==D.length-1){if(T="+",F)F()}else T="";if(D){if(R=R.slice(0,-D.length),D[D.length-1]===\`
64123
- \`)D=D.slice(0,-1);D=D.replace(G,\`$&\${A}\`)}let S=!1,y,v=-1;for(y=0;y<R.length;++y){let E=R[y];if(E===" ")S=!0;else if(E===\`
64124
- \`)v=y;else break}let g=R.substring(0,v<y?v+1:y);if(g)R=R.substring(g.length),g=g.replace(/\\n+/g,\`$&\${A}\`);let b=(S?A?"2":"1":"")+T;if(z){if(b+=" "+M(z.replace(/ ?[\\r\\n]+/g," ")),K)K()}if(!I){let E=R.replace(/\\n+/g,\`
64229
+ \`&&E!=="\\t"&&E!==" ")break}let D=R.substring(N),S=D.indexOf(\`
64230
+ \`);if(S===-1)T="-";else if(R===D||S!==D.length-1){if(T="+",F)F()}else T="";if(D){if(R=R.slice(0,-D.length),D[D.length-1]===\`
64231
+ \`)D=D.slice(0,-1);D=D.replace(G,\`$&\${A}\`)}let w=!1,y,v=-1;for(y=0;y<R.length;++y){let E=R[y];if(E===" ")w=!0;else if(E===\`
64232
+ \`)v=y;else break}let g=R.substring(0,v<y?v+1:y);if(g)R=R.substring(g.length),g=g.replace(/\\n+/g,\`$&\${A}\`);let b=(w?A?"2":"1":"")+T;if(z){if(b+=" "+M(z.replace(/ ?[\\r\\n]+/g," ")),K)K()}if(!I){let E=R.replace(/\\n+/g,\`
64125
64233
  $&\`).replace(/(?:^|\\n)([\\t ].*)(?:([\\n\\t ]*)\\n(?![\\n\\t ]))?/g,"$1$2").replace(/\\n+/g,\`$&\${A}\`),h=!1,f=B(q,!0);if(j!=="folded"&&Q!==W.Scalar.BLOCK_FOLDED)f.onOverflow=()=>{h=!0};let u=V.foldFlowLines(\`\${g}\${E}\${D}\`,A,V.FOLD_BLOCK,f);if(!h)return\`>\${b}
64126
64234
  \${A}\${u}\`}return R=R.replace(/\\n+/g,\`$&\${A}\`),\`|\${b}
64127
64235
  \${A}\${g}\${R}\${D}\`}function Z(z,Q,R,q){let{type:K,value:F}=z,{actualString:j,implicitKey:M,indent:L,indentStep:A,inFlow:I}=Q;if(M&&F.includes(\`
64128
64236
  \`)||I&&/[[\\]{},]/.test(F))return U(F,Q);if(/^[\\n\\t ,[\\]{}#&*!|>'"%@\`]|^[?-]$|^[?-][ \\t]|[\\n:][ \\t]|[ \\t]\\n|[\\n\\t ]#|[\\n\\t :]$/.test(F))return M||I||!F.includes(\`
64129
64237
  \`)?U(F,Q):J(z,Q,R,q);if(!M&&!I&&K!==W.Scalar.PLAIN&&F.includes(\`
64130
64238
  \`))return J(z,Q,R,q);if(O(F)){if(L==="")return Q.forceBlockIndent=!0,J(z,Q,R,q);else if(M&&L===A)return U(F,Q)}let T=F.replace(/\\n+/g,\`$&
64131
- \${L}\`);if(j){let N=(S)=>S.default&&S.tag!=="tag:yaml.org,2002:str"&&S.test?.test(T),{compat:D,tags:w}=Q.doc.schema;if(w.some(N)||D?.some(N))return U(F,Q)}return M?T:V.foldFlowLines(T,L,V.FOLD_FLOW,B(Q,!1))}function X(z,Q,R,q){let{implicitKey:K,inFlow:F}=Q,j=typeof z.value==="string"?z:Object.assign({},z,{value:String(z.value)}),{type:M}=z;if(M!==W.Scalar.QUOTE_DOUBLE){if(/[\\x00-\\x08\\x0b-\\x1f\\x7f-\\x9f\\u{D800}-\\u{DFFF}]/u.test(j.value))M=W.Scalar.QUOTE_DOUBLE}let L=(I)=>{switch(I){case W.Scalar.BLOCK_FOLDED:case W.Scalar.BLOCK_LITERAL:return K||F?U(j.value,Q):J(j,Q,R,q);case W.Scalar.QUOTE_DOUBLE:return Y(j.value,Q);case W.Scalar.QUOTE_SINGLE:return H(j.value,Q);case W.Scalar.PLAIN:return Z(j,Q,R,q);default:return null}},A=L(M);if(A===null){let{defaultKeyType:I,defaultStringType:T}=Q.options,N=K&&I||T;if(A=L(N),A===null)throw Error(\`Unsupported default string type \${N}\`)}return A}$.stringifyString=X}),L0=C(($)=>{var W=y0(),V=P(),B=F0(),O=j0();function _(G,J){let Z=Object.assign({blockQuote:!0,commentString:B.stringifyComment,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},G.schema.toStringOptions,J),X;switch(Z.collectionStyle){case"block":X=!1;break;case"flow":X=!0;break;default:X=null}return{anchors:new Set,doc:G,flowCollectionPadding:Z.flowCollectionPadding?" ":"",indent:"",indentStep:typeof Z.indent==="number"?" ".repeat(Z.indent):" ",inFlow:X,options:Z}}function Y(G,J){if(J.tag){let z=G.filter((Q)=>Q.tag===J.tag);if(z.length>0)return z.find((Q)=>Q.format===J.format)??z[0]}let Z=void 0,X;if(V.isScalar(J)){X=J.value;let z=G.filter((Q)=>Q.identify?.(X));if(z.length>1){let Q=z.filter((R)=>R.test);if(Q.length>0)z=Q}Z=z.find((Q)=>Q.format===J.format)??z.find((Q)=>!Q.format)}else X=J,Z=G.find((z)=>z.nodeClass&&X instanceof z.nodeClass);if(!Z){let z=X?.constructor?.name??(X===null?"null":typeof X);throw Error(\`Tag not resolved for \${z} value\`)}return Z}function H(G,J,{anchors:Z,doc:X}){if(!X.directives)return"";let z=[],Q=(V.isScalar(G)||V.isCollection(G))&&G.anchor;if(Q&&W.anchorIsValid(Q))Z.add(Q),z.push(\`&\${Q}\`);let R=G.tag??(J.default?null:J.tag);if(R)z.push(X.directives.tagString(R));return z.join(" ")}function U(G,J,Z,X){if(V.isPair(G))return G.toString(J,Z,X);if(V.isAlias(G)){if(J.doc.directives)return G.toString(J);if(J.resolvedAliases?.has(G))throw TypeError("Cannot stringify circular structure without alias nodes");else{if(J.resolvedAliases)J.resolvedAliases.add(G);else J.resolvedAliases=new Set([G]);G=G.resolve(J.doc)}}let z=void 0,Q=V.isNode(G)?G:J.doc.createNode(G,{onTagObj:(K)=>z=K});z??(z=Y(J.doc.schema.tags,Q));let R=H(Q,z,J);if(R.length>0)J.indentAtStart=(J.indentAtStart??0)+R.length+1;let q=typeof z.stringify==="function"?z.stringify(Q,J,Z,X):V.isScalar(Q)?O.stringifyString(Q,J,Z,X):Q.toString(J,Z,X);if(!R)return q;return V.isScalar(Q)||q[0]==="{"||q[0]==="["?\`\${R} \${q}\`:\`\${R}
64239
+ \${L}\`);if(j){let N=(w)=>w.default&&w.tag!=="tag:yaml.org,2002:str"&&w.test?.test(T),{compat:D,tags:S}=Q.doc.schema;if(S.some(N)||D?.some(N))return U(F,Q)}return M?T:V.foldFlowLines(T,L,V.FOLD_FLOW,B(Q,!1))}function X(z,Q,R,q){let{implicitKey:K,inFlow:F}=Q,j=typeof z.value==="string"?z:Object.assign({},z,{value:String(z.value)}),{type:M}=z;if(M!==W.Scalar.QUOTE_DOUBLE){if(/[\\x00-\\x08\\x0b-\\x1f\\x7f-\\x9f\\u{D800}-\\u{DFFF}]/u.test(j.value))M=W.Scalar.QUOTE_DOUBLE}let L=(I)=>{switch(I){case W.Scalar.BLOCK_FOLDED:case W.Scalar.BLOCK_LITERAL:return K||F?U(j.value,Q):J(j,Q,R,q);case W.Scalar.QUOTE_DOUBLE:return Y(j.value,Q);case W.Scalar.QUOTE_SINGLE:return H(j.value,Q);case W.Scalar.PLAIN:return Z(j,Q,R,q);default:return null}},A=L(M);if(A===null){let{defaultKeyType:I,defaultStringType:T}=Q.options,N=K&&I||T;if(A=L(N),A===null)throw Error(\`Unsupported default string type \${N}\`)}return A}$.stringifyString=X}),L0=C(($)=>{var W=y0(),V=P(),B=F0(),O=j0();function _(G,J){let Z=Object.assign({blockQuote:!0,commentString:B.stringifyComment,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},G.schema.toStringOptions,J),X;switch(Z.collectionStyle){case"block":X=!1;break;case"flow":X=!0;break;default:X=null}return{anchors:new Set,doc:G,flowCollectionPadding:Z.flowCollectionPadding?" ":"",indent:"",indentStep:typeof Z.indent==="number"?" ".repeat(Z.indent):" ",inFlow:X,options:Z}}function Y(G,J){if(J.tag){let z=G.filter((Q)=>Q.tag===J.tag);if(z.length>0)return z.find((Q)=>Q.format===J.format)??z[0]}let Z=void 0,X;if(V.isScalar(J)){X=J.value;let z=G.filter((Q)=>Q.identify?.(X));if(z.length>1){let Q=z.filter((R)=>R.test);if(Q.length>0)z=Q}Z=z.find((Q)=>Q.format===J.format)??z.find((Q)=>!Q.format)}else X=J,Z=G.find((z)=>z.nodeClass&&X instanceof z.nodeClass);if(!Z){let z=X?.constructor?.name??(X===null?"null":typeof X);throw Error(\`Tag not resolved for \${z} value\`)}return Z}function H(G,J,{anchors:Z,doc:X}){if(!X.directives)return"";let z=[],Q=(V.isScalar(G)||V.isCollection(G))&&G.anchor;if(Q&&W.anchorIsValid(Q))Z.add(Q),z.push(\`&\${Q}\`);let R=G.tag??(J.default?null:J.tag);if(R)z.push(X.directives.tagString(R));return z.join(" ")}function U(G,J,Z,X){if(V.isPair(G))return G.toString(J,Z,X);if(V.isAlias(G)){if(J.doc.directives)return G.toString(J);if(J.resolvedAliases?.has(G))throw TypeError("Cannot stringify circular structure without alias nodes");else{if(J.resolvedAliases)J.resolvedAliases.add(G);else J.resolvedAliases=new Set([G]);G=G.resolve(J.doc)}}let z=void 0,Q=V.isNode(G)?G:J.doc.createNode(G,{onTagObj:(K)=>z=K});z??(z=Y(J.doc.schema.tags,Q));let R=H(Q,z,J);if(R.length>0)J.indentAtStart=(J.indentAtStart??0)+R.length+1;let q=typeof z.stringify==="function"?z.stringify(Q,J,Z,X):V.isScalar(Q)?O.stringifyString(Q,J,Z,X):Q.toString(J,Z,X);if(!R)return q;return V.isScalar(Q)||q[0]==="{"||q[0]==="["?\`\${R} \${q}\`:\`\${R}
64132
64240
  \${J.indent}\${q}\`}$.createStringifyContext=_,$.stringify=U}),rZ=C(($)=>{var W=P(),V=x(),B=L0(),O=F0();function _({key:Y,value:H},U,G,J){let{allNullValues:Z,doc:X,indent:z,indentStep:Q,options:{commentString:R,indentSeq:q,simpleKeys:K}}=U,F=W.isNode(Y)&&Y.comment||null;if(K){if(F)throw Error("With simple keys, key nodes cannot have comments");if(W.isCollection(Y)||!W.isNode(Y)&&typeof Y==="object")throw Error("With simple keys, collection cannot be used as a key value")}let j=!K&&(!Y||F&&H==null&&!U.inFlow||W.isCollection(Y)||(W.isScalar(Y)?Y.type===V.Scalar.BLOCK_FOLDED||Y.type===V.Scalar.BLOCK_LITERAL:typeof Y==="object"));U=Object.assign({},U,{allNullValues:!1,implicitKey:!j&&(K||!Z),indent:z+Q});let M=!1,L=!1,A=B.stringify(Y,U,()=>M=!0,()=>L=!0);if(!j&&!U.inFlow&&A.length>1024){if(K)throw Error("With simple keys, single line scalar must not span more than 1024 characters");j=!0}if(U.inFlow){if(Z||H==null){if(M&&G)G();return A===""?"?":j?\`? \${A}\`:A}}else if(Z&&!K||H==null&&j){if(A=\`? \${A}\`,F&&!M)A+=O.lineComment(A,U.indent,R(F));else if(L&&J)J();return A}if(M)F=null;if(j){if(F)A+=O.lineComment(A,U.indent,R(F));A=\`? \${A}
64133
- \${z}:\`}else if(A=\`\${A}:\`,F)A+=O.lineComment(A,U.indent,R(F));let I,T,N;if(W.isNode(H))I=!!H.spaceBefore,T=H.commentBefore,N=H.comment;else if(I=!1,T=null,N=null,H&&typeof H==="object")H=X.createNode(H);if(U.implicitKey=!1,!j&&!F&&W.isScalar(H))U.indentAtStart=A.length+1;if(L=!1,!q&&Q.length>=2&&!U.inFlow&&!j&&W.isSeq(H)&&!H.flow&&!H.tag&&!H.anchor)U.indent=U.indent.substring(2);let D=!1,w=B.stringify(H,U,()=>D=!0,()=>L=!0),S=" ";if(F||I||T){if(S=I?\`
64134
- \`:"",T){let y=R(T);S+=\`
64135
- \${O.indentComment(y,U.indent)}\`}if(w===""&&!U.inFlow){if(S===\`
64136
- \`&&N)S=\`
64137
-
64138
- \`}else S+=\`
64139
- \${U.indent}\`}else if(!j&&W.isCollection(H)){let y=w[0],v=w.indexOf(\`
64140
- \`),g=v!==-1,p=U.inFlow??H.flow??H.items.length===0;if(g||!p){let b=!1;if(g&&(y==="&"||y==="!")){let E=w.indexOf(" ");if(y==="&"&&E!==-1&&E<v&&w[E+1]==="!")E=w.indexOf(" ",E+1);if(E===-1||v<E)b=!0}if(!b)S=\`
64141
- \${U.indent}\`}}else if(w===""||w[0]===\`
64142
- \`)S="";if(A+=S+w,U.inFlow){if(D&&G)G()}else if(N&&!D)A+=O.lineComment(A,U.indent,R(N));else if(L&&J)J();return A}$.stringifyPair=_}),BZ=C(($)=>{var W=_0("process");function V(O,..._){if(O==="debug")console.log(..._)}function B(O,_){if(O==="debug"||O==="warn")if(typeof W.emitWarning==="function")W.emitWarning(_);else console.warn(_)}$.debug=V,$.warn=B}),v0=C(($)=>{var W=P(),V=x(),B="<<",O={identify:(U)=>U===B||typeof U==="symbol"&&U.description===B,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new V.Scalar(Symbol(B)),{addToJSMap:Y}),stringify:()=>B},_=(U,G)=>(O.identify(G)||W.isScalar(G)&&(!G.type||G.type===V.Scalar.PLAIN)&&O.identify(G.value))&&U?.doc.schema.tags.some((J)=>J.tag===O.tag&&J.default);function Y(U,G,J){if(J=U&&W.isAlias(J)?J.resolve(U.doc):J,W.isSeq(J))for(let Z of J.items)H(U,G,Z);else if(Array.isArray(J))for(let Z of J)H(U,G,Z);else H(U,G,J)}function H(U,G,J){let Z=U&&W.isAlias(J)?J.resolve(U.doc):J;if(!W.isMap(Z))throw Error("Merge sources must be maps or map aliases");let X=Z.toJSON(null,U,Map);for(let[z,Q]of X)if(G instanceof Map){if(!G.has(z))G.set(z,Q)}else if(G instanceof Set)G.add(z);else if(!Object.prototype.hasOwnProperty.call(G,z))Object.defineProperty(G,z,{value:Q,writable:!0,enumerable:!0,configurable:!0});return G}$.addMergeToJSMap=Y,$.isMergeKey=_,$.merge=O}),_Z=C(($)=>{var W=BZ(),V=v0(),B=L0(),O=P(),_=t();function Y(U,G,{key:J,value:Z}){if(O.isNode(J)&&J.addToJSMap)J.addToJSMap(U,G,Z);else if(V.isMergeKey(U,J))V.addMergeToJSMap(U,G,Z);else{let X=_.toJS(J,"",U);if(G instanceof Map)G.set(X,_.toJS(Z,X,U));else if(G instanceof Set)G.add(X);else{let z=H(J,X,U),Q=_.toJS(Z,z,U);if(z in G)Object.defineProperty(G,z,{value:Q,writable:!0,enumerable:!0,configurable:!0});else G[z]=Q}}return G}function H(U,G,J){if(G===null)return"";if(typeof G!=="object")return String(G);if(O.isNode(U)&&J?.doc){let Z=B.createStringifyContext(J.doc,{});Z.anchors=new Set;for(let z of J.anchors.keys())Z.anchors.add(z.anchor);Z.inFlow=!0,Z.inStringifyKey=!0;let X=U.toString(Z);if(!J.mapKeyWarned){let z=JSON.stringify(X);if(z.length>40)z=z.substring(0,36)+'..."';W.warn(J.doc.options.logLevel,\`Keys with collection values will be stringified due to JS Object restrictions: \${z}. Set mapAsMap: true to use object keys.\`),J.mapKeyWarned=!0}return X}return JSON.stringify(G)}$.addPairToJSMap=Y}),e=C(($)=>{var W=K0(),V=rZ(),B=_Z(),O=P();function _(H,U,G){let J=W.createNode(H,void 0,G),Z=W.createNode(U,void 0,G);return new Y(J,Z)}class Y{constructor(H,U=null){Object.defineProperty(this,O.NODE_TYPE,{value:O.PAIR}),this.key=H,this.value=U}clone(H){let{key:U,value:G}=this;if(O.isNode(U))U=U.clone(H);if(O.isNode(G))G=G.clone(H);return new Y(U,G)}toJSON(H,U){let G=U?.mapAsMap?new Map:{};return B.addPairToJSMap(U,G,this)}toString(H,U,G){return H?.doc?V.stringifyPair(this,H,U,G):JSON.stringify(this)}}$.Pair=Y,$.createPair=_}),qZ=C(($)=>{var W=P(),V=L0(),B=F0();function O(U,G,J){return(G.inFlow??U.flow?Y:_)(U,G,J)}function _({comment:U,items:G},J,{blockItemPrefix:Z,flowChars:X,itemIndent:z,onChompKeep:Q,onComment:R}){let{indent:q,options:{commentString:K}}=J,F=Object.assign({},J,{indent:z,type:null}),j=!1,M=[];for(let A=0;A<G.length;++A){let I=G[A],T=null;if(W.isNode(I)){if(!j&&I.spaceBefore)M.push("");if(H(J,M,I.commentBefore,j),I.comment)T=I.comment}else if(W.isPair(I)){let D=W.isNode(I.key)?I.key:null;if(D){if(!j&&D.spaceBefore)M.push("");H(J,M,D.commentBefore,j)}}j=!1;let N=V.stringify(I,F,()=>T=null,()=>j=!0);if(T)N+=B.lineComment(N,z,K(T));if(j&&T)j=!1;M.push(Z+N)}let L;if(M.length===0)L=X.start+X.end;else{L=M[0];for(let A=1;A<M.length;++A){let I=M[A];L+=I?\`
64241
+ \${z}:\`}else if(A=\`\${A}:\`,F)A+=O.lineComment(A,U.indent,R(F));let I,T,N;if(W.isNode(H))I=!!H.spaceBefore,T=H.commentBefore,N=H.comment;else if(I=!1,T=null,N=null,H&&typeof H==="object")H=X.createNode(H);if(U.implicitKey=!1,!j&&!F&&W.isScalar(H))U.indentAtStart=A.length+1;if(L=!1,!q&&Q.length>=2&&!U.inFlow&&!j&&W.isSeq(H)&&!H.flow&&!H.tag&&!H.anchor)U.indent=U.indent.substring(2);let D=!1,S=B.stringify(H,U,()=>D=!0,()=>L=!0),w=" ";if(F||I||T){if(w=I?\`
64242
+ \`:"",T){let y=R(T);w+=\`
64243
+ \${O.indentComment(y,U.indent)}\`}if(S===""&&!U.inFlow){if(w===\`
64244
+ \`&&N)w=\`
64245
+
64246
+ \`}else w+=\`
64247
+ \${U.indent}\`}else if(!j&&W.isCollection(H)){let y=S[0],v=S.indexOf(\`
64248
+ \`),g=v!==-1,p=U.inFlow??H.flow??H.items.length===0;if(g||!p){let b=!1;if(g&&(y==="&"||y==="!")){let E=S.indexOf(" ");if(y==="&"&&E!==-1&&E<v&&S[E+1]==="!")E=S.indexOf(" ",E+1);if(E===-1||v<E)b=!0}if(!b)w=\`
64249
+ \${U.indent}\`}}else if(S===""||S[0]===\`
64250
+ \`)w="";if(A+=w+S,U.inFlow){if(D&&G)G()}else if(N&&!D)A+=O.lineComment(A,U.indent,R(N));else if(L&&J)J();return A}$.stringifyPair=_}),BZ=C(($)=>{var W=_0("process");function V(O,..._){if(O==="debug")console.log(..._)}function B(O,_){if(O==="debug"||O==="warn")if(typeof W.emitWarning==="function")W.emitWarning(_);else console.warn(_)}$.debug=V,$.warn=B}),v0=C(($)=>{var W=P(),V=x(),B="<<",O={identify:(U)=>U===B||typeof U==="symbol"&&U.description===B,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new V.Scalar(Symbol(B)),{addToJSMap:Y}),stringify:()=>B},_=(U,G)=>(O.identify(G)||W.isScalar(G)&&(!G.type||G.type===V.Scalar.PLAIN)&&O.identify(G.value))&&U?.doc.schema.tags.some((J)=>J.tag===O.tag&&J.default);function Y(U,G,J){if(J=U&&W.isAlias(J)?J.resolve(U.doc):J,W.isSeq(J))for(let Z of J.items)H(U,G,Z);else if(Array.isArray(J))for(let Z of J)H(U,G,Z);else H(U,G,J)}function H(U,G,J){let Z=U&&W.isAlias(J)?J.resolve(U.doc):J;if(!W.isMap(Z))throw Error("Merge sources must be maps or map aliases");let X=Z.toJSON(null,U,Map);for(let[z,Q]of X)if(G instanceof Map){if(!G.has(z))G.set(z,Q)}else if(G instanceof Set)G.add(z);else if(!Object.prototype.hasOwnProperty.call(G,z))Object.defineProperty(G,z,{value:Q,writable:!0,enumerable:!0,configurable:!0});return G}$.addMergeToJSMap=Y,$.isMergeKey=_,$.merge=O}),_Z=C(($)=>{var W=BZ(),V=v0(),B=L0(),O=P(),_=t();function Y(U,G,{key:J,value:Z}){if(O.isNode(J)&&J.addToJSMap)J.addToJSMap(U,G,Z);else if(V.isMergeKey(U,J))V.addMergeToJSMap(U,G,Z);else{let X=_.toJS(J,"",U);if(G instanceof Map)G.set(X,_.toJS(Z,X,U));else if(G instanceof Set)G.add(X);else{let z=H(J,X,U),Q=_.toJS(Z,z,U);if(z in G)Object.defineProperty(G,z,{value:Q,writable:!0,enumerable:!0,configurable:!0});else G[z]=Q}}return G}function H(U,G,J){if(G===null)return"";if(typeof G!=="object")return String(G);if(O.isNode(U)&&J?.doc){let Z=B.createStringifyContext(J.doc,{});Z.anchors=new Set;for(let z of J.anchors.keys())Z.anchors.add(z.anchor);Z.inFlow=!0,Z.inStringifyKey=!0;let X=U.toString(Z);if(!J.mapKeyWarned){let z=JSON.stringify(X);if(z.length>40)z=z.substring(0,36)+'..."';W.warn(J.doc.options.logLevel,\`Keys with collection values will be stringified due to JS Object restrictions: \${z}. Set mapAsMap: true to use object keys.\`),J.mapKeyWarned=!0}return X}return JSON.stringify(G)}$.addPairToJSMap=Y}),e=C(($)=>{var W=K0(),V=rZ(),B=_Z(),O=P();function _(H,U,G){let J=W.createNode(H,void 0,G),Z=W.createNode(U,void 0,G);return new Y(J,Z)}class Y{constructor(H,U=null){Object.defineProperty(this,O.NODE_TYPE,{value:O.PAIR}),this.key=H,this.value=U}clone(H){let{key:U,value:G}=this;if(O.isNode(U))U=U.clone(H);if(O.isNode(G))G=G.clone(H);return new Y(U,G)}toJSON(H,U){let G=U?.mapAsMap?new Map:{};return B.addPairToJSMap(U,G,this)}toString(H,U,G){return H?.doc?V.stringifyPair(this,H,U,G):JSON.stringify(this)}}$.Pair=Y,$.createPair=_}),qZ=C(($)=>{var W=P(),V=L0(),B=F0();function O(U,G,J){return(G.inFlow??U.flow?Y:_)(U,G,J)}function _({comment:U,items:G},J,{blockItemPrefix:Z,flowChars:X,itemIndent:z,onChompKeep:Q,onComment:R}){let{indent:q,options:{commentString:K}}=J,F=Object.assign({},J,{indent:z,type:null}),j=!1,M=[];for(let A=0;A<G.length;++A){let I=G[A],T=null;if(W.isNode(I)){if(!j&&I.spaceBefore)M.push("");if(H(J,M,I.commentBefore,j),I.comment)T=I.comment}else if(W.isPair(I)){let D=W.isNode(I.key)?I.key:null;if(D){if(!j&&D.spaceBefore)M.push("");H(J,M,D.commentBefore,j)}}j=!1;let N=V.stringify(I,F,()=>T=null,()=>j=!0);if(T)N+=B.lineComment(N,z,K(T));if(j&&T)j=!1;M.push(Z+N)}let L;if(M.length===0)L=X.start+X.end;else{L=M[0];for(let A=1;A<M.length;++A){let I=M[A];L+=I?\`
64143
64251
  \${q}\${I}\`:\`
64144
64252
  \`}}if(U){if(L+=\`
64145
- \`+B.indentComment(K(U),q),R)R()}else if(j&&Q)Q();return L}function Y({items:U},G,{flowChars:J,itemIndent:Z}){let{indent:X,indentStep:z,flowCollectionPadding:Q,options:{commentString:R}}=G;Z+=z;let q=Object.assign({},G,{indent:Z,inFlow:!0,type:null}),K=!1,F=0,j=[];for(let A=0;A<U.length;++A){let I=U[A],T=null;if(W.isNode(I)){if(I.spaceBefore)j.push("");if(H(G,j,I.commentBefore,!1),I.comment)T=I.comment}else if(W.isPair(I)){let D=W.isNode(I.key)?I.key:null;if(D){if(D.spaceBefore)j.push("");if(H(G,j,D.commentBefore,!1),D.comment)K=!0}let w=W.isNode(I.value)?I.value:null;if(w){if(w.comment)T=w.comment;if(w.commentBefore)K=!0}else if(I.value==null&&D?.comment)T=D.comment}if(T)K=!0;let N=V.stringify(I,q,()=>T=null);if(A<U.length-1)N+=",";if(T)N+=B.lineComment(N,Z,R(T));if(!K&&(j.length>F||N.includes(\`
64253
+ \`+B.indentComment(K(U),q),R)R()}else if(j&&Q)Q();return L}function Y({items:U},G,{flowChars:J,itemIndent:Z}){let{indent:X,indentStep:z,flowCollectionPadding:Q,options:{commentString:R}}=G;Z+=z;let q=Object.assign({},G,{indent:Z,inFlow:!0,type:null}),K=!1,F=0,j=[];for(let A=0;A<U.length;++A){let I=U[A],T=null;if(W.isNode(I)){if(I.spaceBefore)j.push("");if(H(G,j,I.commentBefore,!1),I.comment)T=I.comment}else if(W.isPair(I)){let D=W.isNode(I.key)?I.key:null;if(D){if(D.spaceBefore)j.push("");if(H(G,j,D.commentBefore,!1),D.comment)K=!0}let S=W.isNode(I.value)?I.value:null;if(S){if(S.comment)T=S.comment;if(S.commentBefore)K=!0}else if(I.value==null&&D?.comment)T=D.comment}if(T)K=!0;let N=V.stringify(I,q,()=>T=null);if(A<U.length-1)N+=",";if(T)N+=B.lineComment(N,Z,R(T));if(!K&&(j.length>F||N.includes(\`
64146
64254
  \`)))K=!0;j.push(N),F=j.length}let{start:M,end:L}=J;if(j.length===0)return M+L;else{if(!K){let A=j.reduce((I,T)=>I+T.length+2,2);K=G.options.lineWidth>0&&A>G.options.lineWidth}if(K){let A=M;for(let I of j)A+=I?\`
64147
64255
  \${z}\${X}\${I}\`:\`
64148
64256
  \`;return\`\${A}
64149
64257
  \${X}\${L}\`}else return\`\${M}\${Q}\${j.join(" ")}\${Q}\${L}\`}}function H({indent:U,options:{commentString:G}},J,Z,X){if(Z&&X)Z=Z.replace(/^\\n+/,"");if(Z){let z=B.indentComment(G(Z),U);J.push(z.trimStart())}}$.stringifyCollection=O}),Z0=C(($)=>{var W=qZ(),V=_Z(),B=g0(),O=P(),_=e(),Y=x();function H(G,J){let Z=O.isScalar(J)?J.value:J;for(let X of G)if(O.isPair(X)){if(X.key===J||X.key===Z)return X;if(O.isScalar(X.key)&&X.key.value===Z)return X}return}class U extends B.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(G){super(O.MAP,G);this.items=[]}static from(G,J,Z){let{keepUndefined:X,replacer:z}=Z,Q=new this(G),R=(q,K)=>{if(typeof z==="function")K=z.call(J,q,K);else if(Array.isArray(z)&&!z.includes(q))return;if(K!==void 0||X)Q.items.push(_.createPair(q,K,Z))};if(J instanceof Map)for(let[q,K]of J)R(q,K);else if(J&&typeof J==="object")for(let q of Object.keys(J))R(q,J[q]);if(typeof G.sortMapEntries==="function")Q.items.sort(G.sortMapEntries);return Q}add(G,J){let Z;if(O.isPair(G))Z=G;else if(!G||typeof G!=="object"||!("key"in G))Z=new _.Pair(G,G?.value);else Z=new _.Pair(G.key,G.value);let X=H(this.items,Z.key),z=this.schema?.sortMapEntries;if(X){if(!J)throw Error(\`Key \${Z.key} already set\`);if(O.isScalar(X.value)&&Y.isScalarValue(Z.value))X.value.value=Z.value;else X.value=Z.value}else if(z){let Q=this.items.findIndex((R)=>z(Z,R)<0);if(Q===-1)this.items.push(Z);else this.items.splice(Q,0,Z)}else this.items.push(Z)}delete(G){let J=H(this.items,G);if(!J)return!1;return this.items.splice(this.items.indexOf(J),1).length>0}get(G,J){let X=H(this.items,G)?.value;return(!J&&O.isScalar(X)?X.value:X)??void 0}has(G){return!!H(this.items,G)}set(G,J){this.add(new _.Pair(G,J),!0)}toJSON(G,J,Z){let X=Z?new Z:J?.mapAsMap?new Map:{};if(J?.onCreate)J.onCreate(X);for(let z of this.items)V.addPairToJSMap(J,X,z);return X}toString(G,J,Z){if(!G)return JSON.stringify(this);for(let X of this.items)if(!O.isPair(X))throw Error(\`Map items must all be pairs; found \${JSON.stringify(X)} instead\`);if(!G.allNullValues&&this.hasAllNullValues(!1))G=Object.assign({},G,{allNullValues:!0});return W.stringifyCollection(this,G,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:G.indent||"",onChompKeep:Z,onComment:J})}}$.YAMLMap=U,$.findPair=H}),J0=C(($)=>{var W=P(),V=Z0(),B={collection:"map",default:!0,nodeClass:V.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(O,_){if(!W.isMap(O))_("Expected a mapping for this tag");return O},createNode:(O,_,Y)=>V.YAMLMap.from(O,_,Y)};$.map=B}),$0=C(($)=>{var W=K0(),V=qZ(),B=g0(),O=P(),_=x(),Y=t();class H extends B.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(G){super(O.SEQ,G);this.items=[]}add(G){this.items.push(G)}delete(G){let J=U(G);if(typeof J!=="number")return!1;return this.items.splice(J,1).length>0}get(G,J){let Z=U(G);if(typeof Z!=="number")return;let X=this.items[Z];return!J&&O.isScalar(X)?X.value:X}has(G){let J=U(G);return typeof J==="number"&&J<this.items.length}set(G,J){let Z=U(G);if(typeof Z!=="number")throw Error(\`Expected a valid index, not \${G}.\`);let X=this.items[Z];if(O.isScalar(X)&&_.isScalarValue(J))X.value=J;else this.items[Z]=J}toJSON(G,J){let Z=[];if(J?.onCreate)J.onCreate(Z);let X=0;for(let z of this.items)Z.push(Y.toJS(z,String(X++),J));return Z}toString(G,J,Z){if(!G)return JSON.stringify(this);return V.stringifyCollection(this,G,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:(G.indent||"")+" ",onChompKeep:Z,onComment:J})}static from(G,J,Z){let{replacer:X}=Z,z=new this(G);if(J&&Symbol.iterator in Object(J)){let Q=0;for(let R of J){if(typeof X==="function"){let q=J instanceof Set?R:String(Q++);R=X.call(J,q,R)}z.items.push(W.createNode(R,void 0,Z))}}return z}}function U(G){let J=O.isScalar(G)?G.value:G;if(J&&typeof J==="string")J=Number(J);return typeof J==="number"&&Number.isInteger(J)&&J>=0?J:null}$.YAMLSeq=H}),U0=C(($)=>{var W=P(),V=$0(),B={collection:"seq",default:!0,nodeClass:V.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(O,_){if(!W.isSeq(O))_("Expected a sequence for this tag");return O},createNode:(O,_,Y)=>V.YAMLSeq.from(O,_,Y)};$.seq=B}),A0=C(($)=>{var W=j0(),V={identify:(B)=>typeof B==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(B)=>B,stringify(B,O,_,Y){return O=Object.assign({actualString:!0},O),W.stringifyString(B,O,_,Y)}};$.string=V}),b0=C(($)=>{var W=x(),V={identify:(B)=>B==null,createNode:()=>new W.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new W.Scalar(null),stringify:({source:B},O)=>typeof B==="string"&&V.test.test(B)?B:O.options.nullStr};$.nullTag=V}),OZ=C(($)=>{var W=x(),V={identify:(B)=>typeof B==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:(B)=>new W.Scalar(B[0]==="t"||B[0]==="T"),stringify({source:B,value:O},_){if(B&&V.test.test(B)){let Y=B[0]==="t"||B[0]==="T";if(O===Y)return B}return O?_.options.trueStr:_.options.falseStr}};$.boolTag=V}),W0=C(($)=>{function W({format:V,minFractionDigits:B,tag:O,value:_}){if(typeof _==="bigint")return String(_);let Y=typeof _==="number"?_:Number(_);if(!isFinite(Y))return isNaN(Y)?".nan":Y<0?"-.inf":".inf";let H=Object.is(_,-0)?"-0":JSON.stringify(_);if(!V&&B&&(!O||O==="tag:yaml.org,2002:float")&&/^\\d/.test(H)){let U=H.indexOf(".");if(U<0)U=H.length,H+=".";let G=B-(H.length-U-1);while(G-- >0)H+="0"}return H}$.stringifyNumber=W}),KZ=C(($)=>{var W=x(),V=W0(),B={identify:(Y)=>typeof Y==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\\.(?:inf|Inf|INF)|\\.nan|\\.NaN|\\.NAN)$/,resolve:(Y)=>Y.slice(-3).toLowerCase()==="nan"?NaN:Y[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:V.stringifyNumber},O={identify:(Y)=>typeof Y==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\\.[0-9]+|[0-9]+(?:\\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:(Y)=>parseFloat(Y),stringify(Y){let H=Number(Y.value);return isFinite(H)?H.toExponential():V.stringifyNumber(Y)}},_={identify:(Y)=>typeof Y==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\\.[0-9]+|[0-9]+\\.[0-9]*)$/,resolve(Y){let H=new W.Scalar(parseFloat(Y)),U=Y.indexOf(".");if(U!==-1&&Y[Y.length-1]==="0")H.minFractionDigits=Y.length-U-1;return H},stringify:V.stringifyNumber};$.float=_,$.floatExp=O,$.floatNaN=B}),FZ=C(($)=>{var W=W0(),V=(U)=>typeof U==="bigint"||Number.isInteger(U),B=(U,G,J,{intAsBigInt:Z})=>Z?BigInt(U):parseInt(U.substring(G),J);function O(U,G,J){let{value:Z}=U;if(V(Z)&&Z>=0)return J+Z.toString(G);return W.stringifyNumber(U)}var _={identify:(U)=>V(U)&&U>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(U,G,J)=>B(U,2,8,J),stringify:(U)=>O(U,8,"0o")},Y={identify:V,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(U,G,J)=>B(U,0,10,J),stringify:W.stringifyNumber},H={identify:(U)=>V(U)&&U>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(U,G,J)=>B(U,2,16,J),stringify:(U)=>O(U,16,"0x")};$.int=Y,$.intHex=H,$.intOct=_}),sZ=C(($)=>{var W=J0(),V=b0(),B=U0(),O=A0(),_=OZ(),Y=KZ(),H=FZ(),U=[W.map,B.seq,O.string,V.nullTag,_.boolTag,H.intOct,H.int,H.intHex,Y.floatNaN,Y.floatExp,Y.float];$.schema=U}),oZ=C(($)=>{var W=x(),V=J0(),B=U0();function O(G){return typeof G==="bigint"||Number.isInteger(G)}var _=({value:G})=>JSON.stringify(G),Y=[{identify:(G)=>typeof G==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(G)=>G,stringify:_},{identify:(G)=>G==null,createNode:()=>new W.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:_},{identify:(G)=>typeof G==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:(G)=>G==="true",stringify:_},{identify:O,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(G,J,{intAsBigInt:Z})=>Z?BigInt(G):parseInt(G,10),stringify:({value:G})=>O(G)?G.toString():JSON.stringify(G)},{identify:(G)=>typeof G==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:(G)=>parseFloat(G),stringify:_}],H={default:!0,tag:"",test:/^/,resolve(G,J){return J(\`Unresolved plain scalar \${JSON.stringify(G)}\`),G}},U=[V.map,B.seq].concat(Y,H);$.schema=U}),jZ=C(($)=>{var W=_0("buffer"),V=x(),B=j0(),O={identify:(_)=>_ instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(_,Y){if(typeof W.Buffer==="function")return W.Buffer.from(_,"base64");else if(typeof atob==="function"){let H=atob(_.replace(/[\\n\\r]/g,"")),U=new Uint8Array(H.length);for(let G=0;G<H.length;++G)U[G]=H.charCodeAt(G);return U}else return Y("This environment does not support reading binary tags; either Buffer or atob is required"),_},stringify({comment:_,type:Y,value:H},U,G,J){if(!H)return"";let Z=H,X;if(typeof W.Buffer==="function")X=Z instanceof W.Buffer?Z.toString("base64"):W.Buffer.from(Z.buffer).toString("base64");else if(typeof btoa==="function"){let z="";for(let Q=0;Q<Z.length;++Q)z+=String.fromCharCode(Z[Q]);X=btoa(z)}else throw Error("This environment does not support writing binary tags; either Buffer or btoa is required");if(Y??(Y=V.Scalar.BLOCK_LITERAL),Y!==V.Scalar.QUOTE_DOUBLE){let z=Math.max(U.options.lineWidth-U.indent.length,U.options.minContentWidth),Q=Math.ceil(X.length/z),R=Array(Q);for(let q=0,K=0;q<Q;++q,K+=z)R[q]=X.substr(K,z);X=R.join(Y===V.Scalar.BLOCK_LITERAL?\`
64150
64258
  \`:" ")}return B.stringifyString({comment:_,type:Y,value:X},U,G,J)}};$.binary=O}),x0=C(($)=>{var W=P(),V=e(),B=x(),O=$0();function _(U,G){if(W.isSeq(U))for(let J=0;J<U.items.length;++J){let Z=U.items[J];if(W.isPair(Z))continue;else if(W.isMap(Z)){if(Z.items.length>1)G("Each pair must have its own sequence indicator");let X=Z.items[0]||new V.Pair(new B.Scalar(null));if(Z.commentBefore)X.key.commentBefore=X.key.commentBefore?\`\${Z.commentBefore}
64151
64259
  \${X.key.commentBefore}\`:Z.commentBefore;if(Z.comment){let z=X.value??X.key;z.comment=z.comment?\`\${Z.comment}
64152
- \${z.comment}\`:Z.comment}Z=X}U.items[J]=W.isPair(Z)?Z:new V.Pair(Z)}else G("Expected a sequence for this tag");return U}function Y(U,G,J){let{replacer:Z}=J,X=new O.YAMLSeq(U);X.tag="tag:yaml.org,2002:pairs";let z=0;if(G&&Symbol.iterator in Object(G))for(let Q of G){if(typeof Z==="function")Q=Z.call(G,String(z++),Q);let R,q;if(Array.isArray(Q))if(Q.length===2)R=Q[0],q=Q[1];else throw TypeError(\`Expected [key, value] tuple: \${Q}\`);else if(Q&&Q instanceof Object){let K=Object.keys(Q);if(K.length===1)R=K[0],q=Q[R];else throw TypeError(\`Expected tuple with one key, not \${K.length} keys\`)}else R=Q;X.items.push(V.createPair(R,q,J))}return X}var H={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:_,createNode:Y};$.createPairs=Y,$.pairs=H,$.resolvePairs=_}),LZ=C(($)=>{var W=P(),V=t(),B=Z0(),O=$0(),_=x0();class Y extends O.YAMLSeq{constructor(){super();this.add=B.YAMLMap.prototype.add.bind(this),this.delete=B.YAMLMap.prototype.delete.bind(this),this.get=B.YAMLMap.prototype.get.bind(this),this.has=B.YAMLMap.prototype.has.bind(this),this.set=B.YAMLMap.prototype.set.bind(this),this.tag=Y.tag}toJSON(U,G){if(!G)return super.toJSON(U);let J=new Map;if(G?.onCreate)G.onCreate(J);for(let Z of this.items){let X,z;if(W.isPair(Z))X=V.toJS(Z.key,"",G),z=V.toJS(Z.value,X,G);else X=V.toJS(Z,"",G);if(J.has(X))throw Error("Ordered maps must not include duplicate keys");J.set(X,z)}return J}static from(U,G,J){let Z=_.createPairs(U,G,J),X=new this;return X.items=Z.items,X}}Y.tag="tag:yaml.org,2002:omap";var H={collection:"seq",identify:(U)=>U instanceof Map,nodeClass:Y,default:!1,tag:"tag:yaml.org,2002:omap",resolve(U,G){let J=_.resolvePairs(U,G),Z=[];for(let{key:X}of J.items)if(W.isScalar(X))if(Z.includes(X.value))G(\`Ordered maps must not include duplicate keys: \${X.value}\`);else Z.push(X.value);return Object.assign(new Y,J)},createNode:(U,G,J)=>Y.from(U,G,J)};$.YAMLOMap=Y,$.omap=H}),tZ=C(($)=>{var W=x();function V({value:_,source:Y},H){if(Y&&(_?B:O).test.test(Y))return Y;return _?H.options.trueStr:H.options.falseStr}var B={identify:(_)=>_===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new W.Scalar(!0),stringify:V},O={identify:(_)=>_===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new W.Scalar(!1),stringify:V};$.falseTag=O,$.trueTag=B}),eZ=C(($)=>{var W=x(),V=W0(),B={identify:(Y)=>typeof Y==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\\.(?:inf|Inf|INF)|\\.nan|\\.NaN|\\.NAN)$/,resolve:(Y)=>Y.slice(-3).toLowerCase()==="nan"?NaN:Y[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:V.stringifyNumber},O={identify:(Y)=>typeof Y==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:(Y)=>parseFloat(Y.replace(/_/g,"")),stringify(Y){let H=Number(Y.value);return isFinite(H)?H.toExponential():V.stringifyNumber(Y)}},_={identify:(Y)=>typeof Y==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\\.[0-9_]*$/,resolve(Y){let H=new W.Scalar(parseFloat(Y.replace(/_/g,""))),U=Y.indexOf(".");if(U!==-1){let G=Y.substring(U+1).replace(/_/g,"");if(G[G.length-1]==="0")H.minFractionDigits=G.length}return H},stringify:V.stringifyNumber};$.float=_,$.floatExp=O,$.floatNaN=B}),Z5=C(($)=>{var W=W0(),V=(G)=>typeof G==="bigint"||Number.isInteger(G);function B(G,J,Z,{intAsBigInt:X}){let z=G[0];if(z==="-"||z==="+")J+=1;if(G=G.substring(J).replace(/_/g,""),X){switch(Z){case 2:G=\`0b\${G}\`;break;case 8:G=\`0o\${G}\`;break;case 16:G=\`0x\${G}\`;break}let R=BigInt(G);return z==="-"?BigInt(-1)*R:R}let Q=parseInt(G,Z);return z==="-"?-1*Q:Q}function O(G,J,Z){let{value:X}=G;if(V(X)){let z=X.toString(J);return X<0?"-"+Z+z.substr(1):Z+z}return W.stringifyNumber(G)}var _={identify:V,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(G,J,Z)=>B(G,2,2,Z),stringify:(G)=>O(G,2,"0b")},Y={identify:V,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(G,J,Z)=>B(G,1,8,Z),stringify:(G)=>O(G,8,"0")},H={identify:V,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(G,J,Z)=>B(G,0,10,Z),stringify:W.stringifyNumber},U={identify:V,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(G,J,Z)=>B(G,2,16,Z),stringify:(G)=>O(G,16,"0x")};$.int=H,$.intBin=_,$.intHex=U,$.intOct=Y}),AZ=C(($)=>{var W=P(),V=e(),B=Z0();class O extends B.YAMLMap{constructor(Y){super(Y);this.tag=O.tag}add(Y){let H;if(W.isPair(Y))H=Y;else if(Y&&typeof Y==="object"&&"key"in Y&&"value"in Y&&Y.value===null)H=new V.Pair(Y.key,null);else H=new V.Pair(Y,null);if(!B.findPair(this.items,H.key))this.items.push(H)}get(Y,H){let U=B.findPair(this.items,Y);return!H&&W.isPair(U)?W.isScalar(U.key)?U.key.value:U.key:U}set(Y,H){if(typeof H!=="boolean")throw Error(\`Expected boolean value for set(key, value) in a YAML set, not \${typeof H}\`);let U=B.findPair(this.items,Y);if(U&&!H)this.items.splice(this.items.indexOf(U),1);else if(!U&&H)this.items.push(new V.Pair(Y))}toJSON(Y,H){return super.toJSON(Y,H,Set)}toString(Y,H,U){if(!Y)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},Y,{allNullValues:!0}),H,U);else throw Error("Set items must all have null values")}static from(Y,H,U){let{replacer:G}=U,J=new this(Y);if(H&&Symbol.iterator in Object(H))for(let Z of H){if(typeof G==="function")Z=G.call(H,Z,Z);J.items.push(V.createPair(Z,null,U))}return J}}O.tag="tag:yaml.org,2002:set";var _={collection:"map",identify:(Y)=>Y instanceof Set,nodeClass:O,default:!1,tag:"tag:yaml.org,2002:set",createNode:(Y,H,U)=>O.from(Y,H,U),resolve(Y,H){if(W.isMap(Y))if(Y.hasAllNullValues(!0))return Object.assign(new O,Y);else H("Set items must all have null values");else H("Expected a mapping for this tag");return Y}};$.YAMLSet=O,$.set=_}),MZ=C(($)=>{var W=W0();function V(H,U){let G=H[0],J=G==="-"||G==="+"?H.substring(1):H,Z=(z)=>U?BigInt(z):Number(z),X=J.replace(/_/g,"").split(":").reduce((z,Q)=>z*Z(60)+Z(Q),Z(0));return G==="-"?Z(-1)*X:X}function B(H){let{value:U}=H,G=(z)=>z;if(typeof U==="bigint")G=(z)=>BigInt(z);else if(isNaN(U)||!isFinite(U))return W.stringifyNumber(H);let J="";if(U<0)J="-",U*=G(-1);let Z=G(60),X=[U%Z];if(U<60)X.unshift(0);else if(U=(U-X[0])/Z,X.unshift(U%Z),U>=60)U=(U-X[0])/Z,X.unshift(U);return J+X.map((z)=>String(z).padStart(2,"0")).join(":").replace(/000000\\d*$/,"")}var O={identify:(H)=>typeof H==="bigint"||Number.isInteger(H),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(H,U,{intAsBigInt:G})=>V(H,G),stringify:B},_={identify:(H)=>typeof H==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*$/,resolve:(H)=>V(H,!1),stringify:B},Y={identify:(H)=>H instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\\\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\\\.[0-9]+)?)(?:[ \\\\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(H){let U=H.match(Y.test);if(!U)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,G,J,Z,X,z,Q]=U.map(Number),R=U[7]?Number((U[7]+"00").substr(1,3)):0,q=Date.UTC(G,J-1,Z,X||0,z||0,Q||0,R),K=U[8];if(K&&K!=="Z"){let F=V(K,!1);if(Math.abs(F)<30)F*=60;q-=60000*F}return new Date(q)},stringify:({value:H})=>H?.toISOString().replace(/(T00:00:00)?\\.000Z$/,"")??""};$.floatTime=_,$.intTime=O,$.timestamp=Y}),$5=C(($)=>{var W=J0(),V=b0(),B=U0(),O=A0(),_=jZ(),Y=tZ(),H=eZ(),U=Z5(),G=v0(),J=LZ(),Z=x0(),X=AZ(),z=MZ(),Q=[W.map,B.seq,O.string,V.nullTag,Y.trueTag,Y.falseTag,U.intBin,U.intOct,U.int,U.intHex,H.floatNaN,H.floatExp,H.float,_.binary,G.merge,J.omap,Z.pairs,X.set,z.intTime,z.floatTime,z.timestamp];$.schema=Q}),X5=C(($)=>{var W=J0(),V=b0(),B=U0(),O=A0(),_=OZ(),Y=KZ(),H=FZ(),U=sZ(),G=oZ(),J=jZ(),Z=v0(),X=LZ(),z=x0(),Q=$5(),R=AZ(),q=MZ(),K=new Map([["core",U.schema],["failsafe",[W.map,B.seq,O.string]],["json",G.schema],["yaml11",Q.schema],["yaml-1.1",Q.schema]]),F={binary:J.binary,bool:_.boolTag,float:Y.float,floatExp:Y.floatExp,floatNaN:Y.floatNaN,floatTime:q.floatTime,int:H.int,intHex:H.intHex,intOct:H.intOct,intTime:q.intTime,map:W.map,merge:Z.merge,null:V.nullTag,omap:X.omap,pairs:z.pairs,seq:B.seq,set:R.set,timestamp:q.timestamp},j={"tag:yaml.org,2002:binary":J.binary,"tag:yaml.org,2002:merge":Z.merge,"tag:yaml.org,2002:omap":X.omap,"tag:yaml.org,2002:pairs":z.pairs,"tag:yaml.org,2002:set":R.set,"tag:yaml.org,2002:timestamp":q.timestamp};function M(L,A,I){let T=K.get(A);if(T&&!L)return I&&!T.includes(Z.merge)?T.concat(Z.merge):T.slice();let N=T;if(!N)if(Array.isArray(L))N=[];else{let D=Array.from(K.keys()).filter((w)=>w!=="yaml11").map((w)=>JSON.stringify(w)).join(", ");throw Error(\`Unknown schema "\${A}"; use one of \${D} or define customTags array\`)}if(Array.isArray(L))for(let D of L)N=N.concat(D);else if(typeof L==="function")N=L(N.slice());if(I)N=N.concat(Z.merge);return N.reduce((D,w)=>{let S=typeof w==="string"?F[w]:w;if(!S){let y=JSON.stringify(w),v=Object.keys(F).map((g)=>JSON.stringify(g)).join(", ");throw Error(\`Unknown custom tag \${y}; use one of \${v}\`)}if(!D.includes(S))D.push(S);return D},[])}$.coreKnownTags=j,$.getTags=M}),DZ=C(($)=>{var W=P(),V=J0(),B=U0(),O=A0(),_=X5(),Y=(U,G)=>U.key<G.key?-1:U.key>G.key?1:0;class H{constructor({compat:U,customTags:G,merge:J,resolveKnownTags:Z,schema:X,sortMapEntries:z,toStringDefaults:Q}){this.compat=Array.isArray(U)?_.getTags(U,"compat"):U?_.getTags(null,U):null,this.name=typeof X==="string"&&X||"core",this.knownTags=Z?_.coreKnownTags:{},this.tags=_.getTags(G,this.name,J),this.toStringOptions=Q??null,Object.defineProperty(this,W.MAP,{value:V.map}),Object.defineProperty(this,W.SCALAR,{value:O.string}),Object.defineProperty(this,W.SEQ,{value:B.seq}),this.sortMapEntries=typeof z==="function"?z:z===!0?Y:null}clone(){let U=Object.create(H.prototype,Object.getOwnPropertyDescriptors(this));return U.tags=this.tags.slice(),U}}$.Schema=H}),G5=C(($)=>{var W=P(),V=L0(),B=F0();function O(_,Y){let H=[],U=Y.directives===!0;if(Y.directives!==!1&&_.directives){let z=_.directives.toString(_);if(z)H.push(z),U=!0;else if(_.directives.docStart)U=!0}if(U)H.push("---");let G=V.createStringifyContext(_,Y),{commentString:J}=G.options;if(_.commentBefore){if(H.length!==1)H.unshift("");let z=J(_.commentBefore);H.unshift(B.indentComment(z,""))}let Z=!1,X=null;if(_.contents){if(W.isNode(_.contents)){if(_.contents.spaceBefore&&U)H.push("");if(_.contents.commentBefore){let R=J(_.contents.commentBefore);H.push(B.indentComment(R,""))}G.forceBlockIndent=!!_.comment,X=_.contents.comment}let z=X?void 0:()=>Z=!0,Q=V.stringify(_.contents,G,()=>X=null,z);if(X)Q+=B.lineComment(Q,"",J(X));if((Q[0]==="|"||Q[0]===">")&&H[H.length-1]==="---")H[H.length-1]=\`--- \${Q}\`;else H.push(Q)}else H.push(V.stringify(_.contents,G));if(_.directives?.docEnd)if(_.comment){let z=J(_.comment);if(z.includes(\`
64260
+ \${z.comment}\`:Z.comment}Z=X}U.items[J]=W.isPair(Z)?Z:new V.Pair(Z)}else G("Expected a sequence for this tag");return U}function Y(U,G,J){let{replacer:Z}=J,X=new O.YAMLSeq(U);X.tag="tag:yaml.org,2002:pairs";let z=0;if(G&&Symbol.iterator in Object(G))for(let Q of G){if(typeof Z==="function")Q=Z.call(G,String(z++),Q);let R,q;if(Array.isArray(Q))if(Q.length===2)R=Q[0],q=Q[1];else throw TypeError(\`Expected [key, value] tuple: \${Q}\`);else if(Q&&Q instanceof Object){let K=Object.keys(Q);if(K.length===1)R=K[0],q=Q[R];else throw TypeError(\`Expected tuple with one key, not \${K.length} keys\`)}else R=Q;X.items.push(V.createPair(R,q,J))}return X}var H={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:_,createNode:Y};$.createPairs=Y,$.pairs=H,$.resolvePairs=_}),LZ=C(($)=>{var W=P(),V=t(),B=Z0(),O=$0(),_=x0();class Y extends O.YAMLSeq{constructor(){super();this.add=B.YAMLMap.prototype.add.bind(this),this.delete=B.YAMLMap.prototype.delete.bind(this),this.get=B.YAMLMap.prototype.get.bind(this),this.has=B.YAMLMap.prototype.has.bind(this),this.set=B.YAMLMap.prototype.set.bind(this),this.tag=Y.tag}toJSON(U,G){if(!G)return super.toJSON(U);let J=new Map;if(G?.onCreate)G.onCreate(J);for(let Z of this.items){let X,z;if(W.isPair(Z))X=V.toJS(Z.key,"",G),z=V.toJS(Z.value,X,G);else X=V.toJS(Z,"",G);if(J.has(X))throw Error("Ordered maps must not include duplicate keys");J.set(X,z)}return J}static from(U,G,J){let Z=_.createPairs(U,G,J),X=new this;return X.items=Z.items,X}}Y.tag="tag:yaml.org,2002:omap";var H={collection:"seq",identify:(U)=>U instanceof Map,nodeClass:Y,default:!1,tag:"tag:yaml.org,2002:omap",resolve(U,G){let J=_.resolvePairs(U,G),Z=[];for(let{key:X}of J.items)if(W.isScalar(X))if(Z.includes(X.value))G(\`Ordered maps must not include duplicate keys: \${X.value}\`);else Z.push(X.value);return Object.assign(new Y,J)},createNode:(U,G,J)=>Y.from(U,G,J)};$.YAMLOMap=Y,$.omap=H}),tZ=C(($)=>{var W=x();function V({value:_,source:Y},H){if(Y&&(_?B:O).test.test(Y))return Y;return _?H.options.trueStr:H.options.falseStr}var B={identify:(_)=>_===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new W.Scalar(!0),stringify:V},O={identify:(_)=>_===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new W.Scalar(!1),stringify:V};$.falseTag=O,$.trueTag=B}),eZ=C(($)=>{var W=x(),V=W0(),B={identify:(Y)=>typeof Y==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\\.(?:inf|Inf|INF)|\\.nan|\\.NaN|\\.NAN)$/,resolve:(Y)=>Y.slice(-3).toLowerCase()==="nan"?NaN:Y[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:V.stringifyNumber},O={identify:(Y)=>typeof Y==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:(Y)=>parseFloat(Y.replace(/_/g,"")),stringify(Y){let H=Number(Y.value);return isFinite(H)?H.toExponential():V.stringifyNumber(Y)}},_={identify:(Y)=>typeof Y==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\\.[0-9_]*$/,resolve(Y){let H=new W.Scalar(parseFloat(Y.replace(/_/g,""))),U=Y.indexOf(".");if(U!==-1){let G=Y.substring(U+1).replace(/_/g,"");if(G[G.length-1]==="0")H.minFractionDigits=G.length}return H},stringify:V.stringifyNumber};$.float=_,$.floatExp=O,$.floatNaN=B}),Z5=C(($)=>{var W=W0(),V=(G)=>typeof G==="bigint"||Number.isInteger(G);function B(G,J,Z,{intAsBigInt:X}){let z=G[0];if(z==="-"||z==="+")J+=1;if(G=G.substring(J).replace(/_/g,""),X){switch(Z){case 2:G=\`0b\${G}\`;break;case 8:G=\`0o\${G}\`;break;case 16:G=\`0x\${G}\`;break}let R=BigInt(G);return z==="-"?BigInt(-1)*R:R}let Q=parseInt(G,Z);return z==="-"?-1*Q:Q}function O(G,J,Z){let{value:X}=G;if(V(X)){let z=X.toString(J);return X<0?"-"+Z+z.substr(1):Z+z}return W.stringifyNumber(G)}var _={identify:V,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(G,J,Z)=>B(G,2,2,Z),stringify:(G)=>O(G,2,"0b")},Y={identify:V,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(G,J,Z)=>B(G,1,8,Z),stringify:(G)=>O(G,8,"0")},H={identify:V,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(G,J,Z)=>B(G,0,10,Z),stringify:W.stringifyNumber},U={identify:V,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(G,J,Z)=>B(G,2,16,Z),stringify:(G)=>O(G,16,"0x")};$.int=H,$.intBin=_,$.intHex=U,$.intOct=Y}),AZ=C(($)=>{var W=P(),V=e(),B=Z0();class O extends B.YAMLMap{constructor(Y){super(Y);this.tag=O.tag}add(Y){let H;if(W.isPair(Y))H=Y;else if(Y&&typeof Y==="object"&&"key"in Y&&"value"in Y&&Y.value===null)H=new V.Pair(Y.key,null);else H=new V.Pair(Y,null);if(!B.findPair(this.items,H.key))this.items.push(H)}get(Y,H){let U=B.findPair(this.items,Y);return!H&&W.isPair(U)?W.isScalar(U.key)?U.key.value:U.key:U}set(Y,H){if(typeof H!=="boolean")throw Error(\`Expected boolean value for set(key, value) in a YAML set, not \${typeof H}\`);let U=B.findPair(this.items,Y);if(U&&!H)this.items.splice(this.items.indexOf(U),1);else if(!U&&H)this.items.push(new V.Pair(Y))}toJSON(Y,H){return super.toJSON(Y,H,Set)}toString(Y,H,U){if(!Y)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},Y,{allNullValues:!0}),H,U);else throw Error("Set items must all have null values")}static from(Y,H,U){let{replacer:G}=U,J=new this(Y);if(H&&Symbol.iterator in Object(H))for(let Z of H){if(typeof G==="function")Z=G.call(H,Z,Z);J.items.push(V.createPair(Z,null,U))}return J}}O.tag="tag:yaml.org,2002:set";var _={collection:"map",identify:(Y)=>Y instanceof Set,nodeClass:O,default:!1,tag:"tag:yaml.org,2002:set",createNode:(Y,H,U)=>O.from(Y,H,U),resolve(Y,H){if(W.isMap(Y))if(Y.hasAllNullValues(!0))return Object.assign(new O,Y);else H("Set items must all have null values");else H("Expected a mapping for this tag");return Y}};$.YAMLSet=O,$.set=_}),MZ=C(($)=>{var W=W0();function V(H,U){let G=H[0],J=G==="-"||G==="+"?H.substring(1):H,Z=(z)=>U?BigInt(z):Number(z),X=J.replace(/_/g,"").split(":").reduce((z,Q)=>z*Z(60)+Z(Q),Z(0));return G==="-"?Z(-1)*X:X}function B(H){let{value:U}=H,G=(z)=>z;if(typeof U==="bigint")G=(z)=>BigInt(z);else if(isNaN(U)||!isFinite(U))return W.stringifyNumber(H);let J="";if(U<0)J="-",U*=G(-1);let Z=G(60),X=[U%Z];if(U<60)X.unshift(0);else if(U=(U-X[0])/Z,X.unshift(U%Z),U>=60)U=(U-X[0])/Z,X.unshift(U);return J+X.map((z)=>String(z).padStart(2,"0")).join(":").replace(/000000\\d*$/,"")}var O={identify:(H)=>typeof H==="bigint"||Number.isInteger(H),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(H,U,{intAsBigInt:G})=>V(H,G),stringify:B},_={identify:(H)=>typeof H==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*$/,resolve:(H)=>V(H,!1),stringify:B},Y={identify:(H)=>H instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\\\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\\\.[0-9]+)?)(?:[ \\\\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(H){let U=H.match(Y.test);if(!U)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,G,J,Z,X,z,Q]=U.map(Number),R=U[7]?Number((U[7]+"00").substr(1,3)):0,q=Date.UTC(G,J-1,Z,X||0,z||0,Q||0,R),K=U[8];if(K&&K!=="Z"){let F=V(K,!1);if(Math.abs(F)<30)F*=60;q-=60000*F}return new Date(q)},stringify:({value:H})=>H?.toISOString().replace(/(T00:00:00)?\\.000Z$/,"")??""};$.floatTime=_,$.intTime=O,$.timestamp=Y}),$5=C(($)=>{var W=J0(),V=b0(),B=U0(),O=A0(),_=jZ(),Y=tZ(),H=eZ(),U=Z5(),G=v0(),J=LZ(),Z=x0(),X=AZ(),z=MZ(),Q=[W.map,B.seq,O.string,V.nullTag,Y.trueTag,Y.falseTag,U.intBin,U.intOct,U.int,U.intHex,H.floatNaN,H.floatExp,H.float,_.binary,G.merge,J.omap,Z.pairs,X.set,z.intTime,z.floatTime,z.timestamp];$.schema=Q}),X5=C(($)=>{var W=J0(),V=b0(),B=U0(),O=A0(),_=OZ(),Y=KZ(),H=FZ(),U=sZ(),G=oZ(),J=jZ(),Z=v0(),X=LZ(),z=x0(),Q=$5(),R=AZ(),q=MZ(),K=new Map([["core",U.schema],["failsafe",[W.map,B.seq,O.string]],["json",G.schema],["yaml11",Q.schema],["yaml-1.1",Q.schema]]),F={binary:J.binary,bool:_.boolTag,float:Y.float,floatExp:Y.floatExp,floatNaN:Y.floatNaN,floatTime:q.floatTime,int:H.int,intHex:H.intHex,intOct:H.intOct,intTime:q.intTime,map:W.map,merge:Z.merge,null:V.nullTag,omap:X.omap,pairs:z.pairs,seq:B.seq,set:R.set,timestamp:q.timestamp},j={"tag:yaml.org,2002:binary":J.binary,"tag:yaml.org,2002:merge":Z.merge,"tag:yaml.org,2002:omap":X.omap,"tag:yaml.org,2002:pairs":z.pairs,"tag:yaml.org,2002:set":R.set,"tag:yaml.org,2002:timestamp":q.timestamp};function M(L,A,I){let T=K.get(A);if(T&&!L)return I&&!T.includes(Z.merge)?T.concat(Z.merge):T.slice();let N=T;if(!N)if(Array.isArray(L))N=[];else{let D=Array.from(K.keys()).filter((S)=>S!=="yaml11").map((S)=>JSON.stringify(S)).join(", ");throw Error(\`Unknown schema "\${A}"; use one of \${D} or define customTags array\`)}if(Array.isArray(L))for(let D of L)N=N.concat(D);else if(typeof L==="function")N=L(N.slice());if(I)N=N.concat(Z.merge);return N.reduce((D,S)=>{let w=typeof S==="string"?F[S]:S;if(!w){let y=JSON.stringify(S),v=Object.keys(F).map((g)=>JSON.stringify(g)).join(", ");throw Error(\`Unknown custom tag \${y}; use one of \${v}\`)}if(!D.includes(w))D.push(w);return D},[])}$.coreKnownTags=j,$.getTags=M}),DZ=C(($)=>{var W=P(),V=J0(),B=U0(),O=A0(),_=X5(),Y=(U,G)=>U.key<G.key?-1:U.key>G.key?1:0;class H{constructor({compat:U,customTags:G,merge:J,resolveKnownTags:Z,schema:X,sortMapEntries:z,toStringDefaults:Q}){this.compat=Array.isArray(U)?_.getTags(U,"compat"):U?_.getTags(null,U):null,this.name=typeof X==="string"&&X||"core",this.knownTags=Z?_.coreKnownTags:{},this.tags=_.getTags(G,this.name,J),this.toStringOptions=Q??null,Object.defineProperty(this,W.MAP,{value:V.map}),Object.defineProperty(this,W.SCALAR,{value:O.string}),Object.defineProperty(this,W.SEQ,{value:B.seq}),this.sortMapEntries=typeof z==="function"?z:z===!0?Y:null}clone(){let U=Object.create(H.prototype,Object.getOwnPropertyDescriptors(this));return U.tags=this.tags.slice(),U}}$.Schema=H}),G5=C(($)=>{var W=P(),V=L0(),B=F0();function O(_,Y){let H=[],U=Y.directives===!0;if(Y.directives!==!1&&_.directives){let z=_.directives.toString(_);if(z)H.push(z),U=!0;else if(_.directives.docStart)U=!0}if(U)H.push("---");let G=V.createStringifyContext(_,Y),{commentString:J}=G.options;if(_.commentBefore){if(H.length!==1)H.unshift("");let z=J(_.commentBefore);H.unshift(B.indentComment(z,""))}let Z=!1,X=null;if(_.contents){if(W.isNode(_.contents)){if(_.contents.spaceBefore&&U)H.push("");if(_.contents.commentBefore){let R=J(_.contents.commentBefore);H.push(B.indentComment(R,""))}G.forceBlockIndent=!!_.comment,X=_.contents.comment}let z=X?void 0:()=>Z=!0,Q=V.stringify(_.contents,G,()=>X=null,z);if(X)Q+=B.lineComment(Q,"",J(X));if((Q[0]==="|"||Q[0]===">")&&H[H.length-1]==="---")H[H.length-1]=\`--- \${Q}\`;else H.push(Q)}else H.push(V.stringify(_.contents,G));if(_.directives?.docEnd)if(_.comment){let z=J(_.comment);if(z.includes(\`
64153
64261
  \`))H.push("..."),H.push(B.indentComment(z,""));else H.push(\`... \${z}\`)}else H.push("...");else{let z=_.comment;if(z&&Z)z=z.replace(/^\\n+/,"");if(z){if((!Z||X)&&H[H.length-1]!=="")H.push("");H.push(B.indentComment(J(z),""))}}return H.join(\`
64154
64262
  \`)+\`
64155
- \`}$.stringifyDocument=O}),M0=C(($)=>{var W=O0(),V=g0(),B=P(),O=e(),_=t(),Y=DZ(),H=G5(),U=y0(),G=RZ(),J=K0(),Z=YZ();class X{constructor(Q,R,q){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,B.NODE_TYPE,{value:B.DOC});let K=null;if(typeof R==="function"||Array.isArray(R))K=R;else if(q===void 0&&R)q=R,R=void 0;let F=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},q);this.options=F;let{version:j}=F;if(q?._directives){if(this.directives=q._directives.atDocument(),this.directives.yaml.explicit)j=this.directives.yaml.version}else this.directives=new Z.Directives({version:j});this.setSchema(j,q),this.contents=Q===void 0?null:this.createNode(Q,K,q)}clone(){let Q=Object.create(X.prototype,{[B.NODE_TYPE]:{value:B.DOC}});if(Q.commentBefore=this.commentBefore,Q.comment=this.comment,Q.errors=this.errors.slice(),Q.warnings=this.warnings.slice(),Q.options=Object.assign({},this.options),this.directives)Q.directives=this.directives.clone();if(Q.schema=this.schema.clone(),Q.contents=B.isNode(this.contents)?this.contents.clone(Q.schema):this.contents,this.range)Q.range=this.range.slice();return Q}add(Q){if(z(this.contents))this.contents.add(Q)}addIn(Q,R){if(z(this.contents))this.contents.addIn(Q,R)}createAlias(Q,R){if(!Q.anchor){let q=U.anchorNames(this);Q.anchor=!R||q.has(R)?U.findNewAnchor(R||"a",q):R}return new W.Alias(Q.anchor)}createNode(Q,R,q){let K=void 0;if(typeof R==="function")Q=R.call({"":Q},"",Q),K=R;else if(Array.isArray(R)){let y=(g)=>typeof g==="number"||g instanceof String||g instanceof Number,v=R.filter(y).map(String);if(v.length>0)R=R.concat(v);K=R}else if(q===void 0&&R)q=R,R=void 0;let{aliasDuplicateObjects:F,anchorPrefix:j,flow:M,keepUndefined:L,onTagObj:A,tag:I}=q??{},{onAnchor:T,setAnchors:N,sourceObjects:D}=U.createNodeAnchors(this,j||"a"),w={aliasDuplicateObjects:F??!0,keepUndefined:L??!1,onAnchor:T,onTagObj:A,replacer:K,schema:this.schema,sourceObjects:D},S=J.createNode(Q,I,w);if(M&&B.isCollection(S))S.flow=!0;return N(),S}createPair(Q,R,q={}){let K=this.createNode(Q,null,q),F=this.createNode(R,null,q);return new O.Pair(K,F)}delete(Q){return z(this.contents)?this.contents.delete(Q):!1}deleteIn(Q){if(V.isEmptyPath(Q)){if(this.contents==null)return!1;return this.contents=null,!0}return z(this.contents)?this.contents.deleteIn(Q):!1}get(Q,R){return B.isCollection(this.contents)?this.contents.get(Q,R):void 0}getIn(Q,R){if(V.isEmptyPath(Q))return!R&&B.isScalar(this.contents)?this.contents.value:this.contents;return B.isCollection(this.contents)?this.contents.getIn(Q,R):void 0}has(Q){return B.isCollection(this.contents)?this.contents.has(Q):!1}hasIn(Q){if(V.isEmptyPath(Q))return this.contents!==void 0;return B.isCollection(this.contents)?this.contents.hasIn(Q):!1}set(Q,R){if(this.contents==null)this.contents=V.collectionFromPath(this.schema,[Q],R);else if(z(this.contents))this.contents.set(Q,R)}setIn(Q,R){if(V.isEmptyPath(Q))this.contents=R;else if(this.contents==null)this.contents=V.collectionFromPath(this.schema,Array.from(Q),R);else if(z(this.contents))this.contents.setIn(Q,R)}setSchema(Q,R={}){if(typeof Q==="number")Q=String(Q);let q;switch(Q){case"1.1":if(this.directives)this.directives.yaml.version="1.1";else this.directives=new Z.Directives({version:"1.1"});q={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":if(this.directives)this.directives.yaml.version=Q;else this.directives=new Z.Directives({version:Q});q={resolveKnownTags:!0,schema:"core"};break;case null:if(this.directives)delete this.directives;q=null;break;default:{let K=JSON.stringify(Q);throw Error(\`Expected '1.1', '1.2' or null as first argument, but found: \${K}\`)}}if(R.schema instanceof Object)this.schema=R.schema;else if(q)this.schema=new Y.Schema(Object.assign(q,R));else throw Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:Q,jsonArg:R,mapAsMap:q,maxAliasCount:K,onAnchor:F,reviver:j}={}){let M={anchors:new Map,doc:this,keep:!Q,mapAsMap:q===!0,mapKeyWarned:!1,maxAliasCount:typeof K==="number"?K:100},L=_.toJS(this.contents,R??"",M);if(typeof F==="function")for(let{count:A,res:I}of M.anchors.values())F(I,A);return typeof j==="function"?G.applyReviver(j,{"":L},"",L):L}toJSON(Q,R){return this.toJS({json:!0,jsonArg:Q,mapAsMap:!1,onAnchor:R})}toString(Q={}){if(this.errors.length>0)throw Error("Document with errors cannot be stringified");if("indent"in Q&&(!Number.isInteger(Q.indent)||Number(Q.indent)<=0)){let R=JSON.stringify(Q.indent);throw Error(\`"indent" option must be a positive integer, not \${R}\`)}return H.stringifyDocument(this,Q)}}function z(Q){if(B.isCollection(Q))return!0;throw Error("Expected a YAML collection as document contents")}$.Document=X}),D0=C(($)=>{class W extends Error{constructor(_,Y,H,U){super();this.name=_,this.code=H,this.message=U,this.pos=Y}}class V extends W{constructor(_,Y,H){super("YAMLParseError",_,Y,H)}}class B extends W{constructor(_,Y,H){super("YAMLWarning",_,Y,H)}}var O=(_,Y)=>(H)=>{if(H.pos[0]===-1)return;H.linePos=H.pos.map((X)=>Y.linePos(X));let{line:U,col:G}=H.linePos[0];H.message+=\` at line \${U}, column \${G}\`;let J=G-1,Z=_.substring(Y.lineStarts[U-1],Y.lineStarts[U]).replace(/[\\n\\r]+$/,"");if(J>=60&&Z.length>80){let X=Math.min(J-39,Z.length-79);Z="…"+Z.substring(X),J-=X-1}if(Z.length>80)Z=Z.substring(0,79)+"…";if(U>1&&/^ *$/.test(Z.substring(0,J))){let X=_.substring(Y.lineStarts[U-2],Y.lineStarts[U-1]);if(X.length>80)X=X.substring(0,79)+\`…
64263
+ \`}$.stringifyDocument=O}),M0=C(($)=>{var W=O0(),V=g0(),B=P(),O=e(),_=t(),Y=DZ(),H=G5(),U=y0(),G=RZ(),J=K0(),Z=YZ();class X{constructor(Q,R,q){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,B.NODE_TYPE,{value:B.DOC});let K=null;if(typeof R==="function"||Array.isArray(R))K=R;else if(q===void 0&&R)q=R,R=void 0;let F=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},q);this.options=F;let{version:j}=F;if(q?._directives){if(this.directives=q._directives.atDocument(),this.directives.yaml.explicit)j=this.directives.yaml.version}else this.directives=new Z.Directives({version:j});this.setSchema(j,q),this.contents=Q===void 0?null:this.createNode(Q,K,q)}clone(){let Q=Object.create(X.prototype,{[B.NODE_TYPE]:{value:B.DOC}});if(Q.commentBefore=this.commentBefore,Q.comment=this.comment,Q.errors=this.errors.slice(),Q.warnings=this.warnings.slice(),Q.options=Object.assign({},this.options),this.directives)Q.directives=this.directives.clone();if(Q.schema=this.schema.clone(),Q.contents=B.isNode(this.contents)?this.contents.clone(Q.schema):this.contents,this.range)Q.range=this.range.slice();return Q}add(Q){if(z(this.contents))this.contents.add(Q)}addIn(Q,R){if(z(this.contents))this.contents.addIn(Q,R)}createAlias(Q,R){if(!Q.anchor){let q=U.anchorNames(this);Q.anchor=!R||q.has(R)?U.findNewAnchor(R||"a",q):R}return new W.Alias(Q.anchor)}createNode(Q,R,q){let K=void 0;if(typeof R==="function")Q=R.call({"":Q},"",Q),K=R;else if(Array.isArray(R)){let y=(g)=>typeof g==="number"||g instanceof String||g instanceof Number,v=R.filter(y).map(String);if(v.length>0)R=R.concat(v);K=R}else if(q===void 0&&R)q=R,R=void 0;let{aliasDuplicateObjects:F,anchorPrefix:j,flow:M,keepUndefined:L,onTagObj:A,tag:I}=q??{},{onAnchor:T,setAnchors:N,sourceObjects:D}=U.createNodeAnchors(this,j||"a"),S={aliasDuplicateObjects:F??!0,keepUndefined:L??!1,onAnchor:T,onTagObj:A,replacer:K,schema:this.schema,sourceObjects:D},w=J.createNode(Q,I,S);if(M&&B.isCollection(w))w.flow=!0;return N(),w}createPair(Q,R,q={}){let K=this.createNode(Q,null,q),F=this.createNode(R,null,q);return new O.Pair(K,F)}delete(Q){return z(this.contents)?this.contents.delete(Q):!1}deleteIn(Q){if(V.isEmptyPath(Q)){if(this.contents==null)return!1;return this.contents=null,!0}return z(this.contents)?this.contents.deleteIn(Q):!1}get(Q,R){return B.isCollection(this.contents)?this.contents.get(Q,R):void 0}getIn(Q,R){if(V.isEmptyPath(Q))return!R&&B.isScalar(this.contents)?this.contents.value:this.contents;return B.isCollection(this.contents)?this.contents.getIn(Q,R):void 0}has(Q){return B.isCollection(this.contents)?this.contents.has(Q):!1}hasIn(Q){if(V.isEmptyPath(Q))return this.contents!==void 0;return B.isCollection(this.contents)?this.contents.hasIn(Q):!1}set(Q,R){if(this.contents==null)this.contents=V.collectionFromPath(this.schema,[Q],R);else if(z(this.contents))this.contents.set(Q,R)}setIn(Q,R){if(V.isEmptyPath(Q))this.contents=R;else if(this.contents==null)this.contents=V.collectionFromPath(this.schema,Array.from(Q),R);else if(z(this.contents))this.contents.setIn(Q,R)}setSchema(Q,R={}){if(typeof Q==="number")Q=String(Q);let q;switch(Q){case"1.1":if(this.directives)this.directives.yaml.version="1.1";else this.directives=new Z.Directives({version:"1.1"});q={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":if(this.directives)this.directives.yaml.version=Q;else this.directives=new Z.Directives({version:Q});q={resolveKnownTags:!0,schema:"core"};break;case null:if(this.directives)delete this.directives;q=null;break;default:{let K=JSON.stringify(Q);throw Error(\`Expected '1.1', '1.2' or null as first argument, but found: \${K}\`)}}if(R.schema instanceof Object)this.schema=R.schema;else if(q)this.schema=new Y.Schema(Object.assign(q,R));else throw Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:Q,jsonArg:R,mapAsMap:q,maxAliasCount:K,onAnchor:F,reviver:j}={}){let M={anchors:new Map,doc:this,keep:!Q,mapAsMap:q===!0,mapKeyWarned:!1,maxAliasCount:typeof K==="number"?K:100},L=_.toJS(this.contents,R??"",M);if(typeof F==="function")for(let{count:A,res:I}of M.anchors.values())F(I,A);return typeof j==="function"?G.applyReviver(j,{"":L},"",L):L}toJSON(Q,R){return this.toJS({json:!0,jsonArg:Q,mapAsMap:!1,onAnchor:R})}toString(Q={}){if(this.errors.length>0)throw Error("Document with errors cannot be stringified");if("indent"in Q&&(!Number.isInteger(Q.indent)||Number(Q.indent)<=0)){let R=JSON.stringify(Q.indent);throw Error(\`"indent" option must be a positive integer, not \${R}\`)}return H.stringifyDocument(this,Q)}}function z(Q){if(B.isCollection(Q))return!0;throw Error("Expected a YAML collection as document contents")}$.Document=X}),D0=C(($)=>{class W extends Error{constructor(_,Y,H,U){super();this.name=_,this.code=H,this.message=U,this.pos=Y}}class V extends W{constructor(_,Y,H){super("YAMLParseError",_,Y,H)}}class B extends W{constructor(_,Y,H){super("YAMLWarning",_,Y,H)}}var O=(_,Y)=>(H)=>{if(H.pos[0]===-1)return;H.linePos=H.pos.map((X)=>Y.linePos(X));let{line:U,col:G}=H.linePos[0];H.message+=\` at line \${U}, column \${G}\`;let J=G-1,Z=_.substring(Y.lineStarts[U-1],Y.lineStarts[U]).replace(/[\\n\\r]+$/,"");if(J>=60&&Z.length>80){let X=Math.min(J-39,Z.length-79);Z="…"+Z.substring(X),J-=X-1}if(Z.length>80)Z=Z.substring(0,79)+"…";if(U>1&&/^ *$/.test(Z.substring(0,J))){let X=_.substring(Y.lineStarts[U-2],Y.lineStarts[U-1]);if(X.length>80)X=X.substring(0,79)+\`…
64156
64264
  \`;Z=X+Z}if(/[^ ]/.test(Z)){let X=1,z=H.linePos[1];if(z?.line===U&&z.col>G)X=Math.max(1,Math.min(z.col-G,80-J));let Q=" ".repeat(J)+"^".repeat(X);H.message+=\`:
64157
64265
 
64158
64266
  \${Z}
64159
64267
  \${Q}
64160
- \`}};$.YAMLError=W,$.YAMLParseError=V,$.YAMLWarning=B,$.prettifyError=O}),I0=C(($)=>{function W(V,{flow:B,indicator:O,next:_,offset:Y,onError:H,parentIndent:U,startOnNewline:G}){let J=!1,Z=G,X=G,z="",Q="",R=!1,q=!1,K=null,F=null,j=null,M=null,L=null,A=null,I=null;for(let D of V){if(q){if(D.type!=="space"&&D.type!=="newline"&&D.type!=="comma")H(D.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");q=!1}if(K){if(Z&&D.type!=="comment"&&D.type!=="newline")H(K,"TAB_AS_INDENT","Tabs are not allowed as indentation");K=null}switch(D.type){case"space":if(!B&&(O!=="doc-start"||_?.type!=="flow-collection")&&D.source.includes("\\t"))K=D;X=!0;break;case"comment":{if(!X)H(D,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let w=D.source.substring(1)||" ";if(!z)z=w;else z+=Q+w;Q="",Z=!1;break}case"newline":if(Z){if(z)z+=D.source;else if(!A||O!=="seq-item-ind")J=!0}else Q+=D.source;if(Z=!0,R=!0,F||j)M=D;X=!0;break;case"anchor":if(F)H(D,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(D.source.endsWith(":"))H(D.offset+D.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0);F=D,I??(I=D.offset),Z=!1,X=!1,q=!0;break;case"tag":{if(j)H(D,"MULTIPLE_TAGS","A node can have at most one tag");j=D,I??(I=D.offset),Z=!1,X=!1,q=!0;break}case O:if(F||j)H(D,"BAD_PROP_ORDER",\`Anchors and tags must be after the \${D.source} indicator\`);if(A)H(D,"UNEXPECTED_TOKEN",\`Unexpected \${D.source} in \${B??"collection"}\`);A=D,Z=O==="seq-item-ind"||O==="explicit-key-ind",X=!1;break;case"comma":if(B){if(L)H(D,"UNEXPECTED_TOKEN",\`Unexpected , in \${B}\`);L=D,Z=!1,X=!1;break}default:H(D,"UNEXPECTED_TOKEN",\`Unexpected \${D.type} token\`),Z=!1,X=!1}}let T=V[V.length-1],N=T?T.offset+T.source.length:Y;if(q&&_&&_.type!=="space"&&_.type!=="newline"&&_.type!=="comma"&&(_.type!=="scalar"||_.source!==""))H(_.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");if(K&&(Z&&K.indent<=U||_?.type==="block-map"||_?.type==="block-seq"))H(K,"TAB_AS_INDENT","Tabs are not allowed as indentation");return{comma:L,found:A,spaceBefore:J,comment:z,hasNewline:R,anchor:F,tag:j,newlineAfterProp:M,end:N,start:I??N}}$.resolveProps=W}),h0=C(($)=>{function W(V){if(!V)return null;switch(V.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(V.source.includes(\`
64268
+ \`}};$.YAMLError=W,$.YAMLParseError=V,$.YAMLWarning=B,$.prettifyError=O}),I0=C(($)=>{function W(V,{flow:B,indicator:O,next:_,offset:Y,onError:H,parentIndent:U,startOnNewline:G}){let J=!1,Z=G,X=G,z="",Q="",R=!1,q=!1,K=null,F=null,j=null,M=null,L=null,A=null,I=null;for(let D of V){if(q){if(D.type!=="space"&&D.type!=="newline"&&D.type!=="comma")H(D.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");q=!1}if(K){if(Z&&D.type!=="comment"&&D.type!=="newline")H(K,"TAB_AS_INDENT","Tabs are not allowed as indentation");K=null}switch(D.type){case"space":if(!B&&(O!=="doc-start"||_?.type!=="flow-collection")&&D.source.includes("\\t"))K=D;X=!0;break;case"comment":{if(!X)H(D,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let S=D.source.substring(1)||" ";if(!z)z=S;else z+=Q+S;Q="",Z=!1;break}case"newline":if(Z){if(z)z+=D.source;else if(!A||O!=="seq-item-ind")J=!0}else Q+=D.source;if(Z=!0,R=!0,F||j)M=D;X=!0;break;case"anchor":if(F)H(D,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(D.source.endsWith(":"))H(D.offset+D.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0);F=D,I??(I=D.offset),Z=!1,X=!1,q=!0;break;case"tag":{if(j)H(D,"MULTIPLE_TAGS","A node can have at most one tag");j=D,I??(I=D.offset),Z=!1,X=!1,q=!0;break}case O:if(F||j)H(D,"BAD_PROP_ORDER",\`Anchors and tags must be after the \${D.source} indicator\`);if(A)H(D,"UNEXPECTED_TOKEN",\`Unexpected \${D.source} in \${B??"collection"}\`);A=D,Z=O==="seq-item-ind"||O==="explicit-key-ind",X=!1;break;case"comma":if(B){if(L)H(D,"UNEXPECTED_TOKEN",\`Unexpected , in \${B}\`);L=D,Z=!1,X=!1;break}default:H(D,"UNEXPECTED_TOKEN",\`Unexpected \${D.type} token\`),Z=!1,X=!1}}let T=V[V.length-1],N=T?T.offset+T.source.length:Y;if(q&&_&&_.type!=="space"&&_.type!=="newline"&&_.type!=="comma"&&(_.type!=="scalar"||_.source!==""))H(_.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");if(K&&(Z&&K.indent<=U||_?.type==="block-map"||_?.type==="block-seq"))H(K,"TAB_AS_INDENT","Tabs are not allowed as indentation");return{comma:L,found:A,spaceBefore:J,comment:z,hasNewline:R,anchor:F,tag:j,newlineAfterProp:M,end:N,start:I??N}}$.resolveProps=W}),h0=C(($)=>{function W(V){if(!V)return null;switch(V.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(V.source.includes(\`
64161
64269
  \`))return!0;if(V.end){for(let B of V.end)if(B.type==="newline")return!0}return!1;case"flow-collection":for(let B of V.items){for(let O of B.start)if(O.type==="newline")return!0;if(B.sep){for(let O of B.sep)if(O.type==="newline")return!0}if(W(B.key)||W(B.value))return!0}return!1;default:return!0}}$.containsNewline=W}),IZ=C(($)=>{var W=h0();function V(B,O,_){if(O?.type==="flow-collection"){let Y=O.end[0];if(Y.indent===B&&(Y.source==="]"||Y.source==="}")&&W.containsNewline(O))_(Y,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}$.flowIndentCheck=V}),TZ=C(($)=>{var W=P();function V(B,O,_){let{uniqueKeys:Y}=B.options;if(Y===!1)return!1;let H=typeof Y==="function"?Y:(U,G)=>U===G||W.isScalar(U)&&W.isScalar(G)&&U.value===G.value;return O.some((U)=>H(U.key,_))}$.mapIncludes=V}),z5=C(($)=>{var W=e(),V=Z0(),B=I0(),O=h0(),_=IZ(),Y=TZ(),H="All mapping items must start at the same column";function U({composeNode:G,composeEmptyNode:J},Z,X,z,Q){let q=new(Q?.nodeClass??V.YAMLMap)(Z.schema);if(Z.atRoot)Z.atRoot=!1;let K=X.offset,F=null;for(let j of X.items){let{start:M,key:L,sep:A,value:I}=j,T=B.resolveProps(M,{indicator:"explicit-key-ind",next:L??A?.[0],offset:K,onError:z,parentIndent:X.indent,startOnNewline:!0}),N=!T.found;if(N){if(L){if(L.type==="block-seq")z(K,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key");else if("indent"in L&&L.indent!==X.indent)z(K,"BAD_INDENT",H)}if(!T.anchor&&!T.tag&&!A){if(F=T.end,T.comment)if(q.comment)q.comment+=\`
64162
- \`+T.comment;else q.comment=T.comment;continue}if(T.newlineAfterProp||O.containsNewline(L))z(L??M[M.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else if(T.found?.indent!==X.indent)z(K,"BAD_INDENT",H);Z.atKey=!0;let D=T.end,w=L?G(Z,L,T,z):J(Z,D,M,null,T,z);if(Z.schema.compat)_.flowIndentCheck(X.indent,L,z);if(Z.atKey=!1,Y.mapIncludes(Z,q.items,w))z(D,"DUPLICATE_KEY","Map keys must be unique");let S=B.resolveProps(A??[],{indicator:"map-value-ind",next:I,offset:w.range[2],onError:z,parentIndent:X.indent,startOnNewline:!L||L.type==="block-scalar"});if(K=S.end,S.found){if(N){if(I?.type==="block-map"&&!S.hasNewline)z(K,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(Z.options.strict&&T.start<S.found.offset-1024)z(w.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key")}let y=I?G(Z,I,S,z):J(Z,K,A,null,S,z);if(Z.schema.compat)_.flowIndentCheck(X.indent,I,z);K=y.range[2];let v=new W.Pair(w,y);if(Z.options.keepSourceTokens)v.srcToken=j;q.items.push(v)}else{if(N)z(w.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(S.comment)if(w.comment)w.comment+=\`
64163
- \`+S.comment;else w.comment=S.comment;let y=new W.Pair(w);if(Z.options.keepSourceTokens)y.srcToken=j;q.items.push(y)}}if(F&&F<K)z(F,"IMPOSSIBLE","Map comment with trailing content");return q.range=[X.offset,K,F??K],q}$.resolveBlockMap=U}),Q5=C(($)=>{var W=$0(),V=I0(),B=IZ();function O({composeNode:_,composeEmptyNode:Y},H,U,G,J){let X=new(J?.nodeClass??W.YAMLSeq)(H.schema);if(H.atRoot)H.atRoot=!1;if(H.atKey)H.atKey=!1;let z=U.offset,Q=null;for(let{start:R,value:q}of U.items){let K=V.resolveProps(R,{indicator:"seq-item-ind",next:q,offset:z,onError:G,parentIndent:U.indent,startOnNewline:!0});if(!K.found)if(K.anchor||K.tag||q)if(q?.type==="block-seq")G(K.end,"BAD_INDENT","All sequence items must start at the same column");else G(z,"MISSING_CHAR","Sequence item without - indicator");else{if(Q=K.end,K.comment)X.comment=K.comment;continue}let F=q?_(H,q,K,G):Y(H,K.end,R,null,K,G);if(H.schema.compat)B.flowIndentCheck(U.indent,q,G);z=F.range[2],X.items.push(F)}return X.range=[U.offset,z,Q??z],X}$.resolveBlockSeq=O}),H0=C(($)=>{function W(V,B,O,_){let Y="";if(V){let H=!1,U="";for(let G of V){let{source:J,type:Z}=G;switch(Z){case"space":H=!0;break;case"comment":{if(O&&!H)_(G,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let X=J.substring(1)||" ";if(!Y)Y=X;else Y+=U+X;U="";break}case"newline":if(Y)U+=J;H=!0;break;default:_(G,"UNEXPECTED_TOKEN",\`Unexpected \${Z} at node end\`)}B+=J.length}}return{comment:Y,offset:B}}$.resolveEnd=W}),J5=C(($)=>{var W=P(),V=e(),B=Z0(),O=$0(),_=H0(),Y=I0(),H=h0(),U=TZ(),G="Block collections are not allowed within flow collections",J=(X)=>X&&(X.type==="block-map"||X.type==="block-seq");function Z({composeNode:X,composeEmptyNode:z},Q,R,q,K){let F=R.start.source==="{",j=F?"flow map":"flow sequence",L=new(K?.nodeClass??(F?B.YAMLMap:O.YAMLSeq))(Q.schema);L.flow=!0;let A=Q.atRoot;if(A)Q.atRoot=!1;if(Q.atKey)Q.atKey=!1;let I=R.offset+R.start.source.length;for(let S=0;S<R.items.length;++S){let y=R.items[S],{start:v,key:g,sep:p,value:b}=y,E=Y.resolveProps(v,{flow:j,indicator:"explicit-key-ind",next:g??p?.[0],offset:I,onError:q,parentIndent:R.indent,startOnNewline:!1});if(!E.found){if(!E.anchor&&!E.tag&&!p&&!b){if(S===0&&E.comma)q(E.comma,"UNEXPECTED_TOKEN",\`Unexpected , in \${j}\`);else if(S<R.items.length-1)q(E.start,"UNEXPECTED_TOKEN",\`Unexpected empty item in \${j}\`);if(E.comment)if(L.comment)L.comment+=\`
64164
- \`+E.comment;else L.comment=E.comment;I=E.end;continue}if(!F&&Q.options.strict&&H.containsNewline(g))q(g,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(S===0){if(E.comma)q(E.comma,"UNEXPECTED_TOKEN",\`Unexpected , in \${j}\`)}else{if(!E.comma)q(E.start,"MISSING_CHAR",\`Missing , between \${j} items\`);if(E.comment){let h="";Z:for(let f of v)switch(f.type){case"comma":case"space":break;case"comment":h=f.source.substring(1);break Z;default:break Z}if(h){let f=L.items[L.items.length-1];if(W.isPair(f))f=f.value??f.key;if(f.comment)f.comment+=\`
64270
+ \`+T.comment;else q.comment=T.comment;continue}if(T.newlineAfterProp||O.containsNewline(L))z(L??M[M.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else if(T.found?.indent!==X.indent)z(K,"BAD_INDENT",H);Z.atKey=!0;let D=T.end,S=L?G(Z,L,T,z):J(Z,D,M,null,T,z);if(Z.schema.compat)_.flowIndentCheck(X.indent,L,z);if(Z.atKey=!1,Y.mapIncludes(Z,q.items,S))z(D,"DUPLICATE_KEY","Map keys must be unique");let w=B.resolveProps(A??[],{indicator:"map-value-ind",next:I,offset:S.range[2],onError:z,parentIndent:X.indent,startOnNewline:!L||L.type==="block-scalar"});if(K=w.end,w.found){if(N){if(I?.type==="block-map"&&!w.hasNewline)z(K,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(Z.options.strict&&T.start<w.found.offset-1024)z(S.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key")}let y=I?G(Z,I,w,z):J(Z,K,A,null,w,z);if(Z.schema.compat)_.flowIndentCheck(X.indent,I,z);K=y.range[2];let v=new W.Pair(S,y);if(Z.options.keepSourceTokens)v.srcToken=j;q.items.push(v)}else{if(N)z(S.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(w.comment)if(S.comment)S.comment+=\`
64271
+ \`+w.comment;else S.comment=w.comment;let y=new W.Pair(S);if(Z.options.keepSourceTokens)y.srcToken=j;q.items.push(y)}}if(F&&F<K)z(F,"IMPOSSIBLE","Map comment with trailing content");return q.range=[X.offset,K,F??K],q}$.resolveBlockMap=U}),Q5=C(($)=>{var W=$0(),V=I0(),B=IZ();function O({composeNode:_,composeEmptyNode:Y},H,U,G,J){let X=new(J?.nodeClass??W.YAMLSeq)(H.schema);if(H.atRoot)H.atRoot=!1;if(H.atKey)H.atKey=!1;let z=U.offset,Q=null;for(let{start:R,value:q}of U.items){let K=V.resolveProps(R,{indicator:"seq-item-ind",next:q,offset:z,onError:G,parentIndent:U.indent,startOnNewline:!0});if(!K.found)if(K.anchor||K.tag||q)if(q?.type==="block-seq")G(K.end,"BAD_INDENT","All sequence items must start at the same column");else G(z,"MISSING_CHAR","Sequence item without - indicator");else{if(Q=K.end,K.comment)X.comment=K.comment;continue}let F=q?_(H,q,K,G):Y(H,K.end,R,null,K,G);if(H.schema.compat)B.flowIndentCheck(U.indent,q,G);z=F.range[2],X.items.push(F)}return X.range=[U.offset,z,Q??z],X}$.resolveBlockSeq=O}),H0=C(($)=>{function W(V,B,O,_){let Y="";if(V){let H=!1,U="";for(let G of V){let{source:J,type:Z}=G;switch(Z){case"space":H=!0;break;case"comment":{if(O&&!H)_(G,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let X=J.substring(1)||" ";if(!Y)Y=X;else Y+=U+X;U="";break}case"newline":if(Y)U+=J;H=!0;break;default:_(G,"UNEXPECTED_TOKEN",\`Unexpected \${Z} at node end\`)}B+=J.length}}return{comment:Y,offset:B}}$.resolveEnd=W}),J5=C(($)=>{var W=P(),V=e(),B=Z0(),O=$0(),_=H0(),Y=I0(),H=h0(),U=TZ(),G="Block collections are not allowed within flow collections",J=(X)=>X&&(X.type==="block-map"||X.type==="block-seq");function Z({composeNode:X,composeEmptyNode:z},Q,R,q,K){let F=R.start.source==="{",j=F?"flow map":"flow sequence",L=new(K?.nodeClass??(F?B.YAMLMap:O.YAMLSeq))(Q.schema);L.flow=!0;let A=Q.atRoot;if(A)Q.atRoot=!1;if(Q.atKey)Q.atKey=!1;let I=R.offset+R.start.source.length;for(let w=0;w<R.items.length;++w){let y=R.items[w],{start:v,key:g,sep:p,value:b}=y,E=Y.resolveProps(v,{flow:j,indicator:"explicit-key-ind",next:g??p?.[0],offset:I,onError:q,parentIndent:R.indent,startOnNewline:!1});if(!E.found){if(!E.anchor&&!E.tag&&!p&&!b){if(w===0&&E.comma)q(E.comma,"UNEXPECTED_TOKEN",\`Unexpected , in \${j}\`);else if(w<R.items.length-1)q(E.start,"UNEXPECTED_TOKEN",\`Unexpected empty item in \${j}\`);if(E.comment)if(L.comment)L.comment+=\`
64272
+ \`+E.comment;else L.comment=E.comment;I=E.end;continue}if(!F&&Q.options.strict&&H.containsNewline(g))q(g,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(w===0){if(E.comma)q(E.comma,"UNEXPECTED_TOKEN",\`Unexpected , in \${j}\`)}else{if(!E.comma)q(E.start,"MISSING_CHAR",\`Missing , between \${j} items\`);if(E.comment){let h="";Z:for(let f of v)switch(f.type){case"comma":case"space":break;case"comment":h=f.source.substring(1);break Z;default:break Z}if(h){let f=L.items[L.items.length-1];if(W.isPair(f))f=f.value??f.key;if(f.comment)f.comment+=\`
64165
64273
  \`+h;else f.comment=h;E.comment=E.comment.substring(h.length+1)}}}if(!F&&!p&&!E.found){let h=b?X(Q,b,E,q):z(Q,E.end,p,null,E,q);if(L.items.push(h),I=h.range[2],J(b))q(h.range,"BLOCK_IN_FLOW",G)}else{Q.atKey=!0;let h=E.end,f=g?X(Q,g,E,q):z(Q,h,v,null,E,q);if(J(g))q(f.range,"BLOCK_IN_FLOW",G);Q.atKey=!1;let u=Y.resolveProps(p??[],{flow:j,indicator:"map-value-ind",next:b,offset:f.range[2],onError:q,parentIndent:R.indent,startOnNewline:!1});if(u.found){if(!F&&!E.found&&Q.options.strict){if(p)for(let d of p){if(d===u.found)break;if(d.type==="newline"){q(d,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}if(E.start<u.found.offset-1024)q(u.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else if(b)if("source"in b&&b.source?.[0]===":")q(b,"MISSING_CHAR",\`Missing space after : in \${j}\`);else q(u.start,"MISSING_CHAR",\`Missing , or : between \${j} items\`);let X0=b?X(Q,b,u,q):u.found?z(Q,u.end,p,null,u,q):null;if(X0){if(J(b))q(X0.range,"BLOCK_IN_FLOW",G)}else if(u.comment)if(f.comment)f.comment+=\`
64166
- \`+u.comment;else f.comment=u.comment;let w0=new V.Pair(f,X0);if(Q.options.keepSourceTokens)w0.srcToken=y;if(F){let d=L;if(U.mapIncludes(Q,d.items,f))q(h,"DUPLICATE_KEY","Map keys must be unique");d.items.push(w0)}else{let d=new B.YAMLMap(Q.schema);d.flow=!0,d.items.push(w0);let r0=(X0??f).range;d.range=[f.range[0],r0[1],r0[2]],L.items.push(d)}I=X0?X0.range[2]:u.end}}let T=F?"}":"]",[N,...D]=R.end,w=I;if(N?.source===T)w=N.offset+N.source.length;else{let S=j[0].toUpperCase()+j.substring(1),y=A?\`\${S} must end with a \${T}\`:\`\${S} in block collection must be sufficiently indented and end with a \${T}\`;if(q(I,A?"MISSING_CHAR":"BAD_INDENT",y),N&&N.source.length!==1)D.unshift(N)}if(D.length>0){let S=_.resolveEnd(D,w,Q.options.strict,q);if(S.comment)if(L.comment)L.comment+=\`
64167
- \`+S.comment;else L.comment=S.comment;L.range=[R.offset,w,S.offset]}else L.range=[R.offset,w,w];return L}$.resolveFlowCollection=Z}),U5=C(($)=>{var W=P(),V=x(),B=Z0(),O=$0(),_=z5(),Y=Q5(),H=J5();function U(J,Z,X,z,Q,R){let q=X.type==="block-map"?_.resolveBlockMap(J,Z,X,z,R):X.type==="block-seq"?Y.resolveBlockSeq(J,Z,X,z,R):H.resolveFlowCollection(J,Z,X,z,R),K=q.constructor;if(Q==="!"||Q===K.tagName)return q.tag=K.tagName,q;if(Q)q.tag=Q;return q}function G(J,Z,X,z,Q){let R=z.tag,q=!R?null:Z.directives.tagName(R.source,(A)=>Q(R,"TAG_RESOLVE_FAILED",A));if(X.type==="block-seq"){let{anchor:A,newlineAfterProp:I}=z,T=A&&R?A.offset>R.offset?A:R:A??R;if(T&&(!I||I.offset<T.offset))Q(T,"MISSING_CHAR","Missing newline after block sequence props")}let K=X.type==="block-map"?"map":X.type==="block-seq"?"seq":X.start.source==="{"?"map":"seq";if(!R||!q||q==="!"||q===B.YAMLMap.tagName&&K==="map"||q===O.YAMLSeq.tagName&&K==="seq")return U(J,Z,X,Q,q);let F=Z.schema.tags.find((A)=>A.tag===q&&A.collection===K);if(!F){let A=Z.schema.knownTags[q];if(A?.collection===K)Z.schema.tags.push(Object.assign({},A,{default:!1})),F=A;else{if(A)Q(R,"BAD_COLLECTION_TYPE",\`\${A.tag} used for \${K} collection, but expects \${A.collection??"scalar"}\`,!0);else Q(R,"TAG_RESOLVE_FAILED",\`Unresolved tag: \${q}\`,!0);return U(J,Z,X,Q,q)}}let j=U(J,Z,X,Q,q,F),M=F.resolve?.(j,(A)=>Q(R,"TAG_RESOLVE_FAILED",A),Z.options)??j,L=W.isNode(M)?M:new V.Scalar(M);if(L.range=j.range,L.tag=q,F?.format)L.format=F.format;return L}$.composeCollection=G}),NZ=C(($)=>{var W=x();function V(_,Y,H){let U=Y.offset,G=B(Y,_.options.strict,H);if(!G)return{value:"",type:null,comment:"",range:[U,U,U]};let J=G.mode===">"?W.Scalar.BLOCK_FOLDED:W.Scalar.BLOCK_LITERAL,Z=Y.source?O(Y.source):[],X=Z.length;for(let M=Z.length-1;M>=0;--M){let L=Z[M][1];if(L===""||L==="\\r")X=M;else break}if(X===0){let M=G.chomp==="+"&&Z.length>0?\`
64274
+ \`+u.comment;else f.comment=u.comment;let S0=new V.Pair(f,X0);if(Q.options.keepSourceTokens)S0.srcToken=y;if(F){let d=L;if(U.mapIncludes(Q,d.items,f))q(h,"DUPLICATE_KEY","Map keys must be unique");d.items.push(S0)}else{let d=new B.YAMLMap(Q.schema);d.flow=!0,d.items.push(S0);let r0=(X0??f).range;d.range=[f.range[0],r0[1],r0[2]],L.items.push(d)}I=X0?X0.range[2]:u.end}}let T=F?"}":"]",[N,...D]=R.end,S=I;if(N?.source===T)S=N.offset+N.source.length;else{let w=j[0].toUpperCase()+j.substring(1),y=A?\`\${w} must end with a \${T}\`:\`\${w} in block collection must be sufficiently indented and end with a \${T}\`;if(q(I,A?"MISSING_CHAR":"BAD_INDENT",y),N&&N.source.length!==1)D.unshift(N)}if(D.length>0){let w=_.resolveEnd(D,S,Q.options.strict,q);if(w.comment)if(L.comment)L.comment+=\`
64275
+ \`+w.comment;else L.comment=w.comment;L.range=[R.offset,S,w.offset]}else L.range=[R.offset,S,S];return L}$.resolveFlowCollection=Z}),U5=C(($)=>{var W=P(),V=x(),B=Z0(),O=$0(),_=z5(),Y=Q5(),H=J5();function U(J,Z,X,z,Q,R){let q=X.type==="block-map"?_.resolveBlockMap(J,Z,X,z,R):X.type==="block-seq"?Y.resolveBlockSeq(J,Z,X,z,R):H.resolveFlowCollection(J,Z,X,z,R),K=q.constructor;if(Q==="!"||Q===K.tagName)return q.tag=K.tagName,q;if(Q)q.tag=Q;return q}function G(J,Z,X,z,Q){let R=z.tag,q=!R?null:Z.directives.tagName(R.source,(A)=>Q(R,"TAG_RESOLVE_FAILED",A));if(X.type==="block-seq"){let{anchor:A,newlineAfterProp:I}=z,T=A&&R?A.offset>R.offset?A:R:A??R;if(T&&(!I||I.offset<T.offset))Q(T,"MISSING_CHAR","Missing newline after block sequence props")}let K=X.type==="block-map"?"map":X.type==="block-seq"?"seq":X.start.source==="{"?"map":"seq";if(!R||!q||q==="!"||q===B.YAMLMap.tagName&&K==="map"||q===O.YAMLSeq.tagName&&K==="seq")return U(J,Z,X,Q,q);let F=Z.schema.tags.find((A)=>A.tag===q&&A.collection===K);if(!F){let A=Z.schema.knownTags[q];if(A?.collection===K)Z.schema.tags.push(Object.assign({},A,{default:!1})),F=A;else{if(A)Q(R,"BAD_COLLECTION_TYPE",\`\${A.tag} used for \${K} collection, but expects \${A.collection??"scalar"}\`,!0);else Q(R,"TAG_RESOLVE_FAILED",\`Unresolved tag: \${q}\`,!0);return U(J,Z,X,Q,q)}}let j=U(J,Z,X,Q,q,F),M=F.resolve?.(j,(A)=>Q(R,"TAG_RESOLVE_FAILED",A),Z.options)??j,L=W.isNode(M)?M:new V.Scalar(M);if(L.range=j.range,L.tag=q,F?.format)L.format=F.format;return L}$.composeCollection=G}),NZ=C(($)=>{var W=x();function V(_,Y,H){let U=Y.offset,G=B(Y,_.options.strict,H);if(!G)return{value:"",type:null,comment:"",range:[U,U,U]};let J=G.mode===">"?W.Scalar.BLOCK_FOLDED:W.Scalar.BLOCK_LITERAL,Z=Y.source?O(Y.source):[],X=Z.length;for(let M=Z.length-1;M>=0;--M){let L=Z[M][1];if(L===""||L==="\\r")X=M;else break}if(X===0){let M=G.chomp==="+"&&Z.length>0?\`
64168
64276
  \`.repeat(Math.max(1,Z.length-1)):"",L=U+G.length;if(Y.source)L+=Y.source.length;return{value:M,type:J,comment:G.comment,range:[U,L,L]}}let z=Y.indent+G.indent,Q=Y.offset+G.length,R=0;for(let M=0;M<X;++M){let[L,A]=Z[M];if(A===""||A==="\\r"){if(G.indent===0&&L.length>z)z=L.length}else{if(L.length<z)H(Q+L.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator");if(G.indent===0)z=L.length;if(R=M,z===0&&!_.atRoot)H(Q,"BAD_INDENT","Block scalar values in collections must be indented");break}Q+=L.length+A.length+1}for(let M=Z.length-1;M>=X;--M)if(Z[M][0].length>z)X=M+1;let q="",K="",F=!1;for(let M=0;M<R;++M)q+=Z[M][0].slice(z)+\`
64169
64277
  \`;for(let M=R;M<X;++M){let[L,A]=Z[M];Q+=L.length+A.length+1;let I=A[A.length-1]==="\\r";if(I)A=A.slice(0,-1);if(A&&L.length<z){let N=\`Block scalar lines must not be less indented than their \${G.indent?"explicit indentation indicator":"first line"}\`;H(Q-A.length-(I?2:1),"BAD_INDENT",N),L=""}if(J===W.Scalar.BLOCK_LITERAL)q+=K+L.slice(z)+A,K=\`
64170
64278
  \`;else if(L.length>z||A[0]==="\\t"){if(K===" ")K=\`
@@ -64194,7 +64302,7 @@ $&\`).replace(/(?:^|\\n)([\\t ].*)(?:([\\n\\t ]*)\\n(?![\\n\\t ]))?/g,"$1$2").re
64194
64302
  \`)break;if(Q===\`
64195
64303
  \`)z+=\`
64196
64304
  \`;X+=1,Q=Z[X+1]}if(!z)z=" ";return{fold:z,offset:X}}var G={"0":"\\x00",a:"\\x07",b:"\\b",e:"\\x1B",f:"\\f",n:\`
64197
- \`,r:"\\r",t:"\\t",v:"\\v",N:"…",_:" ",L:"\\u2028",P:"\\u2029"," ":" ",'"':'"',"/":"/","\\\\":"\\\\","\\t":"\\t"};function J(Z,X,z,Q){let R=Z.substr(X,z),K=R.length===z&&/^[0-9a-fA-F]+$/.test(R)?parseInt(R,16):NaN;if(isNaN(K)){let F=Z.substr(X-2,z+2);return Q(X-2,"BAD_DQ_ESCAPE",\`Invalid escape sequence \${F}\`),F}return String.fromCodePoint(K)}$.resolveFlowScalar=B}),W5=C(($)=>{var W=P(),V=x(),B=NZ(),O=CZ();function _(U,G,J,Z){let{value:X,type:z,comment:Q,range:R}=G.type==="block-scalar"?B.resolveBlockScalar(U,G,Z):O.resolveFlowScalar(G,U.options.strict,Z),q=J?U.directives.tagName(J.source,(j)=>Z(J,"TAG_RESOLVE_FAILED",j)):null,K;if(U.options.stringKeys&&U.atKey)K=U.schema[W.SCALAR];else if(q)K=Y(U.schema,X,q,J,Z);else if(G.type==="scalar")K=H(U,X,G,Z);else K=U.schema[W.SCALAR];let F;try{let j=K.resolve(X,(M)=>Z(J??G,"TAG_RESOLVE_FAILED",M),U.options);F=W.isScalar(j)?j:new V.Scalar(j)}catch(j){let M=j instanceof Error?j.message:String(j);Z(J??G,"TAG_RESOLVE_FAILED",M),F=new V.Scalar(X)}if(F.range=R,F.source=X,z)F.type=z;if(q)F.tag=q;if(K.format)F.format=K.format;if(Q)F.comment=Q;return F}function Y(U,G,J,Z,X){if(J==="!")return U[W.SCALAR];let z=[];for(let R of U.tags)if(!R.collection&&R.tag===J)if(R.default&&R.test)z.push(R);else return R;for(let R of z)if(R.test?.test(G))return R;let Q=U.knownTags[J];if(Q&&!Q.collection)return U.tags.push(Object.assign({},Q,{default:!1,test:void 0})),Q;return X(Z,"TAG_RESOLVE_FAILED",\`Unresolved tag: \${J}\`,J!=="tag:yaml.org,2002:str"),U[W.SCALAR]}function H({atKey:U,directives:G,schema:J},Z,X,z){let Q=J.tags.find((R)=>(R.default===!0||U&&R.default==="key")&&R.test?.test(Z))||J[W.SCALAR];if(J.compat){let R=J.compat.find((q)=>q.default&&q.test?.test(Z))??J[W.SCALAR];if(Q.tag!==R.tag){let q=G.tagString(Q.tag),K=G.tagString(R.tag),F=\`Value may be parsed as either \${q} or \${K}\`;z(X,"TAG_RESOLVE_FAILED",F,!0)}}return Q}$.composeScalar=_}),H5=C(($)=>{function W(V,B,O){if(B){O??(O=B.length);for(let _=O-1;_>=0;--_){let Y=B[_];switch(Y.type){case"space":case"comment":case"newline":V-=Y.source.length;continue}Y=B[++_];while(Y?.type==="space")V+=Y.source.length,Y=B[++_];break}}return V}$.emptyScalarPosition=W}),V5=C(($)=>{var W=O0(),V=P(),B=U5(),O=W5(),_=H0(),Y=H5(),H={composeNode:U,composeEmptyNode:G};function U(Z,X,z,Q){let R=Z.atKey,{spaceBefore:q,comment:K,anchor:F,tag:j}=z,M,L=!0;switch(X.type){case"alias":if(M=J(Z,X,Q),F||j)Q(X,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":if(M=O.composeScalar(Z,X,j,Q),F)M.anchor=F.source.substring(1);break;case"block-map":case"block-seq":case"flow-collection":if(M=B.composeCollection(H,Z,X,z,Q),F)M.anchor=F.source.substring(1);break;default:{let A=X.type==="error"?X.message:\`Unsupported token (type: \${X.type})\`;Q(X,"UNEXPECTED_TOKEN",A),M=G(Z,X.offset,void 0,null,z,Q),L=!1}}if(F&&M.anchor==="")Q(F,"BAD_ALIAS","Anchor cannot be an empty string");if(R&&Z.options.stringKeys&&(!V.isScalar(M)||typeof M.value!=="string"||M.tag&&M.tag!=="tag:yaml.org,2002:str"))Q(j??X,"NON_STRING_KEY","With stringKeys, all keys must be strings");if(q)M.spaceBefore=!0;if(K)if(X.type==="scalar"&&X.source==="")M.comment=K;else M.commentBefore=K;if(Z.options.keepSourceTokens&&L)M.srcToken=X;return M}function G(Z,X,z,Q,{spaceBefore:R,comment:q,anchor:K,tag:F,end:j},M){let L={type:"scalar",offset:Y.emptyScalarPosition(X,z,Q),indent:-1,source:""},A=O.composeScalar(Z,L,F,M);if(K){if(A.anchor=K.source.substring(1),A.anchor==="")M(K,"BAD_ALIAS","Anchor cannot be an empty string")}if(R)A.spaceBefore=!0;if(q)A.comment=q,A.range[2]=j;return A}function J({options:Z},{offset:X,source:z,end:Q},R){let q=new W.Alias(z.substring(1));if(q.source==="")R(X,"BAD_ALIAS","Alias cannot be an empty string");if(q.source.endsWith(":"))R(X+z.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let K=X+z.length,F=_.resolveEnd(Q,K,Z.strict,R);if(q.range=[X,K,F.offset],F.comment)q.comment=F.comment;return q}$.composeEmptyNode=G,$.composeNode=U}),Y5=C(($)=>{var W=M0(),V=V5(),B=H0(),O=I0();function _(Y,H,{offset:U,start:G,value:J,end:Z},X){let z=Object.assign({_directives:H},Y),Q=new W.Document(void 0,z),R={atKey:!1,atRoot:!0,directives:Q.directives,options:Q.options,schema:Q.schema},q=O.resolveProps(G,{indicator:"doc-start",next:J??Z?.[0],offset:U,onError:X,parentIndent:0,startOnNewline:!0});if(q.found){if(Q.directives.docStart=!0,J&&(J.type==="block-map"||J.type==="block-seq")&&!q.hasNewline)X(q.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")}Q.contents=J?V.composeNode(R,J,q,X):V.composeEmptyNode(R,q.end,G,null,q,X);let K=Q.contents.range[2],F=B.resolveEnd(Z,K,!1,X);if(F.comment)Q.comment=F.comment;return Q.range=[U,K,F.offset],Q}$.composeDoc=_}),wZ=C(($)=>{var W=_0("process"),V=YZ(),B=M0(),O=D0(),_=P(),Y=Y5(),H=H0();function U(Z){if(typeof Z==="number")return[Z,Z+1];if(Array.isArray(Z))return Z.length===2?Z:[Z[0],Z[1]];let{offset:X,source:z}=Z;return[X,X+(typeof z==="string"?z.length:1)]}function G(Z){let X="",z=!1,Q=!1;for(let R=0;R<Z.length;++R){let q=Z[R];switch(q[0]){case"#":X+=(X===""?"":Q?\`
64305
+ \`,r:"\\r",t:"\\t",v:"\\v",N:"…",_:" ",L:"\\u2028",P:"\\u2029"," ":" ",'"':'"',"/":"/","\\\\":"\\\\","\\t":"\\t"};function J(Z,X,z,Q){let R=Z.substr(X,z),K=R.length===z&&/^[0-9a-fA-F]+$/.test(R)?parseInt(R,16):NaN;if(isNaN(K)){let F=Z.substr(X-2,z+2);return Q(X-2,"BAD_DQ_ESCAPE",\`Invalid escape sequence \${F}\`),F}return String.fromCodePoint(K)}$.resolveFlowScalar=B}),W5=C(($)=>{var W=P(),V=x(),B=NZ(),O=CZ();function _(U,G,J,Z){let{value:X,type:z,comment:Q,range:R}=G.type==="block-scalar"?B.resolveBlockScalar(U,G,Z):O.resolveFlowScalar(G,U.options.strict,Z),q=J?U.directives.tagName(J.source,(j)=>Z(J,"TAG_RESOLVE_FAILED",j)):null,K;if(U.options.stringKeys&&U.atKey)K=U.schema[W.SCALAR];else if(q)K=Y(U.schema,X,q,J,Z);else if(G.type==="scalar")K=H(U,X,G,Z);else K=U.schema[W.SCALAR];let F;try{let j=K.resolve(X,(M)=>Z(J??G,"TAG_RESOLVE_FAILED",M),U.options);F=W.isScalar(j)?j:new V.Scalar(j)}catch(j){let M=j instanceof Error?j.message:String(j);Z(J??G,"TAG_RESOLVE_FAILED",M),F=new V.Scalar(X)}if(F.range=R,F.source=X,z)F.type=z;if(q)F.tag=q;if(K.format)F.format=K.format;if(Q)F.comment=Q;return F}function Y(U,G,J,Z,X){if(J==="!")return U[W.SCALAR];let z=[];for(let R of U.tags)if(!R.collection&&R.tag===J)if(R.default&&R.test)z.push(R);else return R;for(let R of z)if(R.test?.test(G))return R;let Q=U.knownTags[J];if(Q&&!Q.collection)return U.tags.push(Object.assign({},Q,{default:!1,test:void 0})),Q;return X(Z,"TAG_RESOLVE_FAILED",\`Unresolved tag: \${J}\`,J!=="tag:yaml.org,2002:str"),U[W.SCALAR]}function H({atKey:U,directives:G,schema:J},Z,X,z){let Q=J.tags.find((R)=>(R.default===!0||U&&R.default==="key")&&R.test?.test(Z))||J[W.SCALAR];if(J.compat){let R=J.compat.find((q)=>q.default&&q.test?.test(Z))??J[W.SCALAR];if(Q.tag!==R.tag){let q=G.tagString(Q.tag),K=G.tagString(R.tag),F=\`Value may be parsed as either \${q} or \${K}\`;z(X,"TAG_RESOLVE_FAILED",F,!0)}}return Q}$.composeScalar=_}),H5=C(($)=>{function W(V,B,O){if(B){O??(O=B.length);for(let _=O-1;_>=0;--_){let Y=B[_];switch(Y.type){case"space":case"comment":case"newline":V-=Y.source.length;continue}Y=B[++_];while(Y?.type==="space")V+=Y.source.length,Y=B[++_];break}}return V}$.emptyScalarPosition=W}),V5=C(($)=>{var W=O0(),V=P(),B=U5(),O=W5(),_=H0(),Y=H5(),H={composeNode:U,composeEmptyNode:G};function U(Z,X,z,Q){let R=Z.atKey,{spaceBefore:q,comment:K,anchor:F,tag:j}=z,M,L=!0;switch(X.type){case"alias":if(M=J(Z,X,Q),F||j)Q(X,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":if(M=O.composeScalar(Z,X,j,Q),F)M.anchor=F.source.substring(1);break;case"block-map":case"block-seq":case"flow-collection":if(M=B.composeCollection(H,Z,X,z,Q),F)M.anchor=F.source.substring(1);break;default:{let A=X.type==="error"?X.message:\`Unsupported token (type: \${X.type})\`;Q(X,"UNEXPECTED_TOKEN",A),M=G(Z,X.offset,void 0,null,z,Q),L=!1}}if(F&&M.anchor==="")Q(F,"BAD_ALIAS","Anchor cannot be an empty string");if(R&&Z.options.stringKeys&&(!V.isScalar(M)||typeof M.value!=="string"||M.tag&&M.tag!=="tag:yaml.org,2002:str"))Q(j??X,"NON_STRING_KEY","With stringKeys, all keys must be strings");if(q)M.spaceBefore=!0;if(K)if(X.type==="scalar"&&X.source==="")M.comment=K;else M.commentBefore=K;if(Z.options.keepSourceTokens&&L)M.srcToken=X;return M}function G(Z,X,z,Q,{spaceBefore:R,comment:q,anchor:K,tag:F,end:j},M){let L={type:"scalar",offset:Y.emptyScalarPosition(X,z,Q),indent:-1,source:""},A=O.composeScalar(Z,L,F,M);if(K){if(A.anchor=K.source.substring(1),A.anchor==="")M(K,"BAD_ALIAS","Anchor cannot be an empty string")}if(R)A.spaceBefore=!0;if(q)A.comment=q,A.range[2]=j;return A}function J({options:Z},{offset:X,source:z,end:Q},R){let q=new W.Alias(z.substring(1));if(q.source==="")R(X,"BAD_ALIAS","Alias cannot be an empty string");if(q.source.endsWith(":"))R(X+z.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let K=X+z.length,F=_.resolveEnd(Q,K,Z.strict,R);if(q.range=[X,K,F.offset],F.comment)q.comment=F.comment;return q}$.composeEmptyNode=G,$.composeNode=U}),Y5=C(($)=>{var W=M0(),V=V5(),B=H0(),O=I0();function _(Y,H,{offset:U,start:G,value:J,end:Z},X){let z=Object.assign({_directives:H},Y),Q=new W.Document(void 0,z),R={atKey:!1,atRoot:!0,directives:Q.directives,options:Q.options,schema:Q.schema},q=O.resolveProps(G,{indicator:"doc-start",next:J??Z?.[0],offset:U,onError:X,parentIndent:0,startOnNewline:!0});if(q.found){if(Q.directives.docStart=!0,J&&(J.type==="block-map"||J.type==="block-seq")&&!q.hasNewline)X(q.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")}Q.contents=J?V.composeNode(R,J,q,X):V.composeEmptyNode(R,q.end,G,null,q,X);let K=Q.contents.range[2],F=B.resolveEnd(Z,K,!1,X);if(F.comment)Q.comment=F.comment;return Q.range=[U,K,F.offset],Q}$.composeDoc=_}),SZ=C(($)=>{var W=_0("process"),V=YZ(),B=M0(),O=D0(),_=P(),Y=Y5(),H=H0();function U(Z){if(typeof Z==="number")return[Z,Z+1];if(Array.isArray(Z))return Z.length===2?Z:[Z[0],Z[1]];let{offset:X,source:z}=Z;return[X,X+(typeof z==="string"?z.length:1)]}function G(Z){let X="",z=!1,Q=!1;for(let R=0;R<Z.length;++R){let q=Z[R];switch(q[0]){case"#":X+=(X===""?"":Q?\`
64198
64306
 
64199
64307
  \`:\`
64200
64308
  \`)+(q.substring(1)||" "),z=!0,Q=!1;break;case"%":if(Z[R+1]?.[0]!=="#")R+=1;z=!1;break;default:if(!z)Q=!0;z=!1}}return{comment:X,afterEmptyLine:Q}}class J{constructor(Z={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(X,z,Q,R)=>{let q=U(X);if(R)this.warnings.push(new O.YAMLWarning(q,z,Q));else this.errors.push(new O.YAMLParseError(q,z,Q))},this.directives=new V.Directives({version:Z.version||"1.2"}),this.options=Z}decorate(Z,X){let{comment:z,afterEmptyLine:Q}=G(this.prelude);if(z){let R=Z.contents;if(X)Z.comment=Z.comment?\`\${Z.comment}
@@ -64211,7 +64319,7 @@ $&\`).replace(/(?:^|\\n)([\\t ].*)(?:([\\n\\t ]*)\\n(?![\\n\\t ]))?/g,"$1$2").re
64211
64319
  \`});for(let j of Object.keys(Z))if(j!=="type"&&j!=="offset")delete Z[j];Object.assign(Z,{type:"block-scalar",indent:K,props:F,source:R})}}function G(Z,X){if(X)for(let z of X)switch(z.type){case"space":case"comment":Z.push(z);break;case"newline":return Z.push(z),!0}return!1}function J(Z,X,z){switch(Z.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":Z.type=z,Z.source=X;break;case"block-scalar":{let Q=Z.props.slice(1),R=X.length;if(Z.props[0].type==="block-scalar-header")R-=Z.props[0].source.length;for(let q of Q)q.offset+=R;delete Z.props,Object.assign(Z,{type:z,source:X,end:Q});break}case"block-map":case"block-seq":{let R={type:"newline",offset:Z.offset+X.length,indent:Z.indent,source:\`
64212
64320
  \`};delete Z.items,Object.assign(Z,{type:z,source:X,end:[R]});break}default:{let Q="indent"in Z?Z.indent:-1,R="end"in Z&&Array.isArray(Z.end)?Z.end.filter((q)=>q.type==="space"||q.type==="comment"||q.type==="newline"):[];for(let q of Object.keys(Z))if(q!=="type"&&q!=="offset")delete Z[q];Object.assign(Z,{type:z,indent:Q,source:X,end:R})}}}$.createScalarToken=Y,$.resolveAsScalar=_,$.setScalarValue=H}),B5=C(($)=>{var W=(O)=>("type"in O)?V(O):B(O);function V(O){switch(O.type){case"block-scalar":{let _="";for(let Y of O.props)_+=V(Y);return _+O.source}case"block-map":case"block-seq":{let _="";for(let Y of O.items)_+=B(Y);return _}case"flow-collection":{let _=O.start.source;for(let Y of O.items)_+=B(Y);for(let Y of O.end)_+=Y.source;return _}case"document":{let _=B(O);if(O.end)for(let Y of O.end)_+=Y.source;return _}default:{let _=O.source;if("end"in O&&O.end)for(let Y of O.end)_+=Y.source;return _}}}function B({start:O,key:_,sep:Y,value:H}){let U="";for(let G of O)U+=G.source;if(_)U+=V(_);if(Y)for(let G of Y)U+=G.source;if(H)U+=V(H);return U}$.stringify=W}),_5=C(($)=>{var W=Symbol("break visit"),V=Symbol("skip children"),B=Symbol("remove item");function O(Y,H){if("type"in Y&&Y.type==="document")Y={start:Y.start,value:Y.value};_(Object.freeze([]),Y,H)}O.BREAK=W,O.SKIP=V,O.REMOVE=B,O.itemAtPath=(Y,H)=>{let U=Y;for(let[G,J]of H){let Z=U?.[G];if(Z&&"items"in Z)U=Z.items[J];else return}return U},O.parentCollection=(Y,H)=>{let U=O.itemAtPath(Y,H.slice(0,-1)),G=H[H.length-1][0],J=U?.[G];if(J&&"items"in J)return J;throw Error("Parent collection not found")};function _(Y,H,U){let G=U(H,Y);if(typeof G==="symbol")return G;for(let J of["key","value"]){let Z=H[J];if(Z&&"items"in Z){for(let X=0;X<Z.items.length;++X){let z=_(Object.freeze(Y.concat([[J,X]])),Z.items[X],U);if(typeof z==="number")X=z-1;else if(z===W)return W;else if(z===B)Z.items.splice(X,1),X-=1}if(typeof G==="function"&&J==="key")G=G(H,Y)}}return typeof G==="function"?G(H,Y):G}$.visit=O}),u0=C(($)=>{var W=R5(),V=B5(),B=_5(),O="\\uFEFF",_="\\x02",Y="\\x18",H="\\x1F",U=(X)=>!!X&&("items"in X),G=(X)=>!!X&&(X.type==="scalar"||X.type==="single-quoted-scalar"||X.type==="double-quoted-scalar"||X.type==="block-scalar");function J(X){switch(X){case O:return"<BOM>";case _:return"<DOC>";case Y:return"<FLOW_END>";case H:return"<SCALAR>";default:return JSON.stringify(X)}}function Z(X){switch(X){case O:return"byte-order-mark";case _:return"doc-mode";case Y:return"flow-error-end";case H:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case\`
64213
64321
  \`:case\`\\r
64214
- \`:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(X[0]){case" ":case"\\t":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}$.createScalarToken=W.createScalarToken,$.resolveAsScalar=W.resolveAsScalar,$.setScalarValue=W.setScalarValue,$.stringify=V.stringify,$.visit=B.visit,$.BOM=O,$.DOCUMENT=_,$.FLOW_END=Y,$.SCALAR=H,$.isCollection=U,$.isScalar=G,$.prettyToken=J,$.tokenType=Z}),SZ=C(($)=>{var W=u0();function V(G){switch(G){case void 0:case" ":case\`
64322
+ \`:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(X[0]){case" ":case"\\t":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}$.createScalarToken=W.createScalarToken,$.resolveAsScalar=W.resolveAsScalar,$.setScalarValue=W.setScalarValue,$.stringify=V.stringify,$.visit=B.visit,$.BOM=O,$.DOCUMENT=_,$.FLOW_END=Y,$.SCALAR=H,$.isCollection=U,$.isScalar=G,$.prettyToken=J,$.tokenType=Z}),wZ=C(($)=>{var W=u0();function V(G){switch(G){case void 0:case" ":case\`
64215
64323
  \`:case"\\r":case"\\t":return!0;default:return!1}}var B=new Set("0123456789ABCDEFabcdef"),O=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),_=new Set(",[]{}"),Y=new Set(\` ,[]{}
64216
64324
  \\r \`),H=(G)=>!G||Y.has(G);class U{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(G,J=!1){if(G){if(typeof G!=="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+G:G,this.lineEndPos=null}this.atEnd=!J;let Z=this.next??"stream";while(Z&&(J||this.hasChars(1)))Z=yield*this.parseNext(Z)}atLineEnd(){let G=this.pos,J=this.buffer[G];while(J===" "||J==="\\t")J=this.buffer[++G];if(!J||J==="#"||J===\`
64217
64325
  \`)return!0;if(J==="\\r")return this.buffer[G+1]===\`
@@ -64230,11 +64338,11 @@ $&\`).replace(/(?:^|\\n)([\\t ].*)(?:([\\n\\t ]*)\\n(?![\\n\\t ]))?/g,"$1$2").re
64230
64338
  \`,z=this.buffer[Z+1];else J=Z;if(z==="#"||G&&_.has(z))break;if(X===\`
64231
64339
  \`){let Q=this.continueScalar(Z+1);if(Q===-1)break;Z=Math.max(Z,Q-2)}}else{if(G&&_.has(X))break;J=Z}if(!X&&!this.atEnd)return this.setNext("plain-scalar");return yield W.SCALAR,yield*this.pushToIndex(J+1,!0),G?"flow":"doc"}*pushCount(G){if(G>0)return yield this.buffer.substr(this.pos,G),this.pos+=G,G;return 0}*pushToIndex(G,J){let Z=this.buffer.slice(this.pos,G);if(Z)return yield Z,this.pos+=Z.length,Z.length;else if(J)yield"";return 0}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(H))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let G=this.flowLevel>0,J=this.charAt(1);if(V(J)||G&&_.has(J)){if(!G)this.indentNext=this.indentValue+1;else if(this.flowKey)this.flowKey=!1;return(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}}return 0}*pushTag(){if(this.charAt(1)==="<"){let G=this.pos+2,J=this.buffer[G];while(!V(J)&&J!==">")J=this.buffer[++G];return yield*this.pushToIndex(J===">"?G+1:G,!1)}else{let G=this.pos+1,J=this.buffer[G];while(J)if(O.has(J))J=this.buffer[++G];else if(J==="%"&&B.has(this.buffer[G+1])&&B.has(this.buffer[G+2]))J=this.buffer[G+=3];else break;return yield*this.pushToIndex(G,!1)}}*pushNewline(){let G=this.buffer[this.pos];if(G===\`
64232
64340
  \`)return yield*this.pushCount(1);else if(G==="\\r"&&this.charAt(1)===\`
64233
- \`)return yield*this.pushCount(2);else return 0}*pushSpaces(G){let J=this.pos-1,Z;do Z=this.buffer[++J];while(Z===" "||G&&Z==="\\t");let X=J-this.pos;if(X>0)yield this.buffer.substr(this.pos,X),this.pos=J;return X}*pushUntil(G){let J=this.pos,Z=this.buffer[J];while(!G(Z))Z=this.buffer[++J];return yield*this.pushToIndex(J,!1)}}$.Lexer=U}),EZ=C(($)=>{class W{constructor(){this.lineStarts=[],this.addNewLine=(V)=>this.lineStarts.push(V),this.linePos=(V)=>{let B=0,O=this.lineStarts.length;while(B<O){let Y=B+O>>1;if(this.lineStarts[Y]<V)B=Y+1;else O=Y}if(this.lineStarts[B]===V)return{line:B+1,col:1};if(B===0)return{line:0,col:V};let _=this.lineStarts[B-1];return{line:B,col:V-_+1}}}}$.LineCounter=W}),PZ=C(($)=>{var W=_0("process"),V=u0(),B=SZ();function O(Z,X){for(let z=0;z<Z.length;++z)if(Z[z].type===X)return!0;return!1}function _(Z){for(let X=0;X<Z.length;++X)switch(Z[X].type){case"space":case"comment":case"newline":break;default:return X}return-1}function Y(Z){switch(Z?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function H(Z){switch(Z.type){case"document":return Z.start;case"block-map":{let X=Z.items[Z.items.length-1];return X.sep??X.start}case"block-seq":return Z.items[Z.items.length-1].start;default:return[]}}function U(Z){if(Z.length===0)return[];let X=Z.length;Z:while(--X>=0)switch(Z[X].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break Z}while(Z[++X]?.type==="space");return Z.splice(X,Z.length)}function G(Z){if(Z.start.type==="flow-seq-start"){for(let X of Z.items)if(X.sep&&!X.value&&!O(X.start,"explicit-key-ind")&&!O(X.sep,"map-value-ind")){if(X.key)X.value=X.key;if(delete X.key,Y(X.value))if(X.value.end)Array.prototype.push.apply(X.value.end,X.sep);else X.value.end=X.sep;else Array.prototype.push.apply(X.start,X.sep);delete X.sep}}}class J{constructor(Z){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new B.Lexer,this.onNewLine=Z}*parse(Z,X=!1){if(this.onNewLine&&this.offset===0)this.onNewLine(0);for(let z of this.lexer.lex(Z,X))yield*this.next(z);if(!X)yield*this.end()}*next(Z){if(this.source=Z,W.env.LOG_TOKENS)console.log("|",V.prettyToken(Z));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=Z.length;return}let X=V.tokenType(Z);if(!X){let z=\`Not a YAML token: \${Z}\`;yield*this.pop({type:"error",offset:this.offset,message:z,source:Z}),this.offset+=Z.length}else if(X==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=X,yield*this.step(),X){case"newline":if(this.atNewLine=!0,this.indent=0,this.onNewLine)this.onNewLine(this.offset+Z.length);break;case"space":if(this.atNewLine&&Z[0]===" ")this.indent+=Z.length;break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":if(this.atNewLine)this.indent+=Z.length;break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=Z.length}}*end(){while(this.stack.length>0)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let Z=this.peek(1);if(this.type==="doc-end"&&Z?.type!=="doc-end"){while(this.stack.length>0)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!Z)return yield*this.stream();switch(Z.type){case"document":return yield*this.document(Z);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(Z);case"block-scalar":return yield*this.blockScalar(Z);case"block-map":return yield*this.blockMap(Z);case"block-seq":return yield*this.blockSequence(Z);case"flow-collection":return yield*this.flowCollection(Z);case"doc-end":return yield*this.documentEnd(Z)}yield*this.pop()}peek(Z){return this.stack[this.stack.length-Z]}*pop(Z){let X=Z??this.stack.pop();if(!X)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield X;else{let z=this.peek(1);if(X.type==="block-scalar")X.indent="indent"in z?z.indent:0;else if(X.type==="flow-collection"&&z.type==="document")X.indent=0;if(X.type==="flow-collection")G(X);switch(z.type){case"document":z.value=X;break;case"block-scalar":z.props.push(X);break;case"block-map":{let Q=z.items[z.items.length-1];if(Q.value){z.items.push({start:[],key:X,sep:[]}),this.onKeyLine=!0;return}else if(Q.sep)Q.value=X;else{Object.assign(Q,{key:X,sep:[]}),this.onKeyLine=!Q.explicitKey;return}break}case"block-seq":{let Q=z.items[z.items.length-1];if(Q.value)z.items.push({start:[],value:X});else Q.value=X;break}case"flow-collection":{let Q=z.items[z.items.length-1];if(!Q||Q.value)z.items.push({start:[],key:X,sep:[]});else if(Q.sep)Q.value=X;else Object.assign(Q,{key:X,sep:[]});return}default:yield*this.pop(),yield*this.pop(X)}if((z.type==="document"||z.type==="block-map"||z.type==="block-seq")&&(X.type==="block-map"||X.type==="block-seq")){let Q=X.items[X.items.length-1];if(Q&&!Q.sep&&!Q.value&&Q.start.length>0&&_(Q.start)===-1&&(X.indent===0||Q.start.every((R)=>R.type!=="comment"||R.indent<X.indent))){if(z.type==="document")z.end=Q.start;else z.items.push({start:Q.start});X.items.splice(-1,1)}}}}*stream(){switch(this.type){case"directive-line":yield{type:"directive",offset:this.offset,source:this.source};return;case"byte-order-mark":case"space":case"comment":case"newline":yield this.sourceToken;return;case"doc-mode":case"doc-start":{let Z={type:"document",offset:this.offset,start:[]};if(this.type==="doc-start")Z.start.push(this.sourceToken);this.stack.push(Z);return}}yield{type:"error",offset:this.offset,message:\`Unexpected \${this.type} token in YAML stream\`,source:this.source}}*document(Z){if(Z.value)return yield*this.lineEnd(Z);switch(this.type){case"doc-start":{if(_(Z.start)!==-1)yield*this.pop(),yield*this.step();else Z.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":Z.start.push(this.sourceToken);return}let X=this.startBlockValue(Z);if(X)this.stack.push(X);else yield{type:"error",offset:this.offset,message:\`Unexpected \${this.type} token in YAML document\`,source:this.source}}*scalar(Z){if(this.type==="map-value-ind"){let X=H(this.peek(2)),z=U(X),Q;if(Z.end)Q=Z.end,Q.push(this.sourceToken),delete Z.end;else Q=[this.sourceToken];let R={type:"block-map",offset:Z.offset,indent:Z.indent,items:[{start:z,key:Z,sep:Q}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=R}else yield*this.lineEnd(Z)}*blockScalar(Z){switch(this.type){case"space":case"comment":case"newline":Z.props.push(this.sourceToken);return;case"scalar":if(Z.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let X=this.source.indexOf(\`
64341
+ \`)return yield*this.pushCount(2);else return 0}*pushSpaces(G){let J=this.pos-1,Z;do Z=this.buffer[++J];while(Z===" "||G&&Z==="\\t");let X=J-this.pos;if(X>0)yield this.buffer.substr(this.pos,X),this.pos=J;return X}*pushUntil(G){let J=this.pos,Z=this.buffer[J];while(!G(Z))Z=this.buffer[++J];return yield*this.pushToIndex(J,!1)}}$.Lexer=U}),EZ=C(($)=>{class W{constructor(){this.lineStarts=[],this.addNewLine=(V)=>this.lineStarts.push(V),this.linePos=(V)=>{let B=0,O=this.lineStarts.length;while(B<O){let Y=B+O>>1;if(this.lineStarts[Y]<V)B=Y+1;else O=Y}if(this.lineStarts[B]===V)return{line:B+1,col:1};if(B===0)return{line:0,col:V};let _=this.lineStarts[B-1];return{line:B,col:V-_+1}}}}$.LineCounter=W}),PZ=C(($)=>{var W=_0("process"),V=u0(),B=wZ();function O(Z,X){for(let z=0;z<Z.length;++z)if(Z[z].type===X)return!0;return!1}function _(Z){for(let X=0;X<Z.length;++X)switch(Z[X].type){case"space":case"comment":case"newline":break;default:return X}return-1}function Y(Z){switch(Z?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function H(Z){switch(Z.type){case"document":return Z.start;case"block-map":{let X=Z.items[Z.items.length-1];return X.sep??X.start}case"block-seq":return Z.items[Z.items.length-1].start;default:return[]}}function U(Z){if(Z.length===0)return[];let X=Z.length;Z:while(--X>=0)switch(Z[X].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break Z}while(Z[++X]?.type==="space");return Z.splice(X,Z.length)}function G(Z){if(Z.start.type==="flow-seq-start"){for(let X of Z.items)if(X.sep&&!X.value&&!O(X.start,"explicit-key-ind")&&!O(X.sep,"map-value-ind")){if(X.key)X.value=X.key;if(delete X.key,Y(X.value))if(X.value.end)Array.prototype.push.apply(X.value.end,X.sep);else X.value.end=X.sep;else Array.prototype.push.apply(X.start,X.sep);delete X.sep}}}class J{constructor(Z){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new B.Lexer,this.onNewLine=Z}*parse(Z,X=!1){if(this.onNewLine&&this.offset===0)this.onNewLine(0);for(let z of this.lexer.lex(Z,X))yield*this.next(z);if(!X)yield*this.end()}*next(Z){if(this.source=Z,W.env.LOG_TOKENS)console.log("|",V.prettyToken(Z));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=Z.length;return}let X=V.tokenType(Z);if(!X){let z=\`Not a YAML token: \${Z}\`;yield*this.pop({type:"error",offset:this.offset,message:z,source:Z}),this.offset+=Z.length}else if(X==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=X,yield*this.step(),X){case"newline":if(this.atNewLine=!0,this.indent=0,this.onNewLine)this.onNewLine(this.offset+Z.length);break;case"space":if(this.atNewLine&&Z[0]===" ")this.indent+=Z.length;break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":if(this.atNewLine)this.indent+=Z.length;break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=Z.length}}*end(){while(this.stack.length>0)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let Z=this.peek(1);if(this.type==="doc-end"&&Z?.type!=="doc-end"){while(this.stack.length>0)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!Z)return yield*this.stream();switch(Z.type){case"document":return yield*this.document(Z);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(Z);case"block-scalar":return yield*this.blockScalar(Z);case"block-map":return yield*this.blockMap(Z);case"block-seq":return yield*this.blockSequence(Z);case"flow-collection":return yield*this.flowCollection(Z);case"doc-end":return yield*this.documentEnd(Z)}yield*this.pop()}peek(Z){return this.stack[this.stack.length-Z]}*pop(Z){let X=Z??this.stack.pop();if(!X)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield X;else{let z=this.peek(1);if(X.type==="block-scalar")X.indent="indent"in z?z.indent:0;else if(X.type==="flow-collection"&&z.type==="document")X.indent=0;if(X.type==="flow-collection")G(X);switch(z.type){case"document":z.value=X;break;case"block-scalar":z.props.push(X);break;case"block-map":{let Q=z.items[z.items.length-1];if(Q.value){z.items.push({start:[],key:X,sep:[]}),this.onKeyLine=!0;return}else if(Q.sep)Q.value=X;else{Object.assign(Q,{key:X,sep:[]}),this.onKeyLine=!Q.explicitKey;return}break}case"block-seq":{let Q=z.items[z.items.length-1];if(Q.value)z.items.push({start:[],value:X});else Q.value=X;break}case"flow-collection":{let Q=z.items[z.items.length-1];if(!Q||Q.value)z.items.push({start:[],key:X,sep:[]});else if(Q.sep)Q.value=X;else Object.assign(Q,{key:X,sep:[]});return}default:yield*this.pop(),yield*this.pop(X)}if((z.type==="document"||z.type==="block-map"||z.type==="block-seq")&&(X.type==="block-map"||X.type==="block-seq")){let Q=X.items[X.items.length-1];if(Q&&!Q.sep&&!Q.value&&Q.start.length>0&&_(Q.start)===-1&&(X.indent===0||Q.start.every((R)=>R.type!=="comment"||R.indent<X.indent))){if(z.type==="document")z.end=Q.start;else z.items.push({start:Q.start});X.items.splice(-1,1)}}}}*stream(){switch(this.type){case"directive-line":yield{type:"directive",offset:this.offset,source:this.source};return;case"byte-order-mark":case"space":case"comment":case"newline":yield this.sourceToken;return;case"doc-mode":case"doc-start":{let Z={type:"document",offset:this.offset,start:[]};if(this.type==="doc-start")Z.start.push(this.sourceToken);this.stack.push(Z);return}}yield{type:"error",offset:this.offset,message:\`Unexpected \${this.type} token in YAML stream\`,source:this.source}}*document(Z){if(Z.value)return yield*this.lineEnd(Z);switch(this.type){case"doc-start":{if(_(Z.start)!==-1)yield*this.pop(),yield*this.step();else Z.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":Z.start.push(this.sourceToken);return}let X=this.startBlockValue(Z);if(X)this.stack.push(X);else yield{type:"error",offset:this.offset,message:\`Unexpected \${this.type} token in YAML document\`,source:this.source}}*scalar(Z){if(this.type==="map-value-ind"){let X=H(this.peek(2)),z=U(X),Q;if(Z.end)Q=Z.end,Q.push(this.sourceToken),delete Z.end;else Q=[this.sourceToken];let R={type:"block-map",offset:Z.offset,indent:Z.indent,items:[{start:z,key:Z,sep:Q}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=R}else yield*this.lineEnd(Z)}*blockScalar(Z){switch(this.type){case"space":case"comment":case"newline":Z.props.push(this.sourceToken);return;case"scalar":if(Z.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let X=this.source.indexOf(\`
64234
64342
  \`)+1;while(X!==0)this.onNewLine(this.offset+X),X=this.source.indexOf(\`
64235
64343
  \`,X)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(Z){let X=Z.items[Z.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,X.value){let z="end"in X.value?X.value.end:void 0;if((Array.isArray(z)?z[z.length-1]:void 0)?.type==="comment")z?.push(this.sourceToken);else Z.items.push({start:[this.sourceToken]})}else if(X.sep)X.sep.push(this.sourceToken);else X.start.push(this.sourceToken);return;case"space":case"comment":if(X.value)Z.items.push({start:[this.sourceToken]});else if(X.sep)X.sep.push(this.sourceToken);else{if(this.atIndentedComment(X.start,Z.indent)){let Q=Z.items[Z.items.length-2]?.value?.end;if(Array.isArray(Q)){Array.prototype.push.apply(Q,X.start),Q.push(this.sourceToken),Z.items.pop();return}}X.start.push(this.sourceToken)}return}if(this.indent>=Z.indent){let z=!this.onKeyLine&&this.indent===Z.indent,Q=z&&(X.sep||X.explicitKey)&&this.type!=="seq-item-ind",R=[];if(Q&&X.sep&&!X.value){let q=[];for(let K=0;K<X.sep.length;++K){let F=X.sep[K];switch(F.type){case"newline":q.push(K);break;case"space":break;case"comment":if(F.indent>Z.indent)q.length=0;break;default:q.length=0}}if(q.length>=2)R=X.sep.splice(q[1])}switch(this.type){case"anchor":case"tag":if(Q||X.value)R.push(this.sourceToken),Z.items.push({start:R}),this.onKeyLine=!0;else if(X.sep)X.sep.push(this.sourceToken);else X.start.push(this.sourceToken);return;case"explicit-key-ind":if(!X.sep&&!X.explicitKey)X.start.push(this.sourceToken),X.explicitKey=!0;else if(Q||X.value)R.push(this.sourceToken),Z.items.push({start:R,explicitKey:!0});else this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]});this.onKeyLine=!0;return;case"map-value-ind":if(X.explicitKey)if(!X.sep)if(O(X.start,"newline"))Object.assign(X,{key:null,sep:[this.sourceToken]});else{let q=U(X.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:q,key:null,sep:[this.sourceToken]}]})}else if(X.value)Z.items.push({start:[],key:null,sep:[this.sourceToken]});else if(O(X.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:R,key:null,sep:[this.sourceToken]}]});else if(Y(X.key)&&!O(X.sep,"newline")){let q=U(X.start),K=X.key,F=X.sep;F.push(this.sourceToken),delete X.key,delete X.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:q,key:K,sep:F}]})}else if(R.length>0)X.sep=X.sep.concat(R,this.sourceToken);else X.sep.push(this.sourceToken);else if(!X.sep)Object.assign(X,{key:null,sep:[this.sourceToken]});else if(X.value||Q)Z.items.push({start:R,key:null,sep:[this.sourceToken]});else if(O(X.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]});else X.sep.push(this.sourceToken);this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let q=this.flowScalar(this.type);if(Q||X.value)Z.items.push({start:R,key:q,sep:[]}),this.onKeyLine=!0;else if(X.sep)this.stack.push(q);else Object.assign(X,{key:q,sep:[]}),this.onKeyLine=!0;return}default:{let q=this.startBlockValue(Z);if(q){if(q.type==="block-seq"){if(!X.explicitKey&&X.sep&&!O(X.sep,"newline")){yield*this.pop({type:"error",offset:this.offset,message:"Unexpected block-seq-ind on same line with key",source:this.source});return}}else if(z)Z.items.push({start:R});this.stack.push(q);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(Z){let X=Z.items[Z.items.length-1];switch(this.type){case"newline":if(X.value){let z="end"in X.value?X.value.end:void 0;if((Array.isArray(z)?z[z.length-1]:void 0)?.type==="comment")z?.push(this.sourceToken);else Z.items.push({start:[this.sourceToken]})}else X.start.push(this.sourceToken);return;case"space":case"comment":if(X.value)Z.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(X.start,Z.indent)){let Q=Z.items[Z.items.length-2]?.value?.end;if(Array.isArray(Q)){Array.prototype.push.apply(Q,X.start),Q.push(this.sourceToken),Z.items.pop();return}}X.start.push(this.sourceToken)}return;case"anchor":case"tag":if(X.value||this.indent<=Z.indent)break;X.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==Z.indent)break;if(X.value||O(X.start,"seq-item-ind"))Z.items.push({start:[this.sourceToken]});else X.start.push(this.sourceToken);return}if(this.indent>Z.indent){let z=this.startBlockValue(Z);if(z){this.stack.push(z);return}}yield*this.pop(),yield*this.step()}*flowCollection(Z){let X=Z.items[Z.items.length-1];if(this.type==="flow-error-end"){let z;do yield*this.pop(),z=this.peek(1);while(z?.type==="flow-collection")}else if(Z.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":if(!X||X.sep)Z.items.push({start:[this.sourceToken]});else X.start.push(this.sourceToken);return;case"map-value-ind":if(!X||X.value)Z.items.push({start:[],key:null,sep:[this.sourceToken]});else if(X.sep)X.sep.push(this.sourceToken);else Object.assign(X,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":if(!X||X.value)Z.items.push({start:[this.sourceToken]});else if(X.sep)X.sep.push(this.sourceToken);else X.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let Q=this.flowScalar(this.type);if(!X||X.value)Z.items.push({start:[],key:Q,sep:[]});else if(X.sep)this.stack.push(Q);else Object.assign(X,{key:Q,sep:[]});return}case"flow-map-end":case"flow-seq-end":Z.end.push(this.sourceToken);return}let z=this.startBlockValue(Z);if(z)this.stack.push(z);else yield*this.pop(),yield*this.step()}else{let z=this.peek(2);if(z.type==="block-map"&&(this.type==="map-value-ind"&&z.indent===Z.indent||this.type==="newline"&&!z.items[z.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&z.type!=="flow-collection"){let Q=H(z),R=U(Q);G(Z);let q=Z.end.splice(1,Z.end.length);q.push(this.sourceToken);let K={type:"block-map",offset:Z.offset,indent:Z.indent,items:[{start:R,key:Z,sep:q}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=K}else yield*this.lineEnd(Z)}}flowScalar(Z){if(this.onNewLine){let X=this.source.indexOf(\`
64236
64344
  \`)+1;while(X!==0)this.onNewLine(this.offset+X),X=this.source.indexOf(\`
64237
- \`,X)+1}return{type:Z,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(Z){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let X=H(Z),z=U(X);return z.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:z,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let X=H(Z),z=U(X);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:z,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(Z,X){if(this.type!=="comment")return!1;if(this.indent<=X)return!1;return Z.every((z)=>z.type==="newline"||z.type==="space")}*documentEnd(Z){if(this.type!=="doc-mode"){if(Z.end)Z.end.push(this.sourceToken);else Z.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}*lineEnd(Z){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:if(Z.end)Z.end.push(this.sourceToken);else Z.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}}$.Parser=J}),q5=C(($)=>{var W=wZ(),V=M0(),B=D0(),O=BZ(),_=P(),Y=EZ(),H=PZ();function U(z){let Q=z.prettyErrors!==!1;return{lineCounter:z.lineCounter||Q&&new Y.LineCounter||null,prettyErrors:Q}}function G(z,Q={}){let{lineCounter:R,prettyErrors:q}=U(Q),K=new H.Parser(R?.addNewLine),F=new W.Composer(Q),j=Array.from(F.compose(K.parse(z)));if(q&&R)for(let M of j)M.errors.forEach(B.prettifyError(z,R)),M.warnings.forEach(B.prettifyError(z,R));if(j.length>0)return j;return Object.assign([],{empty:!0},F.streamInfo())}function J(z,Q={}){let{lineCounter:R,prettyErrors:q}=U(Q),K=new H.Parser(R?.addNewLine),F=new W.Composer(Q),j=null;for(let M of F.compose(K.parse(z),!0,z.length))if(!j)j=M;else if(j.options.logLevel!=="silent"){j.errors.push(new B.YAMLParseError(M.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(q&&R)j.errors.forEach(B.prettifyError(z,R)),j.warnings.forEach(B.prettifyError(z,R));return j}function Z(z,Q,R){let q=void 0;if(typeof Q==="function")q=Q;else if(R===void 0&&Q&&typeof Q==="object")R=Q;let K=J(z,R);if(!K)return null;if(K.warnings.forEach((F)=>O.warn(K.options.logLevel,F)),K.errors.length>0)if(K.options.logLevel!=="silent")throw K.errors[0];else K.errors=[];return K.toJS(Object.assign({reviver:q},R))}function X(z,Q,R){let q=null;if(typeof Q==="function"||Array.isArray(Q))q=Q;else if(R===void 0&&Q)R=Q;if(typeof R==="string")R=R.length;if(typeof R==="number"){let K=Math.round(R);R=K<1?void 0:K>8?{indent:8}:{indent:K}}if(z===void 0){let{keepUndefined:K}=R??Q??{};if(!K)return}if(_.isDocument(z)&&!q)return z.toString(R);return new V.Document(z,q,R).toString(R)}$.parse=Z,$.parseAllDocuments=G,$.parseDocument=J,$.stringify=X});function F5($){$.exec(\`
64345
+ \`,X)+1}return{type:Z,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(Z){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let X=H(Z),z=U(X);return z.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:z,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let X=H(Z),z=U(X);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:z,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(Z,X){if(this.type!=="comment")return!1;if(this.indent<=X)return!1;return Z.every((z)=>z.type==="newline"||z.type==="space")}*documentEnd(Z){if(this.type!=="doc-mode"){if(Z.end)Z.end.push(this.sourceToken);else Z.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}*lineEnd(Z){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:if(Z.end)Z.end.push(this.sourceToken);else Z.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}}$.Parser=J}),q5=C(($)=>{var W=SZ(),V=M0(),B=D0(),O=BZ(),_=P(),Y=EZ(),H=PZ();function U(z){let Q=z.prettyErrors!==!1;return{lineCounter:z.lineCounter||Q&&new Y.LineCounter||null,prettyErrors:Q}}function G(z,Q={}){let{lineCounter:R,prettyErrors:q}=U(Q),K=new H.Parser(R?.addNewLine),F=new W.Composer(Q),j=Array.from(F.compose(K.parse(z)));if(q&&R)for(let M of j)M.errors.forEach(B.prettifyError(z,R)),M.warnings.forEach(B.prettifyError(z,R));if(j.length>0)return j;return Object.assign([],{empty:!0},F.streamInfo())}function J(z,Q={}){let{lineCounter:R,prettyErrors:q}=U(Q),K=new H.Parser(R?.addNewLine),F=new W.Composer(Q),j=null;for(let M of F.compose(K.parse(z),!0,z.length))if(!j)j=M;else if(j.options.logLevel!=="silent"){j.errors.push(new B.YAMLParseError(M.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(q&&R)j.errors.forEach(B.prettifyError(z,R)),j.warnings.forEach(B.prettifyError(z,R));return j}function Z(z,Q,R){let q=void 0;if(typeof Q==="function")q=Q;else if(R===void 0&&Q&&typeof Q==="object")R=Q;let K=J(z,R);if(!K)return null;if(K.warnings.forEach((F)=>O.warn(K.options.logLevel,F)),K.errors.length>0)if(K.options.logLevel!=="silent")throw K.errors[0];else K.errors=[];return K.toJS(Object.assign({reviver:q},R))}function X(z,Q,R){let q=null;if(typeof Q==="function"||Array.isArray(Q))q=Q;else if(R===void 0&&Q)R=Q;if(typeof R==="string")R=R.length;if(typeof R==="number"){let K=Math.round(R);R=K<1?void 0:K>8?{indent:8}:{indent:K}}if(z===void 0){let{keepUndefined:K}=R??Q??{};if(!K)return}if(_.isDocument(z)&&!q)return z.toString(R);return new V.Document(z,q,R).toString(R)}$.parse=Z,$.parseAllDocuments=G,$.parseDocument=J,$.stringify=X});function F5($){$.exec(\`
64238
64346
  CREATE TABLE IF NOT EXISTS schema_migrations (
64239
64347
  version INTEGER PRIMARY KEY,
64240
64348
  applied_at TEXT NOT NULL,
@@ -64467,7 +64575,7 @@ $&\`).replace(/(?:^|\\n)([\\t ].*)(?:([\\n\\t ]*)\\n(?![\\n\\t ]))?/g,"$1$2").re
64467
64575
  WHERE status = 'dead';
64468
64576
  \`)}function I5($,W,V){return $.prepare(\`PRAGMA table_info(\${W})\`).all().some((O)=>O.name===V)}function i($,W,V,B){if(!I5($,W,V))$.exec(\`ALTER TABLE \${W} ADD COLUMN \${V} \${B}\`)}function T5($){i($,"entities","canonical_name","TEXT"),i($,"entities","mentions","INTEGER DEFAULT 0"),i($,"entities","embedding","BLOB"),i($,"relations","mentions","INTEGER DEFAULT 1"),i($,"relations","confidence","REAL DEFAULT 0.5"),i($,"relations","updated_at","TEXT"),i($,"memory_entity_mentions","mention_text","TEXT"),i($,"memory_entity_mentions","confidence","REAL"),i($,"memory_entity_mentions","created_at","TEXT"),$.exec("CREATE INDEX IF NOT EXISTS idx_entities_canonical_name ON entities(canonical_name)"),$.exec("CREATE INDEX IF NOT EXISTS idx_relations_composite ON relations(source_entity_id, relation_type)")}function GZ($,W,V){return $.prepare(\`PRAGMA table_info(\${W})\`).all().some((O)=>O.name===V)}function N5($){if(!GZ($,"memories","idempotency_key"))$.exec("ALTER TABLE memories ADD COLUMN idempotency_key TEXT");if($.exec(\`CREATE UNIQUE INDEX IF NOT EXISTS idx_memories_idempotency_key
64469
64577
  ON memories(idempotency_key)
64470
- WHERE idempotency_key IS NOT NULL\`),!GZ($,"memories","runtime_path"))$.exec("ALTER TABLE memories ADD COLUMN runtime_path TEXT")}function C5($,W,V){return $.prepare(\`PRAGMA table_info(\${W})\`).all().some((O)=>O.name===V)}function w5($){if($.exec(\`
64578
+ WHERE idempotency_key IS NOT NULL\`),!GZ($,"memories","runtime_path"))$.exec("ALTER TABLE memories ADD COLUMN runtime_path TEXT")}function C5($,W,V){return $.prepare(\`PRAGMA table_info(\${W})\`).all().some((O)=>O.name===V)}function S5($){if($.exec(\`
64471
64579
  CREATE TABLE IF NOT EXISTS documents (
64472
64580
  id TEXT PRIMARY KEY,
64473
64581
  source_url TEXT,
@@ -64511,7 +64619,7 @@ $&\`).replace(/(?:^|\\n)([\\t ].*)(?:([\\n\\t ]*)\\n(?![\\n\\t ]))?/g,"$1$2").re
64511
64619
  updated_at TEXT NOT NULL
64512
64620
  )
64513
64621
  \`),$.exec(\`CREATE INDEX IF NOT EXISTS idx_connectors_provider
64514
- ON connectors(provider)\`),!C5($,"memory_jobs","document_id"))$.exec("ALTER TABLE memory_jobs ADD COLUMN document_id TEXT")}function S5($){if($.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name='embeddings'").all().length===0)return;$.exec(\`
64622
+ ON connectors(provider)\`),!C5($,"memory_jobs","document_id"))$.exec("ALTER TABLE memory_jobs ADD COLUMN document_id TEXT")}function w5($){if($.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name='embeddings'").all().length===0)return;$.exec(\`
64515
64623
  DELETE FROM embeddings
64516
64624
  WHERE rowid NOT IN (
64517
64625
  SELECT MIN(rowid) FROM embeddings
@@ -65558,7 +65666,7 @@ $&\`).replace(/(?:^|\\n)([\\t ].*)(?:([\\n\\t ]*)\\n(?![\\n\\t ]))?/g,"$1$2").re
65558
65666
  last_extract_at TEXT NOT NULL,
65559
65667
  PRIMARY KEY (session_key, agent_id)
65560
65668
  );
65561
- \`)}var HZ=[{version:1,name:"baseline",up:F5,artifacts:{tables:["memories","conversations","embeddings"]}},{version:2,name:"pipeline-v2",up:L5,artifacts:{tables:["memory_history","memory_jobs","entities","relations","memory_entity_mentions"]}},{version:3,name:"unique-content-hash",up:A5},{version:4,name:"history-actor-and-retention",up:D5,artifacts:{columns:[{table:"memory_history",column:"actor_type"}]}},{version:5,name:"graph-extended",up:T5,artifacts:{columns:[{table:"entities",column:"canonical_name"}]}},{version:6,name:"idempotency-key",up:N5,artifacts:{columns:[{table:"memories",column:"idempotency_key"}]}},{version:7,name:"documents-and-connectors",up:w5,artifacts:{tables:["documents","document_memories","connectors"]}},{version:8,name:"embeddings-unique-hash",up:S5},{version:9,name:"summary-jobs",up:E5,artifacts:{tables:["summary_jobs"]}},{version:10,name:"umap-cache",up:P5,artifacts:{tables:["umap_cache"]}},{version:11,name:"session-scores",up:k5,artifacts:{tables:["session_scores"]}},{version:12,name:"scheduled-tasks",up:y5,artifacts:{tables:["scheduled_tasks","task_runs"]}},{version:13,name:"ingestion-tracking",up:f5,artifacts:{tables:["ingestion_jobs"],columns:[{table:"memories",column:"source_path"},{table:"memories",column:"source_section"}]}},{version:14,name:"telemetry",up:g5,artifacts:{tables:["telemetry_events"]}},{version:15,name:"session-memories",up:v5,artifacts:{tables:["session_memories"],columns:[{table:"session_scores",column:"confidence"},{table:"session_scores",column:"continuity_reasoning"}]}},{version:16,name:"session-checkpoints",up:b5,artifacts:{tables:["session_checkpoints"]}},{version:17,name:"task-skills",up:x5,artifacts:{columns:[{table:"scheduled_tasks",column:"skill_name"}]}},{version:18,name:"skill-meta",up:h5,artifacts:{tables:["skill_meta"]}},{version:19,name:"knowledge-structure",up:u5,artifacts:{tables:["entity_aspects","entity_attributes","entity_dependencies","task_meta"],columns:[{table:"entities",column:"agent_id"}]}},{version:20,name:"predictor-comparisons",up:m5,artifacts:{tables:["predictor_comparisons","predictor_training_log"],columns:[{table:"session_memories",column:"entity_slot"},{table:"session_memories",column:"aspect_slot"},{table:"session_memories",column:"is_constraint"},{table:"session_memories",column:"structural_density"}]}},{version:21,name:"checkpoint-structural",up:p5,artifacts:{columns:[{table:"session_checkpoints",column:"focal_entity_ids"}]}},{version:22,name:"entity-pinning",up:d5,artifacts:{columns:[{table:"entities",column:"pinned"},{table:"entities",column:"pinned_at"}]}},{version:23,name:"predictor-columns",up:c5,artifacts:{columns:[{table:"session_memories",column:"predictor_rank"}]}},{version:24,name:"predictor-comparison-columns",up:i5,artifacts:{columns:[{table:"predictor_comparisons",column:"scorer_confidence"},{table:"predictor_comparisons",column:"success_rate"},{table:"predictor_comparisons",column:"predictor_top_ids"},{table:"predictor_comparisons",column:"baseline_top_ids"},{table:"predictor_comparisons",column:"relevance_scores"},{table:"predictor_comparisons",column:"fts_overlap_score"}]}},{version:25,name:"agent-feedback",up:a5,artifacts:{columns:[{table:"session_memories",column:"agent_relevance_score"}]}},{version:26,name:"predictor-training-pairs",up:n5,artifacts:{tables:["predictor_training_pairs"]}},{version:27,name:"backfill-canonical-names",up:r5},{version:28,name:"lossless-retention",up:s5},{version:29,name:"session-summary-dag",up:o5},{version:30,name:"nullable-memory-job-memory-id",up:t5},{version:31,name:"dependency-reason",up:e5,artifacts:{columns:[{table:"entity_dependencies",column:"reason"},{table:"entities",column:"last_synthesized_at"}]}},{version:32,name:"embeddings-vector-column",up:Z6,artifacts:{columns:[{table:"embeddings",column:"vector",optional:!0}]}},{version:33,name:"scope",up:$6,artifacts:{columns:[{table:"memories",column:"scope"}]}},{version:34,name:"scope-aware-dedup",up:X6},{version:35,name:"entity-fts",up:G6},{version:36,name:"dependency-confidence",up:z6,artifacts:{columns:[{table:"entity_dependencies",column:"confidence"}]}},{version:37,name:"entity-communities",up:Q6,artifacts:{tables:["entity_communities"],columns:[{table:"entities",column:"community_id"}]}},{version:38,name:"memory-hints",up:J6,artifacts:{tables:["memory_hints"]}},{version:39,name:"dedup-entity-dependencies",up:U6},{version:40,name:"session-transcripts",up:W6,artifacts:{tables:["session_transcripts"]}},{version:41,name:"path-feedback",up:V6,artifacts:{tables:["path_feedback_events","path_feedback_stats","entity_retrieval_stats","entity_cooccurrence","path_feedback_sessions"],columns:[{table:"session_memories",column:"path_json"}]}},{version:42,name:"session-memories-agent-id",up:Y6,artifacts:{columns:[{table:"session_memories",column:"agent_id"}]}},{version:43,name:"agents-table",up:R6,artifacts:{tables:["agents"],columns:[{table:"memories",column:"agent_id"},{table:"memories",column:"visibility"}]}},{version:44,name:"memory-md-temporal-head",up:B6,artifacts:{columns:[{table:"session_summaries",column:"source_type"},{table:"session_summaries",column:"source_ref"},{table:"session_summaries",column:"meta_json"}]}},{version:45,name:"lossless-working-memory-hardening",up:_6,artifacts:{tables:["session_transcripts_fts","memory_md_heads"],columns:[{table:"session_transcripts",column:"updated_at"},{table:"summary_jobs",column:"agent_id"},{table:"session_scores",column:"agent_id"}]}},{version:46,name:"session-summary-uniqueness",up:q6},{version:47,name:"agent-scoped-temporal-uniqueness",up:O6},{version:48,name:"thread-heads",up:K6,artifacts:{tables:["memory_thread_heads"]}},{version:49,name:"session-extract-cursors",up:F6,artifacts:{tables:["session_extract_cursors"]}}];var O8=HZ[HZ.length-1]?.version??0;var j6=K5(import.meta.url),K8=O5(j6);var L6=wZ(),A6=M0(),M6=DZ(),m0=D0(),D6=O0(),n=P(),I6=e(),T6=x(),N6=Z0(),C6=$0(),F8=u0(),w6=SZ(),S6=EZ(),E6=PZ(),T0=q5(),kZ=q0(),j8=L6.Composer,L8=A6.Document,A8=M6.Schema,M8=m0.YAMLError,D8=m0.YAMLParseError,I8=m0.YAMLWarning,T8=D6.Alias,N8=n.isAlias,C8=n.isCollection,w8=n.isDocument,S8=n.isMap,E8=n.isNode,P8=n.isPair,k8=n.isScalar,y8=n.isSeq,f8=I6.Pair,g8=T6.Scalar,v8=N6.YAMLMap,b8=C6.YAMLSeq,x8=w6.Lexer,h8=S6.LineCounter,u8=E6.Parser,m8=T0.parse,p8=T0.parseAllDocuments,d8=T0.parseDocument,l8=T0.stringify,c8=kZ.visit,i8=kZ.visitAsync,r8=k6(P6(),".agents");var y6=["none","ollama","claude-code","codex","opencode","anthropic","openrouter","command"];var s8=new Set(y6);var g6=null;try{g6=f6(import.meta.url)("@signet/native")}catch{}var yZ={agents:{path:"AGENTS.md",description:"Operational rules and behavioral settings",optional:!1},soul:{path:"SOUL.md",description:"Persona, character, and security settings",optional:!1},identity:{path:"IDENTITY.md",description:"Agent name, creature type, and vibe",optional:!1},user:{path:"USER.md",description:"User profile and preferences",optional:!1},heartbeat:{path:"HEARTBEAT.md",description:"Current working state, focus, and blockers",optional:!0},memory:{path:"MEMORY.md",description:"Memory index and summary",optional:!0},tools:{path:"TOOLS.md",description:"Tool preferences and notes",optional:!0},bootstrap:{path:"BOOTSTRAP.md",description:"Setup ritual (typically deleted after first run)",optional:!0}},$9=Object.entries(yZ).filter(([,$])=>!$.optional).map(([$])=>$),X9=Object.entries(yZ).filter(([,$])=>$.optional).map(([$])=>$);var x6=[{file:"AGENTS.md",header:"Agent Instructions",budget:12000},{file:"SOUL.md",header:"Soul",budget:4000},{file:"IDENTITY.md",header:"Identity",budget:2000},{file:"USER.md",header:"About Your User",budget:6000},{file:"MEMORY.md",header:"Working Memory",budget:1e4}],h6="[signet: daemon offline — running with static identity]",fZ="[signet: daemon session-start timed out — running with static identity]";function gZ($){if(!$)return 15000;let W=Number.parseInt($,10);if(!Number.isFinite(W)||W<1000)return 15000;if(W>120000)return 120000;return W}function p0($,W=h6){if(!VZ($))return null;let V=[];for(let{file:B,header:O,budget:_}of x6){let Y=b6($,B);if(!VZ(Y))continue;try{let H=v6(Y,"utf-8").trim();if(!H)continue;let U=H.length<=_?H:\`\${H.slice(0,_)}
65669
+ \`)}var HZ=[{version:1,name:"baseline",up:F5,artifacts:{tables:["memories","conversations","embeddings"]}},{version:2,name:"pipeline-v2",up:L5,artifacts:{tables:["memory_history","memory_jobs","entities","relations","memory_entity_mentions"]}},{version:3,name:"unique-content-hash",up:A5},{version:4,name:"history-actor-and-retention",up:D5,artifacts:{columns:[{table:"memory_history",column:"actor_type"}]}},{version:5,name:"graph-extended",up:T5,artifacts:{columns:[{table:"entities",column:"canonical_name"}]}},{version:6,name:"idempotency-key",up:N5,artifacts:{columns:[{table:"memories",column:"idempotency_key"}]}},{version:7,name:"documents-and-connectors",up:S5,artifacts:{tables:["documents","document_memories","connectors"]}},{version:8,name:"embeddings-unique-hash",up:w5},{version:9,name:"summary-jobs",up:E5,artifacts:{tables:["summary_jobs"]}},{version:10,name:"umap-cache",up:P5,artifacts:{tables:["umap_cache"]}},{version:11,name:"session-scores",up:k5,artifacts:{tables:["session_scores"]}},{version:12,name:"scheduled-tasks",up:y5,artifacts:{tables:["scheduled_tasks","task_runs"]}},{version:13,name:"ingestion-tracking",up:f5,artifacts:{tables:["ingestion_jobs"],columns:[{table:"memories",column:"source_path"},{table:"memories",column:"source_section"}]}},{version:14,name:"telemetry",up:g5,artifacts:{tables:["telemetry_events"]}},{version:15,name:"session-memories",up:v5,artifacts:{tables:["session_memories"],columns:[{table:"session_scores",column:"confidence"},{table:"session_scores",column:"continuity_reasoning"}]}},{version:16,name:"session-checkpoints",up:b5,artifacts:{tables:["session_checkpoints"]}},{version:17,name:"task-skills",up:x5,artifacts:{columns:[{table:"scheduled_tasks",column:"skill_name"}]}},{version:18,name:"skill-meta",up:h5,artifacts:{tables:["skill_meta"]}},{version:19,name:"knowledge-structure",up:u5,artifacts:{tables:["entity_aspects","entity_attributes","entity_dependencies","task_meta"],columns:[{table:"entities",column:"agent_id"}]}},{version:20,name:"predictor-comparisons",up:m5,artifacts:{tables:["predictor_comparisons","predictor_training_log"],columns:[{table:"session_memories",column:"entity_slot"},{table:"session_memories",column:"aspect_slot"},{table:"session_memories",column:"is_constraint"},{table:"session_memories",column:"structural_density"}]}},{version:21,name:"checkpoint-structural",up:p5,artifacts:{columns:[{table:"session_checkpoints",column:"focal_entity_ids"}]}},{version:22,name:"entity-pinning",up:d5,artifacts:{columns:[{table:"entities",column:"pinned"},{table:"entities",column:"pinned_at"}]}},{version:23,name:"predictor-columns",up:c5,artifacts:{columns:[{table:"session_memories",column:"predictor_rank"}]}},{version:24,name:"predictor-comparison-columns",up:i5,artifacts:{columns:[{table:"predictor_comparisons",column:"scorer_confidence"},{table:"predictor_comparisons",column:"success_rate"},{table:"predictor_comparisons",column:"predictor_top_ids"},{table:"predictor_comparisons",column:"baseline_top_ids"},{table:"predictor_comparisons",column:"relevance_scores"},{table:"predictor_comparisons",column:"fts_overlap_score"}]}},{version:25,name:"agent-feedback",up:a5,artifacts:{columns:[{table:"session_memories",column:"agent_relevance_score"}]}},{version:26,name:"predictor-training-pairs",up:n5,artifacts:{tables:["predictor_training_pairs"]}},{version:27,name:"backfill-canonical-names",up:r5},{version:28,name:"lossless-retention",up:s5},{version:29,name:"session-summary-dag",up:o5},{version:30,name:"nullable-memory-job-memory-id",up:t5},{version:31,name:"dependency-reason",up:e5,artifacts:{columns:[{table:"entity_dependencies",column:"reason"},{table:"entities",column:"last_synthesized_at"}]}},{version:32,name:"embeddings-vector-column",up:Z6,artifacts:{columns:[{table:"embeddings",column:"vector",optional:!0}]}},{version:33,name:"scope",up:$6,artifacts:{columns:[{table:"memories",column:"scope"}]}},{version:34,name:"scope-aware-dedup",up:X6},{version:35,name:"entity-fts",up:G6},{version:36,name:"dependency-confidence",up:z6,artifacts:{columns:[{table:"entity_dependencies",column:"confidence"}]}},{version:37,name:"entity-communities",up:Q6,artifacts:{tables:["entity_communities"],columns:[{table:"entities",column:"community_id"}]}},{version:38,name:"memory-hints",up:J6,artifacts:{tables:["memory_hints"]}},{version:39,name:"dedup-entity-dependencies",up:U6},{version:40,name:"session-transcripts",up:W6,artifacts:{tables:["session_transcripts"]}},{version:41,name:"path-feedback",up:V6,artifacts:{tables:["path_feedback_events","path_feedback_stats","entity_retrieval_stats","entity_cooccurrence","path_feedback_sessions"],columns:[{table:"session_memories",column:"path_json"}]}},{version:42,name:"session-memories-agent-id",up:Y6,artifacts:{columns:[{table:"session_memories",column:"agent_id"}]}},{version:43,name:"agents-table",up:R6,artifacts:{tables:["agents"],columns:[{table:"memories",column:"agent_id"},{table:"memories",column:"visibility"}]}},{version:44,name:"memory-md-temporal-head",up:B6,artifacts:{columns:[{table:"session_summaries",column:"source_type"},{table:"session_summaries",column:"source_ref"},{table:"session_summaries",column:"meta_json"}]}},{version:45,name:"lossless-working-memory-hardening",up:_6,artifacts:{tables:["session_transcripts_fts","memory_md_heads"],columns:[{table:"session_transcripts",column:"updated_at"},{table:"summary_jobs",column:"agent_id"},{table:"session_scores",column:"agent_id"}]}},{version:46,name:"session-summary-uniqueness",up:q6},{version:47,name:"agent-scoped-temporal-uniqueness",up:O6},{version:48,name:"thread-heads",up:K6,artifacts:{tables:["memory_thread_heads"]}},{version:49,name:"session-extract-cursors",up:F6,artifacts:{tables:["session_extract_cursors"]}}];var O8=HZ[HZ.length-1]?.version??0;var j6=K5(import.meta.url),K8=O5(j6);var L6=SZ(),A6=M0(),M6=DZ(),m0=D0(),D6=O0(),n=P(),I6=e(),T6=x(),N6=Z0(),C6=$0(),F8=u0(),S6=wZ(),w6=EZ(),E6=PZ(),T0=q5(),kZ=q0(),j8=L6.Composer,L8=A6.Document,A8=M6.Schema,M8=m0.YAMLError,D8=m0.YAMLParseError,I8=m0.YAMLWarning,T8=D6.Alias,N8=n.isAlias,C8=n.isCollection,S8=n.isDocument,w8=n.isMap,E8=n.isNode,P8=n.isPair,k8=n.isScalar,y8=n.isSeq,f8=I6.Pair,g8=T6.Scalar,v8=N6.YAMLMap,b8=C6.YAMLSeq,x8=S6.Lexer,h8=w6.LineCounter,u8=E6.Parser,m8=T0.parse,p8=T0.parseAllDocuments,d8=T0.parseDocument,l8=T0.stringify,c8=kZ.visit,i8=kZ.visitAsync,r8=k6(P6(),".agents");var y6=["none","ollama","claude-code","codex","opencode","anthropic","openrouter","command"];var s8=new Set(y6);var g6=null;try{g6=f6(import.meta.url)("@signet/native")}catch{}var yZ={agents:{path:"AGENTS.md",description:"Operational rules and behavioral settings",optional:!1},soul:{path:"SOUL.md",description:"Persona, character, and security settings",optional:!1},identity:{path:"IDENTITY.md",description:"Agent name, creature type, and vibe",optional:!1},user:{path:"USER.md",description:"User profile and preferences",optional:!1},heartbeat:{path:"HEARTBEAT.md",description:"Current working state, focus, and blockers",optional:!0},memory:{path:"MEMORY.md",description:"Memory index and summary",optional:!0},tools:{path:"TOOLS.md",description:"Tool preferences and notes",optional:!0},bootstrap:{path:"BOOTSTRAP.md",description:"Setup ritual (typically deleted after first run)",optional:!0}},$9=Object.entries(yZ).filter(([,$])=>!$.optional).map(([$])=>$),X9=Object.entries(yZ).filter(([,$])=>$.optional).map(([$])=>$);var x6=[{file:"AGENTS.md",header:"Agent Instructions",budget:12000},{file:"SOUL.md",header:"Soul",budget:4000},{file:"IDENTITY.md",header:"Identity",budget:2000},{file:"USER.md",header:"About Your User",budget:6000},{file:"MEMORY.md",header:"Working Memory",budget:1e4}],h6="[signet: daemon offline — running with static identity]",fZ="[signet: daemon session-start timed out — running with static identity]";function gZ($){if(!$)return 15000;let W=Number.parseInt($,10);if(!Number.isFinite(W)||W<1000)return 15000;if(W>120000)return 120000;return W}function p0($,W=h6){if(!VZ($))return null;let V=[];for(let{file:B,header:O,budget:_}of x6){let Y=b6($,B);if(!VZ(Y))continue;try{let H=v6(Y,"utf-8").trim();if(!H)continue;let U=H.length<=_?H:\`\${H.slice(0,_)}
65562
65670
  [truncated]\`;V.push(\`## \${O}
65563
65671
 
65564
65672
  \${U}\`)}catch{}}if(V.length===0)return null;return\`\${W}
@@ -65569,7 +65677,7 @@ $&\`).replace(/(?:^|\\n)([\\t ].*)(?:([\\n\\t ]*)\\n(?![\\n\\t ]))?/g,"$1$2").re
65569
65677
  \`)}function i6($){try{return JSON.parse($)}catch{return}}function a6($){let W,V=[];for(let B of $){let O=i6(B);if(!s(O)||typeof O.type!=="string")continue;if(O.type==="session"){W=O;continue}V.push(O)}return{header:W,entries:V}}function n6($){return p6($,"utf-8").split(\`
65570
65678
  \`).map((W)=>W.trim()).filter((W)=>W.length>0)}function r6($){return k($?.cwd)??k($?.project)??k($?.workspace)}function l0($){if(!$||!m6($))return{loaded:!1,sessionId:void 0,project:void 0,transcript:void 0};try{let{header:W,entries:V}=a6(n6($));return{loaded:!0,sessionId:k(W?.id),project:r6(W),transcript:d0(V)}}catch{return{loaded:!1,sessionId:void 0,project:void 0,transcript:void 0}}}function xZ($="offline"){let W=o("SIGNET_PATH")??o6(s6(),".agents");if($==="timeout")return p0(W,fZ)??"";return p0(W)??""}function t6(){return gZ(o(t0)??o(e0))}function e6($){let W=$.sessionManager.getBranch();if(Array.isArray(W)&&W.length>0)return W;let V=$.sessionManager.getEntries();return Array.isArray(V)?V:[]}function l($){let W=$.sessionManager.getHeader(),V=k($.sessionManager.getSessionId())??k(W?.id),B=k($.sessionManager.getSessionFile()),O=k($.cwd)??k(W?.cwd)??k(W?.project)??k(W?.workspace);return{sessionId:V,sessionFile:B,project:O}}async function c0($,W){return await $.post("/api/hooks/session-end",{harness:r,runtimePath:c,reason:W.reason,sessionKey:W.sessionId,sessionId:W.sessionId,agentId:W.agentId,cwd:W.project,...W.transcript?{transcript:W.transcript}:{}},V0)!==null}async function N0($){for(let W of $.state.getPendingSessionEnds()){if($.state.sessionAlreadyEnded(W.sessionId)){$.state.clearPendingSessionEnd(W.sessionId);continue}let V=l0(W.sessionFile);if(!V.loaded)continue;if(!await c0($.client,{sessionId:V.sessionId??W.sessionId,agentId:W.agentId,transcript:V.transcript,reason:W.reason,project:V.project}))continue;$.state.markSessionEnded(W.sessionId),$.state.clearPendingSessionData(W.sessionId),$.state.clearPendingSessionEnd(W.sessionId)}}async function Q0($,W){await N0($);let V=l(W);$.state.setActiveSession(V.sessionId,V.sessionFile),$.state.clearSessionEnded(V.sessionId);let B=await $.client.postResult("/api/hooks/session-start",{harness:r,project:V.project,agentId:$.agentId,sessionKey:V.sessionId,runtimePath:c},t6()),O=B.ok?B.data.inject??B.data.recentContext??"":B.reason==="timeout"?xZ("timeout"):xZ();$.state.setSessionContext(O),$.state.setPendingSessionContext(V.sessionId,O)}async function C0($,W){await N0($);let V=l(W);if(!V.sessionId)return;if(V.sessionId===$.state.getActiveSessionId()&&V.sessionFile===$.state.getActiveSessionFile())return;await Q0($,W)}async function hZ($,W,V){await N0($);let B=l(W);if($.state.sessionAlreadyEnded(B.sessionId))return;if(!await c0($.client,{sessionId:B.sessionId,agentId:$.agentId,transcript:d0(e6(W)),reason:V,project:B.project}))return;$.state.markSessionEnded(B.sessionId),$.state.clearPendingSessionData(B.sessionId)}async function i0($,W,V){let B=k(W.previousSessionFile)??$.state.getActiveSessionFile(),O=l0(B),_=O.sessionId??$.state.getActiveSessionId();if($.state.sessionAlreadyEnded(_))return;if(!O.loaded){if(_&&B)$.state.queuePendingSessionEnd(_,B,$.agentId,V);return}if(!await c0($.client,{sessionId:_,agentId:$.agentId,transcript:O.transcript,reason:V,project:O.project})){if(_&&B)$.state.queuePendingSessionEnd(_,B,$.agentId,V);return}$.state.markSessionEnded(_),$.state.clearPendingSessionData(_)}async function a0($,W,V){await N0($);let B=k(V);if(!B)return;await C0($,W);let O=l(W);if(!O.sessionId)return;let _=await $.client.post("/api/hooks/user-prompt-submit",{harness:r,project:O.project,agentId:$.agentId,sessionKey:O.sessionId,userMessage:B,runtimePath:c},o0);if(!_)return;if(_.sessionKnown===!1)await Q0($,W);let Y=k(_.inject);if(Y)$.state.queuePendingRecall(O.sessionId,Y)}var uZ=64,Z8=4,$8=128;function X8($){return $.replace(/<\\/signet-memory>/gi,"<\\\\/signet-memory>")}function mZ($,W){return{role:"custom",customType:$,display:!1,content:\`<signet-memory source="auto-recall">
65571
65679
  \${X8(W)}
65572
- </signet-memory>\`,timestamp:Date.now()}}function n0($,W){if($.size<W)return;let V=$.keys().next().value;if(V!==void 0)$.delete(V)}class pZ{pendingSessionContext=new Map;pendingRecall=new Map;pendingSessionEnds=new Map;endedSessions=new Map;activeSessionId;activeSessionFile;sessionContext="";setActiveSession($,W){this.activeSessionId=$,this.activeSessionFile=W}getActiveSessionId(){return this.activeSessionId}getActiveSessionFile(){return this.activeSessionFile}setSessionContext($){this.sessionContext=$}getSessionContext(){return this.sessionContext}markSessionEnded($){if(!$)return;if(!this.endedSessions.has($))n0(this.endedSessions,$8);this.endedSessions.set($,Date.now())}clearSessionEnded($){if(!$)return;this.endedSessions.delete($)}sessionAlreadyEnded($){if(!$)return!1;return this.endedSessions.has($)}setPendingSessionContext($,W){if(!$)return;let V=k(W);if(V){this.pendingSessionContext.set($,V);return}this.pendingSessionContext.delete($)}clearPendingSessionContext($){if(!$)return;this.pendingSessionContext.delete($)}queuePendingRecall($,W){if(!this.pendingRecall.has($))n0(this.pendingRecall,uZ);let V=this.pendingRecall.get($)??[];V.push(W);while(V.length>Z8)V.shift();this.pendingRecall.set($,V)}clearPendingRecall($){if(!$)return;this.pendingRecall.delete($)}clearPendingSessionData($){if(!$)return;this.pendingSessionContext.delete($),this.pendingRecall.delete($),this.pendingSessionEnds.delete($)}hasPendingRecall($){if(!$)return!1;let W=this.pendingRecall.get($);return Array.isArray(W)&&W.length>0}consumePendingRecall($){if(!$)return;let W=this.pendingRecall.get($);if(!W||W.length===0)return;let V=W.shift();if(W.length===0)this.pendingRecall.delete($);return k(V)}consumeHiddenInjectMessages($){if(!$)return[];let W=[],V=k(this.pendingSessionContext.get($));if(V)W.push(mZ(R0,V));this.pendingSessionContext.delete($);let B=this.consumePendingRecall($);if(B)W.push(mZ(Y0,B));return W}queuePendingSessionEnd($,W,V,B){if(!this.pendingSessionEnds.has($))n0(this.pendingSessionEnds,uZ);this.pendingSessionEnds.set($,{sessionId:$,sessionFile:W,agentId:V,reason:B})}clearPendingSessionEnd($){if(!$)return;this.pendingSessionEnds.delete($)}getPendingSessionEnds(){return Array.from(this.pendingSessionEnds.values())}}function dZ(){return new pZ}function G8($,W){$.on("session_start",async(V,B)=>{await Q0(W,B)}),$.on("session_switch",async(V,B)=>{await i0(W,V,V.type),await Q0(W,B)}),$.on("session_branch",async(V,B)=>{await i0(W,V,V.type),await Q0(W,B)}),$.on("session_shutdown",async(V,B)=>{await hZ(W,B,"session_shutdown")})}function z8($,W){$.on("input",async(V,B)=>{let O=l(B);W.state.clearPendingRecall(O.sessionId),await a0(W,B,V.text)}),$.on("before_agent_start",async(V,B)=>{await C0(W,B);let O=l(B);if(!O.sessionId)return;if(W.state.hasPendingRecall(O.sessionId))return;await a0(W,B,V.prompt)})}function Q8($,W){$.on("context",async(V,B)=>{let O=l(B),_=W.state.consumeHiddenInjectMessages(O.sessionId);if(_.length===0)return;return{messages:[...V.messages,..._]}})}function J8($,W){$.on("session.compacting",async(V,B)=>{await C0(W,B);let O=l(B),_=await W.client.post("/api/hooks/pre-compaction",{harness:r,sessionKey:O.sessionId??k(V.sessionId),messageCount:Array.isArray(V.messages)?V.messages.length:void 0,runtimePath:c},G0);if(!_&&!W.state.getSessionContext())return;let Y=k(_?.guidelines)??k(W.state.getSessionContext()),H=k(_?.summaryPrompt);if(!Y&&!H)return;return{context:Y?[Y]:void 0,prompt:H}}),$.on("session_compact",async(V,B)=>{let O=k(V.compactionEntry?.summary);if(!O)return;let _=l(B);await W.client.post("/api/hooks/compaction-complete",{harness:r,summary:O,project:_.project,sessionKey:_.sessionId,agentId:W.agentId,runtimePath:c},V0)})}var U8=($)=>{if(S0("SIGNET_ENABLED")==="false")return;let W={agentId:o("SIGNET_AGENT_ID"),client:$Z(o("SIGNET_DAEMON_URL")??s0),state:dZ()};G8($,W),z8($,W),Q8($,W),J8($,W)},C9=U8;export{C9 as default};
65680
+ </signet-memory>\`,timestamp:Date.now()}}function n0($,W){if($.size<W)return;let V=$.keys().next().value;if(V!==void 0)$.delete(V)}class pZ{pendingSessionContext=new Map;pendingRecall=new Map;pendingSessionEnds=new Map;endedSessions=new Map;activeSessionId;activeSessionFile;sessionContext="";setActiveSession($,W){this.activeSessionId=$,this.activeSessionFile=W}getActiveSessionId(){return this.activeSessionId}getActiveSessionFile(){return this.activeSessionFile}setSessionContext($){this.sessionContext=$}getSessionContext(){return this.sessionContext}markSessionEnded($){if(!$)return;if(!this.endedSessions.has($))n0(this.endedSessions,$8);this.endedSessions.set($,Date.now())}clearSessionEnded($){if(!$)return;this.endedSessions.delete($)}sessionAlreadyEnded($){if(!$)return!1;return this.endedSessions.has($)}setPendingSessionContext($,W){if(!$)return;let V=k(W);if(V){this.pendingSessionContext.set($,V);return}this.pendingSessionContext.delete($)}clearPendingSessionContext($){if(!$)return;this.pendingSessionContext.delete($)}queuePendingRecall($,W){if(!this.pendingRecall.has($))n0(this.pendingRecall,uZ);let V=this.pendingRecall.get($)??[];V.push(W);while(V.length>Z8)V.shift();this.pendingRecall.set($,V)}clearPendingRecall($){if(!$)return;this.pendingRecall.delete($)}clearPendingSessionData($){if(!$)return;this.pendingSessionContext.delete($),this.pendingRecall.delete($),this.pendingSessionEnds.delete($)}hasPendingRecall($){if(!$)return!1;let W=this.pendingRecall.get($);return Array.isArray(W)&&W.length>0}consumePendingRecall($){if(!$)return;let W=this.pendingRecall.get($);if(!W||W.length===0)return;let V=W.shift();if(W.length===0)this.pendingRecall.delete($);return k(V)}consumeHiddenInjectMessages($){if(!$)return[];let W=[],V=k(this.pendingSessionContext.get($));if(V)W.push(mZ(R0,V));this.pendingSessionContext.delete($);let B=this.consumePendingRecall($);if(B)W.push(mZ(Y0,B));return W}queuePendingSessionEnd($,W,V,B){if(!this.pendingSessionEnds.has($))n0(this.pendingSessionEnds,uZ);this.pendingSessionEnds.set($,{sessionId:$,sessionFile:W,agentId:V,reason:B})}clearPendingSessionEnd($){if(!$)return;this.pendingSessionEnds.delete($)}getPendingSessionEnds(){return Array.from(this.pendingSessionEnds.values())}}function dZ(){return new pZ}function G8($,W){$.on("session_start",async(V,B)=>{await Q0(W,B)}),$.on("session_switch",async(V,B)=>{await i0(W,V,V.type),await Q0(W,B)}),$.on("session_branch",async(V,B)=>{await i0(W,V,V.type),await Q0(W,B)}),$.on("session_shutdown",async(V,B)=>{await hZ(W,B,"session_shutdown")})}function z8($,W){$.on("input",async(V,B)=>{let O=l(B);W.state.clearPendingRecall(O.sessionId),await a0(W,B,V.text)}),$.on("before_agent_start",async(V,B)=>{await C0(W,B);let O=l(B);if(!O.sessionId)return;if(W.state.hasPendingRecall(O.sessionId))return;await a0(W,B,V.prompt)})}function Q8($,W){$.on("context",async(V,B)=>{let O=l(B),_=W.state.consumeHiddenInjectMessages(O.sessionId);if(_.length===0)return;return{messages:[...V.messages,..._]}})}function J8($,W){$.on("session.compacting",async(V,B)=>{await C0(W,B);let O=l(B),_=await W.client.post("/api/hooks/pre-compaction",{harness:r,sessionKey:O.sessionId??k(V.sessionId),messageCount:Array.isArray(V.messages)?V.messages.length:void 0,runtimePath:c},G0);if(!_&&!W.state.getSessionContext())return;let Y=k(_?.guidelines)??k(W.state.getSessionContext()),H=k(_?.summaryPrompt);if(!Y&&!H)return;return{context:Y?[Y]:void 0,prompt:H}}),$.on("session_compact",async(V,B)=>{let O=k(V.compactionEntry?.summary);if(!O)return;let _=l(B);await W.client.post("/api/hooks/compaction-complete",{harness:r,summary:O,project:_.project,sessionKey:_.sessionId,agentId:W.agentId,runtimePath:c},V0)})}var U8=($)=>{if(w0("SIGNET_ENABLED")==="false")return;let W={agentId:o("SIGNET_AGENT_ID"),client:$Z(o("SIGNET_DAEMON_URL")??s0),state:dZ()};G8($,W),z8($,W),Q8($,W),J8($,W)},C9=U8;export{C9 as default};
65573
65681
  `;
65574
65682
  var OH_MY_PI_EXTENSION_PACKAGE = "@signet/oh-my-pi-extension";
65575
65683
  var OH_MY_PI_EXTENSION_ENTRY = "dist/signet-oh-my-pi.mjs";
@@ -76028,23 +76136,29 @@ function symlinkSkills4(sourceDir, targetDir, options = {}) {
76028
76136
  var home6 = homedir56();
76029
76137
  var SIGNET_BLOCK_START4 = "<!-- SIGNET:START -->";
76030
76138
  var SIGNET_BLOCK_END4 = "<!-- SIGNET:END -->";
76031
- function buildSignetBlock4() {
76139
+ function buildSignetBlock4(workspace = "$SIGNET_WORKSPACE") {
76140
+ const root = normalizeWorkspace4(workspace);
76032
76141
  return `${SIGNET_BLOCK_START4}
76033
76142
  Signet Agent System
76034
76143
  ===
76035
76144
 
76036
76145
  Your identity and memory are managed by Signet, a portable agent identity
76037
- system. This lets you maintain consistent behavior across different AI
76038
- platforms (Claude Code, OpenCode, Cursor, etc.).
76039
-
76040
- Key files in \`~/.agents/\`:
76041
- - \`agent.yaml\` Configuration
76042
- - \`AGENTS.md\` Instructions (source of truth)
76043
- - \`SOUL.md\` Personality and tone
76044
- - \`IDENTITY.md\` — Agent identity
76045
- - \`USER.md\` User profile
76046
- - \`MEMORY.md\` — Working memory summary
76047
- - \`SIGNET-ARCHITECTURE.md\` — How the memory pipeline works (read if asked)
76146
+ system. It gives you durable identity, working memory, and memory retrieval
76147
+ across different AI platforms (Claude Code, OpenCode, Cursor, etc.).
76148
+
76149
+ You are operating inside a layered memory runtime. The markdown files in
76150
+ your workspace are important prompt surfaces, but they are not the whole
76151
+ system. Treat \`MEMORY.md\` as a rendered working-memory head over deeper
76152
+ temporal and structured state, not as the canonical source of truth.
76153
+
76154
+ Key files in your Signet workspace (\`${root}/\`):
76155
+ - \`${root}/agent.yaml\` — Configuration
76156
+ - \`${root}/AGENTS.md\` — Instructions and operating rules
76157
+ - \`${root}/SOUL.md\` — Personality, values, and temperament
76158
+ - \`${root}/IDENTITY.md\` — Agent identity
76159
+ - \`${root}/USER.md\` — User profile and relationship context
76160
+ - \`${root}/MEMORY.md\` — Auto-generated working memory summary
76161
+ - \`${root}/SIGNET-ARCHITECTURE.md\` — How the memory pipeline works (read if asked)
76048
76162
 
76049
76163
  Dashboard: http://localhost:3850
76050
76164
 
@@ -76059,7 +76173,27 @@ signet recall "user preferences"
76059
76173
  \`\`\`
76060
76174
 
76061
76175
  Memory is automatically loaded at session start. Important context is
76062
- summarized in \`~/.agents/MEMORY.md\`.
76176
+ summarized in \`${root}/MEMORY.md\`.
76177
+
76178
+ Identity Stewardship
76179
+ ---
76180
+
76181
+ Treat the files in your Signet workspace as distinct layers of context:
76182
+
76183
+ - \`AGENTS.md\` — how you operate
76184
+ - \`SOUL.md\` — how you sound, what you value, and your temperament
76185
+ - \`IDENTITY.md\` — who you are
76186
+ - \`USER.md\` — who the user is and how to relate to them
76187
+ - \`MEMORY.md\` — episodic and operational context generated by Signet
76188
+
76189
+ You should actively maintain \`AGENTS.md\`, \`SOUL.md\`, \`IDENTITY.md\`,
76190
+ and \`USER.md\` as durable context. These files are always editable by
76191
+ you. Update them when you learn stable truths that belong there. Prefer
76192
+ additive, intentional refinement over impulsive rewrites. Preserve
76193
+ continuity unless the user explicitly wants a deeper identity rewrite.
76194
+
76195
+ Do not edit \`MEMORY.md\` manually. It is system-managed and regenerated
76196
+ by Signet.
76063
76197
 
76064
76198
  Secrets
76065
76199
  ---
@@ -76068,10 +76202,10 @@ API keys and tokens are stored securely in Signet. Agents never see
76068
76202
  raw values — secrets are injected into subprocesses as environment
76069
76203
  variables with output automatically redacted.
76070
76204
 
76071
- - \`secret_list\` MCP tool — discover available secret names
76072
- - \`secret_exec\` MCP tool — run a command with secrets injected as env vars
76205
+ - \`mcp__signet__secret_list\` — discover available secret names
76206
+ - \`mcp__signet__secret_exec\` — run a command with secrets injected as env vars
76073
76207
 
76074
- Example: to use an API key stored as "OPENAI_API_KEY", call \`secret_exec\`
76208
+ Example: to use an API key stored as "OPENAI_API_KEY", call \`mcp__signet__secret_exec\`
76075
76209
  with \`command: "curl -H \\"Authorization: Bearer $OPENAI_API_KEY\\" ..."\`
76076
76210
  and \`secrets: { "OPENAI_API_KEY": "OPENAI_API_KEY" }\`.
76077
76211
 
@@ -76081,21 +76215,22 @@ Knowledge Graph
76081
76215
  Signet maintains a knowledge graph of entities extracted from your
76082
76216
  conversations. Use these MCP tools to explore it:
76083
76217
 
76084
- - \`knowledge_expand\` — drill into an entity's aspects, attributes, constraints, and dependencies
76085
- - \`knowledge_expand_session\` — find session summaries linked to an entity (temporal drill-down)
76218
+ - \`mcp__signet__knowledge_expand\` — drill into an entity's aspects, attributes, constraints, and dependencies
76219
+ - \`mcp__signet__knowledge_expand_session\` — find session summaries linked to an entity (temporal drill-down)
76086
76220
 
76087
76221
  About This System
76088
76222
  ---
76089
76223
 
76090
76224
  When users ask about your memory or how you work across sessions:
76091
- Signet is a persistent memory and identity layer that runs alongside
76092
- you. It automatically captures facts from conversations after they end,
76093
- scores them by importance and recency, and injects relevant ones into
76094
- your context on every prompt. Sessions are summarized asynchronously
76095
- by a background worker. You also have explicit /remember and /recall
76096
- commands for things auto-capture might miss.
76097
-
76098
- For the full pipeline details, read \`~/.agents/SIGNET-ARCHITECTURE.md\`.
76225
+ Signet is a persistent identity and memory runtime. Your durable
76226
+ substrate lives in \`AGENTS.md\`, \`SOUL.md\`, \`IDENTITY.md\`, and
76227
+ \`USER.md\`. \`MEMORY.md\` is a rendered temporal head over deeper
76228
+ working-memory state, not the canonical store. At prompt time, Signet
76229
+ can surface context through hybrid retrieval across structured memory,
76230
+ thread or temporal summaries, and transcript fallback when needed. Not
76231
+ every important memory appears directly in \`MEMORY.md\`.
76232
+
76233
+ For the full pipeline details, read \`${root}/SIGNET-ARCHITECTURE.md\`.
76099
76234
  ${SIGNET_BLOCK_END4}
76100
76235
 
76101
76236
  `;
@@ -76107,6 +76242,13 @@ function stripSignetBlock4(content) {
76107
76242
  function escapeRegex4(str) {
76108
76243
  return str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
76109
76244
  }
76245
+ function normalizeWorkspace4(workspace) {
76246
+ const root = workspace.trim().replace(/[`\n\r]/g, "");
76247
+ if (!root) {
76248
+ return "$SIGNET_WORKSPACE";
76249
+ }
76250
+ return root.endsWith("/") ? root.slice(0, -1) : root;
76251
+ }
76110
76252
  var SKIP_SUBTYPES6 = new Set([
76111
76253
  "channel_join",
76112
76254
  "channel_leave",
@@ -76249,8 +76391,8 @@ var SKIP_FILES6 = new Set([
76249
76391
  ]);
76250
76392
 
76251
76393
  class BaseConnector4 {
76252
- buildSignetBlock() {
76253
- return buildSignetBlock4();
76394
+ buildSignetBlock(basePath = "$SIGNET_WORKSPACE") {
76395
+ return buildSignetBlock4(basePath);
76254
76396
  }
76255
76397
  stripSignetBlock(content) {
76256
76398
  return stripSignetBlock4(content);
@@ -76260,11 +76402,13 @@ class BaseConnector4 {
76260
76402
  }
76261
76403
  generateHeader(sourcePath, targetName) {
76262
76404
  const name = targetName || this.name;
76263
- return `# Auto-generated from ${sourcePath}
76264
- # Source: ${sourcePath}
76405
+ const safe = (p) => p.replace(/[\n\r]/g, "");
76406
+ const root = dirname24(sourcePath);
76407
+ return `# Auto-generated from ${safe(sourcePath)}
76408
+ # Source: ${safe(sourcePath)}
76265
76409
  # Generated: ${new Date().toISOString()}
76266
76410
  # DO NOT EDIT - changes will be overwritten
76267
- # Edit the source files in ~/.agents/ instead
76411
+ # Edit the source files in ${safe(root)}/ instead
76268
76412
 
76269
76413
  `;
76270
76414
  }
@@ -86311,23 +86455,29 @@ function symlinkSkills5(sourceDir, targetDir, options = {}) {
86311
86455
  var home7 = homedir57();
86312
86456
  var SIGNET_BLOCK_START5 = "<!-- SIGNET:START -->";
86313
86457
  var SIGNET_BLOCK_END5 = "<!-- SIGNET:END -->";
86314
- function buildSignetBlock5() {
86458
+ function buildSignetBlock5(workspace = "$SIGNET_WORKSPACE") {
86459
+ const root = normalizeWorkspace5(workspace);
86315
86460
  return `${SIGNET_BLOCK_START5}
86316
86461
  Signet Agent System
86317
86462
  ===
86318
86463
 
86319
86464
  Your identity and memory are managed by Signet, a portable agent identity
86320
- system. This lets you maintain consistent behavior across different AI
86321
- platforms (Claude Code, OpenCode, Cursor, etc.).
86322
-
86323
- Key files in \`~/.agents/\`:
86324
- - \`agent.yaml\` Configuration
86325
- - \`AGENTS.md\` Instructions (source of truth)
86326
- - \`SOUL.md\` Personality and tone
86327
- - \`IDENTITY.md\` — Agent identity
86328
- - \`USER.md\` User profile
86329
- - \`MEMORY.md\` — Working memory summary
86330
- - \`SIGNET-ARCHITECTURE.md\` — How the memory pipeline works (read if asked)
86465
+ system. It gives you durable identity, working memory, and memory retrieval
86466
+ across different AI platforms (Claude Code, OpenCode, Cursor, etc.).
86467
+
86468
+ You are operating inside a layered memory runtime. The markdown files in
86469
+ your workspace are important prompt surfaces, but they are not the whole
86470
+ system. Treat \`MEMORY.md\` as a rendered working-memory head over deeper
86471
+ temporal and structured state, not as the canonical source of truth.
86472
+
86473
+ Key files in your Signet workspace (\`${root}/\`):
86474
+ - \`${root}/agent.yaml\` — Configuration
86475
+ - \`${root}/AGENTS.md\` — Instructions and operating rules
86476
+ - \`${root}/SOUL.md\` — Personality, values, and temperament
86477
+ - \`${root}/IDENTITY.md\` — Agent identity
86478
+ - \`${root}/USER.md\` — User profile and relationship context
86479
+ - \`${root}/MEMORY.md\` — Auto-generated working memory summary
86480
+ - \`${root}/SIGNET-ARCHITECTURE.md\` — How the memory pipeline works (read if asked)
86331
86481
 
86332
86482
  Dashboard: http://localhost:3850
86333
86483
 
@@ -86342,7 +86492,27 @@ signet recall "user preferences"
86342
86492
  \`\`\`
86343
86493
 
86344
86494
  Memory is automatically loaded at session start. Important context is
86345
- summarized in \`~/.agents/MEMORY.md\`.
86495
+ summarized in \`${root}/MEMORY.md\`.
86496
+
86497
+ Identity Stewardship
86498
+ ---
86499
+
86500
+ Treat the files in your Signet workspace as distinct layers of context:
86501
+
86502
+ - \`AGENTS.md\` — how you operate
86503
+ - \`SOUL.md\` — how you sound, what you value, and your temperament
86504
+ - \`IDENTITY.md\` — who you are
86505
+ - \`USER.md\` — who the user is and how to relate to them
86506
+ - \`MEMORY.md\` — episodic and operational context generated by Signet
86507
+
86508
+ You should actively maintain \`AGENTS.md\`, \`SOUL.md\`, \`IDENTITY.md\`,
86509
+ and \`USER.md\` as durable context. These files are always editable by
86510
+ you. Update them when you learn stable truths that belong there. Prefer
86511
+ additive, intentional refinement over impulsive rewrites. Preserve
86512
+ continuity unless the user explicitly wants a deeper identity rewrite.
86513
+
86514
+ Do not edit \`MEMORY.md\` manually. It is system-managed and regenerated
86515
+ by Signet.
86346
86516
 
86347
86517
  Secrets
86348
86518
  ---
@@ -86351,10 +86521,10 @@ API keys and tokens are stored securely in Signet. Agents never see
86351
86521
  raw values — secrets are injected into subprocesses as environment
86352
86522
  variables with output automatically redacted.
86353
86523
 
86354
- - \`secret_list\` MCP tool — discover available secret names
86355
- - \`secret_exec\` MCP tool — run a command with secrets injected as env vars
86524
+ - \`mcp__signet__secret_list\` — discover available secret names
86525
+ - \`mcp__signet__secret_exec\` — run a command with secrets injected as env vars
86356
86526
 
86357
- Example: to use an API key stored as "OPENAI_API_KEY", call \`secret_exec\`
86527
+ Example: to use an API key stored as "OPENAI_API_KEY", call \`mcp__signet__secret_exec\`
86358
86528
  with \`command: "curl -H \\"Authorization: Bearer $OPENAI_API_KEY\\" ..."\`
86359
86529
  and \`secrets: { "OPENAI_API_KEY": "OPENAI_API_KEY" }\`.
86360
86530
 
@@ -86364,21 +86534,22 @@ Knowledge Graph
86364
86534
  Signet maintains a knowledge graph of entities extracted from your
86365
86535
  conversations. Use these MCP tools to explore it:
86366
86536
 
86367
- - \`knowledge_expand\` — drill into an entity's aspects, attributes, constraints, and dependencies
86368
- - \`knowledge_expand_session\` — find session summaries linked to an entity (temporal drill-down)
86537
+ - \`mcp__signet__knowledge_expand\` — drill into an entity's aspects, attributes, constraints, and dependencies
86538
+ - \`mcp__signet__knowledge_expand_session\` — find session summaries linked to an entity (temporal drill-down)
86369
86539
 
86370
86540
  About This System
86371
86541
  ---
86372
86542
 
86373
86543
  When users ask about your memory or how you work across sessions:
86374
- Signet is a persistent memory and identity layer that runs alongside
86375
- you. It automatically captures facts from conversations after they end,
86376
- scores them by importance and recency, and injects relevant ones into
86377
- your context on every prompt. Sessions are summarized asynchronously
86378
- by a background worker. You also have explicit /remember and /recall
86379
- commands for things auto-capture might miss.
86380
-
86381
- For the full pipeline details, read \`~/.agents/SIGNET-ARCHITECTURE.md\`.
86544
+ Signet is a persistent identity and memory runtime. Your durable
86545
+ substrate lives in \`AGENTS.md\`, \`SOUL.md\`, \`IDENTITY.md\`, and
86546
+ \`USER.md\`. \`MEMORY.md\` is a rendered temporal head over deeper
86547
+ working-memory state, not the canonical store. At prompt time, Signet
86548
+ can surface context through hybrid retrieval across structured memory,
86549
+ thread or temporal summaries, and transcript fallback when needed. Not
86550
+ every important memory appears directly in \`MEMORY.md\`.
86551
+
86552
+ For the full pipeline details, read \`${root}/SIGNET-ARCHITECTURE.md\`.
86382
86553
  ${SIGNET_BLOCK_END5}
86383
86554
 
86384
86555
  `;
@@ -86390,6 +86561,13 @@ function stripSignetBlock5(content) {
86390
86561
  function escapeRegex5(str) {
86391
86562
  return str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
86392
86563
  }
86564
+ function normalizeWorkspace5(workspace) {
86565
+ const root = workspace.trim().replace(/[`\n\r]/g, "");
86566
+ if (!root) {
86567
+ return "$SIGNET_WORKSPACE";
86568
+ }
86569
+ return root.endsWith("/") ? root.slice(0, -1) : root;
86570
+ }
86393
86571
  var SKIP_SUBTYPES7 = new Set([
86394
86572
  "channel_join",
86395
86573
  "channel_leave",
@@ -86532,8 +86710,8 @@ var SKIP_FILES7 = new Set([
86532
86710
  ]);
86533
86711
 
86534
86712
  class BaseConnector5 {
86535
- buildSignetBlock() {
86536
- return buildSignetBlock5();
86713
+ buildSignetBlock(basePath = "$SIGNET_WORKSPACE") {
86714
+ return buildSignetBlock5(basePath);
86537
86715
  }
86538
86716
  stripSignetBlock(content) {
86539
86717
  return stripSignetBlock5(content);
@@ -86543,11 +86721,13 @@ class BaseConnector5 {
86543
86721
  }
86544
86722
  generateHeader(sourcePath, targetName) {
86545
86723
  const name = targetName || this.name;
86546
- return `# Auto-generated from ${sourcePath}
86547
- # Source: ${sourcePath}
86724
+ const safe = (p) => p.replace(/[\n\r]/g, "");
86725
+ const root = dirname25(sourcePath);
86726
+ return `# Auto-generated from ${safe(sourcePath)}
86727
+ # Source: ${safe(sourcePath)}
86548
86728
  # Generated: ${new Date().toISOString()}
86549
86729
  # DO NOT EDIT - changes will be overwritten
86550
- # Edit the source files in ~/.agents/ instead
86730
+ # Edit the source files in ${safe(root)}/ instead
86551
86731
 
86552
86732
  `;
86553
86733
  }