@hasna/instructions 0.7.1 → 0.7.4
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.
- package/README.md +47 -7
- package/dist/chunks/{apply-c3sd4agz.js → apply-1gyr8r0x.js} +3 -3
- package/dist/chunks/{apply-pnn7a3y7.js → apply-fyfzqc7s.js} +3 -3
- package/dist/chunks/{index-3djthcm6.js → index-27az1qb1.js} +28 -1
- package/dist/chunks/{index-r7nfef2g.js → index-6sbmg1vc.js} +3 -3
- package/dist/chunks/{index-pdpg8a44.js → index-axs3yftz.js} +2 -2
- package/dist/chunks/{index-aj66f6xr.js → index-dwagz53p.js} +92 -8
- package/dist/chunks/{index-6jncnnw7.js → index-enh4yv85.js} +274 -31
- package/dist/chunks/{index-ypcef3a2.js → index-n9arv47w.js} +2 -2
- package/dist/chunks/{index-n3fjspr0.js → index-preyvj8n.js} +28 -1
- package/dist/chunks/{index-jg8ptcwh.js → index-z27xp7fh.js} +2 -2
- package/dist/chunks/{local-0a9gja58.js → local-5dsm856v.js} +15 -4
- package/dist/chunks/{local-969ye538.js → local-yxsbs8x3.js} +15 -4
- package/dist/chunks/{sync-xtkbm5br.js → sync-6r1v8hd3.js} +4 -4
- package/dist/chunks/{sync-q5hvwq6e.js → sync-k3pab4s6.js} +4 -4
- package/dist/chunks/{template-wgnzdn7h.js → template-e4qrxs8p.js} +1 -1
- package/dist/chunks/{template-fsfxpe4p.js → template-nhn124zd.js} +1 -1
- package/dist/cli/index.js +1018 -584
- package/dist/data/config-store.d.ts +12 -4
- package/dist/data/config-store.d.ts.map +1 -1
- package/dist/db/configs.d.ts.map +1 -1
- package/dist/index.d.ts +8 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1264 -601
- package/dist/lib/asset-plan.d.ts +4 -1
- package/dist/lib/asset-plan.d.ts.map +1 -1
- package/dist/lib/codewith-shared-todos-storage-standard.d.ts.map +1 -1
- package/dist/lib/dangerous-operation-guard-standard.d.ts.map +1 -1
- package/dist/lib/global-agent-rules-standard.d.ts.map +1 -1
- package/dist/lib/global-source-coverage.d.ts +12 -7
- package/dist/lib/global-source-coverage.d.ts.map +1 -1
- package/dist/lib/harness-discovery.d.ts +52 -0
- package/dist/lib/harness-discovery.d.ts.map +1 -0
- package/dist/lib/instruction-graph.d.ts +1 -1
- package/dist/lib/instruction-graph.d.ts.map +1 -1
- package/dist/lib/instruction-source-policy.d.ts +6 -0
- package/dist/lib/instruction-source-policy.d.ts.map +1 -0
- package/dist/lib/machine.d.ts.map +1 -1
- package/dist/lib/managed-skill-runtimes.d.ts +12 -28
- package/dist/lib/managed-skill-runtimes.d.ts.map +1 -1
- package/dist/lib/platform-profiles.d.ts.map +1 -1
- package/dist/lib/project-dashboard-standard.d.ts.map +1 -1
- package/dist/lib/session-apply.d.ts +35 -0
- package/dist/lib/session-apply.d.ts.map +1 -1
- package/dist/lib/session-refresh.d.ts +30 -0
- package/dist/lib/session-refresh.d.ts.map +1 -0
- package/dist/lib/session-render.d.ts +41 -1
- package/dist/lib/session-render.d.ts.map +1 -1
- package/dist/lib/transforms.d.ts +1 -0
- package/dist/lib/transforms.d.ts.map +1 -1
- package/dist/mcp/index.js +13 -12
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/sdk/index.d.ts +2 -0
- package/dist/sdk/index.d.ts.map +1 -1
- package/dist/sdk/index.js +172 -0
- package/dist/sdk/v1-client.d.ts +7 -1
- package/dist/sdk/v1-client.d.ts.map +1 -1
- package/dist/sdk/v1.generated.d.ts +26 -0
- package/dist/sdk/v1.generated.d.ts.map +1 -1
- package/dist/server/index.js +199 -8
- package/dist/server/openapi.d.ts +150 -0
- package/dist/server/openapi.d.ts.map +1 -1
- package/dist/server/v1.d.ts.map +1 -1
- package/dist/storage/cloud-store.d.ts.map +1 -1
- package/dist/types/index.d.ts +24 -2
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/server/index.js
CHANGED
|
@@ -17,12 +17,18 @@ var __export = (target, all) => {
|
|
|
17
17
|
var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
|
|
18
18
|
|
|
19
19
|
// src/types/index.ts
|
|
20
|
-
|
|
20
|
+
function validateExpectedConfigVersion(value) {
|
|
21
|
+
if (value !== undefined && (typeof value !== "number" || !Number.isSafeInteger(value) || value < 1)) {
|
|
22
|
+
throw new InvalidExpectedVersionError;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
var CONFIG_AGENTS, PROFILE_CONFIG_BINDING_SCHEMA = "hasna.instructions.profile-config-binding/v1", INSTRUCTION_ACTIVATION_MODES, INSTRUCTION_FALLBACKS, PROFILE_ASSET_BINDING_SCHEMA = "hasna.instructions.profile-asset-binding/v1", ASSET_KINDS, ASSET_DESTINATION_STRATEGIES, ASSET_SCOPES, ASSET_UNINSTALL_POLICIES, ASSET_ROLLBACK_POLICIES, InvalidExpectedVersionError, ConfigVersionConflictError, ConfigNotFoundError, ProfileNotFoundError;
|
|
21
26
|
var init_types = __esm(() => {
|
|
22
27
|
CONFIG_AGENTS = [
|
|
23
28
|
"claude",
|
|
24
29
|
"codex",
|
|
25
30
|
"opencode",
|
|
31
|
+
"sumi",
|
|
26
32
|
"cursor",
|
|
27
33
|
"codewith",
|
|
28
34
|
"aicopilot",
|
|
@@ -45,6 +51,25 @@ var init_types = __esm(() => {
|
|
|
45
51
|
ASSET_SCOPES = ["global", "project", "session"];
|
|
46
52
|
ASSET_UNINSTALL_POLICIES = ["remove-managed", "retain"];
|
|
47
53
|
ASSET_ROLLBACK_POLICIES = ["snapshot", "installer-receipt", "none"];
|
|
54
|
+
InvalidExpectedVersionError = class InvalidExpectedVersionError extends Error {
|
|
55
|
+
code = "INVALID_EXPECTED_VERSION";
|
|
56
|
+
constructor() {
|
|
57
|
+
super("expected_version must be a positive safe integer");
|
|
58
|
+
this.name = "InvalidExpectedVersionError";
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
ConfigVersionConflictError = class ConfigVersionConflictError extends Error {
|
|
62
|
+
config_id;
|
|
63
|
+
expected_version;
|
|
64
|
+
code = "CONFIG_VERSION_CONFLICT";
|
|
65
|
+
status = 409;
|
|
66
|
+
constructor(config_id, expected_version) {
|
|
67
|
+
super(`Config version conflict: ${config_id} no longer has expected version ${expected_version}`);
|
|
68
|
+
this.config_id = config_id;
|
|
69
|
+
this.expected_version = expected_version;
|
|
70
|
+
this.name = "ConfigVersionConflictError";
|
|
71
|
+
}
|
|
72
|
+
};
|
|
48
73
|
ConfigNotFoundError = class ConfigNotFoundError extends Error {
|
|
49
74
|
constructor(id) {
|
|
50
75
|
super(`Config not found: ${id}`);
|
|
@@ -104,7 +129,6 @@ function boundedReadPage(items, total, options = {}) {
|
|
|
104
129
|
};
|
|
105
130
|
}
|
|
106
131
|
var init_bounded_read = () => {};
|
|
107
|
-
|
|
108
132
|
// ../../node_modules/.bun/@hasna+contracts@1.0.2+e8014c875821e0be/node_modules/@hasna/contracts/dist/client/transport.js
|
|
109
133
|
import { createRequire } from "module";
|
|
110
134
|
var MAX_CREDENTIAL_FILE_BYTES, INSPECT_CUSTOM, CREDENTIAL_SEAL, AMBIENT_ENVIRONMENT, SECRETS_PACKAGE_SPECIFIER, requireSecretsSdk, IDEMPOTENT_METHODS, AUTHORITY_OVERRIDE_HEADERS;
|
|
@@ -174,6 +198,7 @@ var init_config_store = __esm(() => {
|
|
|
174
198
|
// src/lib/global-agent-rules-standard.ts
|
|
175
199
|
var AGENT_OPERATING_RULES_SOURCE_SET_ID = "hasna-global-agent-rules-standard", AGENT_OPERATING_RULES_SOURCE_ID = "hasna-agent-operating-rules", AGENT_OPERATING_RULES_VERSION = "1.1.26", AGENT_OPERATING_RULES_SOURCE_SET_VERSION = "2026-08-11", AGENT_OPERATING_RULES_PAYLOAD_SHA256 = "486844a3d869e3dabc2f33fd66479d4e2fb0a0d1864a3d8a3dd05669eb3f1b77", AGENT_OPERATING_RULES_UPSTREAM_FILE_SHA256 = "b8e89cdb49e207e5b497ac51384d67022b94fe5645cc9273db60384eb2c2fb32", SCOPED_OPERATIONAL_CONTROL_POLICY_REFERENCE = "hasna-agent-operating-rules/scoped-operational-control/v1", AGENT_OPERATING_RULES_UPSTREAM, SCOPED_OPERATIONAL_CONTROL_POLICY, AGENT_OPERATING_RULES_PROVENANCE, GLOBAL_AGENT_RULES_STANDARD_CONTENT;
|
|
176
200
|
var init_global_agent_rules_standard = __esm(() => {
|
|
201
|
+
init_types();
|
|
177
202
|
init_config_store();
|
|
178
203
|
AGENT_OPERATING_RULES_UPSTREAM = {
|
|
179
204
|
repository: "hasnaxyz/iapp-identities",
|
|
@@ -264,6 +289,7 @@ var init_global_agent_rules_standard = __esm(() => {
|
|
|
264
289
|
// src/lib/codewith-shared-todos-storage-standard.ts
|
|
265
290
|
var CODEWITH_SHARED_TODOS_STORAGE_POLICY_REFERENCE = "codewith/shared-todos-storage/v1", CODEWITH_SHARED_TODOS_STORAGE_STANDARD_CONTENT;
|
|
266
291
|
var init_codewith_shared_todos_storage_standard = __esm(() => {
|
|
292
|
+
init_types();
|
|
267
293
|
init_config_store();
|
|
268
294
|
CODEWITH_SHARED_TODOS_STORAGE_STANDARD_CONTENT = `# Codewith Shared Todos Storage Standard
|
|
269
295
|
|
|
@@ -4624,6 +4650,10 @@ function normalizeProfileAssetBinding(value) {
|
|
|
4624
4650
|
const rollback = record["rollback"];
|
|
4625
4651
|
if (!ASSET_ROLLBACK_POLICIES.includes(rollback))
|
|
4626
4652
|
throw new Error(`Invalid asset rollback policy: ${String(rollback)}`);
|
|
4653
|
+
const nativeAgent = record["nativeAgent"] === undefined ? undefined : normalizeNativeAgentMetadata(record["nativeAgent"]);
|
|
4654
|
+
if (nativeAgent && (kind !== "custom-agent" || strategy !== "emit-file" || !["claude", "sumi", "opencode"].includes(provider))) {
|
|
4655
|
+
throw new Error("nativeAgent metadata requires a supported emitted custom-agent definition.");
|
|
4656
|
+
}
|
|
4627
4657
|
return {
|
|
4628
4658
|
schema: PROFILE_ASSET_BINDING_SCHEMA,
|
|
4629
4659
|
assetKey,
|
|
@@ -4643,10 +4673,65 @@ function normalizeProfileAssetBinding(value) {
|
|
|
4643
4673
|
root,
|
|
4644
4674
|
relativePath: nonEmptyString(destinationRecord["relativePath"], "destination.relativePath")
|
|
4645
4675
|
},
|
|
4676
|
+
...nativeAgent ? { nativeAgent } : {},
|
|
4646
4677
|
uninstall,
|
|
4647
4678
|
rollback
|
|
4648
4679
|
};
|
|
4649
4680
|
}
|
|
4681
|
+
function normalizeNativeAgentMetadata(value) {
|
|
4682
|
+
const record = objectRecord(value, "nativeAgent");
|
|
4683
|
+
if (Object.keys(record).some((key) => !["name", "description", "frontmatter"].includes(key)))
|
|
4684
|
+
throw new Error("Unknown nativeAgent metadata field.");
|
|
4685
|
+
const name = nonEmptyString(record["name"], "nativeAgent.name");
|
|
4686
|
+
const description = nonEmptyString(record["description"], "nativeAgent.description");
|
|
4687
|
+
if (!/^[A-Za-z0-9][A-Za-z0-9_-]*$/.test(name) || name.length > 128)
|
|
4688
|
+
throw new Error("Invalid nativeAgent.name.");
|
|
4689
|
+
if (description.length > 4096 || /[\r\n\0]/.test(description))
|
|
4690
|
+
throw new Error("Invalid nativeAgent.description.");
|
|
4691
|
+
if (record["frontmatter"] === undefined)
|
|
4692
|
+
return { name, description };
|
|
4693
|
+
const frontmatter = record["frontmatter"];
|
|
4694
|
+
if (typeof frontmatter !== "string" || frontmatter.length > 16384 || frontmatter.includes("\x00"))
|
|
4695
|
+
throw new Error("Invalid nativeAgent.frontmatter.");
|
|
4696
|
+
const match2 = /^---\r?\n([\s\S]*?)\r?\n---\r?\n$/.exec(frontmatter);
|
|
4697
|
+
if (!match2)
|
|
4698
|
+
throw new Error("nativeAgent.frontmatter requires one complete newline-terminated YAML header.");
|
|
4699
|
+
const scalar = (raw2) => {
|
|
4700
|
+
if (raw2.startsWith('"')) {
|
|
4701
|
+
try {
|
|
4702
|
+
const parsed = JSON.parse(raw2);
|
|
4703
|
+
return typeof parsed === "string" ? parsed : undefined;
|
|
4704
|
+
} catch {
|
|
4705
|
+
return;
|
|
4706
|
+
}
|
|
4707
|
+
}
|
|
4708
|
+
if (!/^[A-Za-z0-9][A-Za-z0-9 _.,:;()/?@+-]*$/.test(raw2) || /:(?:\s|$)/.test(raw2))
|
|
4709
|
+
return;
|
|
4710
|
+
if (/^(?:true|yes|on|y)$/i.test(raw2))
|
|
4711
|
+
return true;
|
|
4712
|
+
if (/^(?:false|no|off|n)$/i.test(raw2))
|
|
4713
|
+
return false;
|
|
4714
|
+
if (/^null$/i.test(raw2))
|
|
4715
|
+
return null;
|
|
4716
|
+
if (/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]+)?$/.test(raw2))
|
|
4717
|
+
return Number(raw2);
|
|
4718
|
+
if (/^[0-9]/.test(raw2))
|
|
4719
|
+
return;
|
|
4720
|
+
return raw2;
|
|
4721
|
+
};
|
|
4722
|
+
const fields = new Map;
|
|
4723
|
+
for (const line of match2[1].split(/\r?\n/)) {
|
|
4724
|
+
if (!line.trim() || line.startsWith("#"))
|
|
4725
|
+
continue;
|
|
4726
|
+
const field = /^([A-Za-z][A-Za-z0-9_-]*):[ \t]+(.+)$/.exec(line);
|
|
4727
|
+
if (!field || fields.has(field[1]) || scalar(field[2]) === undefined)
|
|
4728
|
+
throw new Error("nativeAgent.frontmatter requires unambiguous, unique flat scalar fields.");
|
|
4729
|
+
fields.set(field[1], scalar(field[2]));
|
|
4730
|
+
}
|
|
4731
|
+
if (fields.get("name") !== name || fields.get("description") !== description)
|
|
4732
|
+
throw new Error("nativeAgent.frontmatter name and description must match explicit metadata.");
|
|
4733
|
+
return { name, description, frontmatter };
|
|
4734
|
+
}
|
|
4650
4735
|
function parseJson(value) {
|
|
4651
4736
|
try {
|
|
4652
4737
|
return JSON.parse(value);
|
|
@@ -4675,6 +4760,7 @@ var init_asset_plan = __esm(() => {
|
|
|
4675
4760
|
ASSET_CAPABILITY_DESCRIPTORS = Object.freeze([
|
|
4676
4761
|
assetCapability("claude", "code", "skill", "supported", ["emit-file"], "Claude Code project or profile skill files."),
|
|
4677
4762
|
assetCapability("claude", "code", "workflow", "supported", ["emit-file"], "Claude Code command and workflow files."),
|
|
4763
|
+
assetCapability("claude", "code", "custom-agent", "supported", ["emit-file"], "Claude Code Markdown subagents with native frontmatter in agents/.", ">=2.1.276 <3.0.0"),
|
|
4678
4764
|
assetCapability("claude", "code", "hook", "supported", ["emit-file"], "Claude Code hook configuration fragments."),
|
|
4679
4765
|
assetCapability("claude", "code", "plugin", "conditional", ["install-marketplace"], "Claude marketplace installation requires an explicit installer."),
|
|
4680
4766
|
assetCapability("codex", "cli", "skill", "supported", ["emit-file"], "Codex skill bundle files."),
|
|
@@ -4685,6 +4771,7 @@ var init_asset_plan = __esm(() => {
|
|
|
4685
4771
|
assetCapability("opencode", "cli", "workflow", "supported", ["emit-file"], "OpenCode command/workflow files."),
|
|
4686
4772
|
assetCapability("opencode", "cli", "plugin", "supported", ["emit-file"], "OpenCode local plugin modules."),
|
|
4687
4773
|
assetCapability("opencode", "cli", "custom-agent", "supported", ["emit-file"], "OpenCode custom agent files."),
|
|
4774
|
+
assetCapability("sumi", "cli", "custom-agent", "supported", ["emit-file"], "Sumi Markdown agent definitions in its explicit resolved config or project directory.", ">=0.2.22 <0.3.0"),
|
|
4688
4775
|
assetCapability("codewith", "cli", "skill", "supported", ["emit-file"], "Codewith skill bundle files."),
|
|
4689
4776
|
assetCapability("codewith", "cli", "plugin", "conditional", ["install-local", "install-marketplace"], "Codewith plugin installation requires an explicit installer."),
|
|
4690
4777
|
assetCapability("aicopilot", "cli", "skill", "supported", ["emit-file"], "AICopilot discovered skill files."),
|
|
@@ -4717,6 +4804,7 @@ var init_asset_plan = __esm(() => {
|
|
|
4717
4804
|
codex: "cli",
|
|
4718
4805
|
cursor: "ide",
|
|
4719
4806
|
opencode: "cli",
|
|
4807
|
+
sumi: "cli",
|
|
4720
4808
|
codewith: "cli",
|
|
4721
4809
|
qwen: "cli",
|
|
4722
4810
|
aicopilot: "cli",
|
|
@@ -4842,6 +4930,15 @@ var init_session_render = __esm(() => {
|
|
|
4842
4930
|
description: "OpenCode AGENTS.md plus opencode.json instructions pointing at managed fragments.",
|
|
4843
4931
|
providerSurface: "legacy-dual"
|
|
4844
4932
|
},
|
|
4933
|
+
sumi: {
|
|
4934
|
+
tool: "sumi",
|
|
4935
|
+
mode: "flattened-markdown",
|
|
4936
|
+
indexFile: "AGENTS.md",
|
|
4937
|
+
managedDir: SESSION_RENDER_INSTRUCTIONS_MANAGED_DIR,
|
|
4938
|
+
envVar: "SUMI_CONFIG_DIR",
|
|
4939
|
+
nativeImports: false,
|
|
4940
|
+
description: "Sumi native AGENTS.md in the explicit resolved config directory or project root."
|
|
4941
|
+
},
|
|
4845
4942
|
aicopilot: {
|
|
4846
4943
|
tool: "aicopilot",
|
|
4847
4944
|
mode: "flattened-markdown",
|
|
@@ -5063,6 +5160,7 @@ var init_instruction_graph = __esm(() => {
|
|
|
5063
5160
|
init_types();
|
|
5064
5161
|
init_session_render();
|
|
5065
5162
|
init_asset_plan();
|
|
5163
|
+
init_transforms();
|
|
5066
5164
|
COMMON_FALLBACKS = ["fail", "flatten", "promote-always", "omit"];
|
|
5067
5165
|
DEFAULT_PROVIDER_CAPABILITIES = Object.freeze({
|
|
5068
5166
|
claude: capability("claude", ">=1.0.0", "native-import", "CLAUDE.md @ imports plus path-gated rules", {
|
|
@@ -5074,6 +5172,7 @@ var init_instruction_graph = __esm(() => {
|
|
|
5074
5172
|
codex: capability("codex", ">=0.1.0", "flattened", "AGENTS.md", { asset_surface: "cli" }),
|
|
5075
5173
|
cursor: capability("cursor", ">=1.0.0", "cursor-rule", ".cursor/rules/*.mdc", { activation_modes: ["always", "glob"], conditional_artifacts: true, asset_surface: "ide" }),
|
|
5076
5174
|
opencode: capability("opencode", ">=1.0.0", "managed-fragment", "opencode.json instructions", { provider_variant: "v1-instructions", session_surface: "opencode-config-instructions" }),
|
|
5175
|
+
sumi: capability("sumi", ">=0.2.22 <0.3.0", "flattened", "AGENTS.md"),
|
|
5077
5176
|
codewith: capability("codewith", ">=0.1.0", "flattened", "CODEWITH.md"),
|
|
5078
5177
|
qwen: capability("qwen", ">=0.1.0", "flattened", "QWEN.md"),
|
|
5079
5178
|
aicopilot: capability("aicopilot", ">=0.1.0", "flattened", "AICOPILOT.md"),
|
|
@@ -8111,6 +8210,7 @@ async function createConfig(client, input) {
|
|
|
8111
8210
|
return getConfig(client, id);
|
|
8112
8211
|
}
|
|
8113
8212
|
async function updateConfig(client, idOrSlug, input) {
|
|
8213
|
+
validateExpectedConfigVersion(input.expected_version);
|
|
8114
8214
|
const existing = await getConfig(client, idOrSlug);
|
|
8115
8215
|
const sets = ["updated_at = now()", "version = version + 1"];
|
|
8116
8216
|
const params = [];
|
|
@@ -8148,13 +8248,27 @@ async function updateConfig(client, idOrSlug, input) {
|
|
|
8148
8248
|
const configIdParam = params.length;
|
|
8149
8249
|
params.push(randomUUID());
|
|
8150
8250
|
const snapshotIdParam = params.length;
|
|
8151
|
-
|
|
8152
|
-
|
|
8153
|
-
|
|
8251
|
+
let condition = "";
|
|
8252
|
+
if (input.expected_version !== undefined) {
|
|
8253
|
+
params.push(input.expected_version);
|
|
8254
|
+
condition = ` AND version::bigint = $${params.length}::bigint`;
|
|
8255
|
+
}
|
|
8256
|
+
const updated = await client.get(`WITH updated_config AS (
|
|
8257
|
+
UPDATE configs SET ${sets.join(", ")} WHERE id = $${configIdParam}${condition}
|
|
8258
|
+
RETURNING *
|
|
8259
|
+
), inserted_snapshot AS (
|
|
8260
|
+
INSERT INTO config_snapshots (id, config_id, content, version, created_at)
|
|
8261
|
+
SELECT $${snapshotIdParam}, id, content, version, now() FROM updated_config
|
|
8262
|
+
RETURNING config_id
|
|
8154
8263
|
)
|
|
8155
|
-
|
|
8156
|
-
|
|
8157
|
-
|
|
8264
|
+
SELECT updated_config.* FROM updated_config
|
|
8265
|
+
JOIN inserted_snapshot ON inserted_snapshot.config_id = updated_config.id`, params);
|
|
8266
|
+
if (!updated) {
|
|
8267
|
+
if (input.expected_version !== undefined)
|
|
8268
|
+
throw new ConfigVersionConflictError(existing.id, input.expected_version);
|
|
8269
|
+
throw new ConfigNotFoundError(existing.id);
|
|
8270
|
+
}
|
|
8271
|
+
return rowToConfig(updated);
|
|
8158
8272
|
}
|
|
8159
8273
|
async function deleteConfig(client, idOrSlug) {
|
|
8160
8274
|
const existing = await getConfig(client, idOrSlug);
|
|
@@ -8810,6 +8924,18 @@ async function handleV1Request(req, url, context = {}) {
|
|
|
8810
8924
|
}
|
|
8811
8925
|
return errorResponse(405, `method ${method} not allowed on /v1/configs/:id/snapshots`);
|
|
8812
8926
|
}
|
|
8927
|
+
if (action === "conditional-update") {
|
|
8928
|
+
if (method !== "POST")
|
|
8929
|
+
return errorResponse(405, `method ${method} not allowed on /v1/configs/:id/conditional-update`);
|
|
8930
|
+
const body = await readJson(req);
|
|
8931
|
+
if (!body)
|
|
8932
|
+
return errorResponse(400, "invalid JSON body");
|
|
8933
|
+
if (body.expected_version === undefined)
|
|
8934
|
+
throw new InvalidExpectedVersionError;
|
|
8935
|
+
validateExpectedConfigVersion(body.expected_version);
|
|
8936
|
+
const config = await updateConfig(client, id, body);
|
|
8937
|
+
return json({ config });
|
|
8938
|
+
}
|
|
8813
8939
|
if (action)
|
|
8814
8940
|
return errorResponse(404, `unknown config action: ${action}`);
|
|
8815
8941
|
if (method === "GET") {
|
|
@@ -9013,6 +9139,11 @@ async function handleV1Request(req, url, context = {}) {
|
|
|
9013
9139
|
} catch (e) {
|
|
9014
9140
|
if (e instanceof HttpInputError)
|
|
9015
9141
|
return errorResponse(e.status, e.message, { code: e.code });
|
|
9142
|
+
if (e instanceof InvalidExpectedVersionError)
|
|
9143
|
+
return errorResponse(400, e.message, { code: e.code });
|
|
9144
|
+
if (e instanceof ConfigVersionConflictError) {
|
|
9145
|
+
return errorResponse(409, e.message, { code: e.code, config_id: e.config_id, expected_version: e.expected_version });
|
|
9146
|
+
}
|
|
9016
9147
|
if (e instanceof StoreValidationError)
|
|
9017
9148
|
return errorResponse(400, e.message, { code: e.code });
|
|
9018
9149
|
if (e instanceof IdempotencyConflictError)
|
|
@@ -9211,6 +9342,26 @@ function buildV1OpenApiDocument(version = getPackageVersion()) {
|
|
|
9211
9342
|
UpdateConfigInput: {
|
|
9212
9343
|
type: "object",
|
|
9213
9344
|
properties: {
|
|
9345
|
+
expected_version: { type: "integer", minimum: 1, description: "Atomically require this current version; a mismatch returns 409 without changing the config or snapshots." },
|
|
9346
|
+
name: { type: "string" },
|
|
9347
|
+
kind: { type: "string" },
|
|
9348
|
+
category: { type: "string" },
|
|
9349
|
+
agent: { type: "string" },
|
|
9350
|
+
target_path: { type: "string", nullable: true },
|
|
9351
|
+
outputs: { type: "array", items: { type: "object" } },
|
|
9352
|
+
format: { type: "string" },
|
|
9353
|
+
content: { type: "string" },
|
|
9354
|
+
description: { type: "string", nullable: true },
|
|
9355
|
+
tags: { type: "array", items: { type: "string" } },
|
|
9356
|
+
is_template: { type: "boolean" },
|
|
9357
|
+
synced_at: { type: "string", nullable: true }
|
|
9358
|
+
}
|
|
9359
|
+
},
|
|
9360
|
+
ConditionalUpdateConfigInput: {
|
|
9361
|
+
type: "object",
|
|
9362
|
+
required: ["expected_version"],
|
|
9363
|
+
properties: {
|
|
9364
|
+
expected_version: { type: "integer", minimum: 1, description: "Atomically require this current version; a mismatch returns 409 without changing the config or snapshots." },
|
|
9214
9365
|
name: { type: "string" },
|
|
9215
9366
|
kind: { type: "string" },
|
|
9216
9367
|
category: { type: "string" },
|
|
@@ -9298,6 +9449,21 @@ function buildV1OpenApiDocument(version = getPackageVersion()) {
|
|
|
9298
9449
|
binding: { $ref: "#/components/schemas/ProfileConfigBindingSpec" }
|
|
9299
9450
|
}
|
|
9300
9451
|
},
|
|
9452
|
+
NativeAgentMetadata: {
|
|
9453
|
+
type: "object",
|
|
9454
|
+
additionalProperties: false,
|
|
9455
|
+
required: ["name", "description"],
|
|
9456
|
+
properties: {
|
|
9457
|
+
name: { type: "string", minLength: 1, maxLength: 128, pattern: "^[A-Za-z0-9][A-Za-z0-9_-]*$" },
|
|
9458
|
+
description: { type: "string", minLength: 1, maxLength: 4096, pattern: `^[^\r
|
|
9459
|
+
\x00]+$` },
|
|
9460
|
+
frontmatter: {
|
|
9461
|
+
type: "string",
|
|
9462
|
+
maxLength: 16384,
|
|
9463
|
+
description: "Optional complete reviewed newline-terminated flat YAML header; runtime validation requires its name and description scalars to match the explicit metadata."
|
|
9464
|
+
}
|
|
9465
|
+
}
|
|
9466
|
+
},
|
|
9301
9467
|
ProfileAssetBindingSpec: {
|
|
9302
9468
|
type: "object",
|
|
9303
9469
|
required: ["schema", "assetKey", "kind", "enabled", "required", "selector", "source", "destination", "uninstall", "rollback"],
|
|
@@ -9337,6 +9503,7 @@ function buildV1OpenApiDocument(version = getPackageVersion()) {
|
|
|
9337
9503
|
relativePath: { type: "string", minLength: 1 }
|
|
9338
9504
|
}
|
|
9339
9505
|
},
|
|
9506
|
+
nativeAgent: { $ref: "#/components/schemas/NativeAgentMetadata" },
|
|
9340
9507
|
uninstall: { type: "string", enum: ["remove-managed", "retain"] },
|
|
9341
9508
|
rollback: { type: "string", enum: ["snapshot", "installer-receipt", "none"] }
|
|
9342
9509
|
}
|
|
@@ -9632,6 +9799,8 @@ function buildV1OpenApiDocument(version = getPackageVersion()) {
|
|
|
9632
9799
|
content: { "application/json": { schema: { $ref: "#/components/schemas/UpdateConfigInput" } } }
|
|
9633
9800
|
},
|
|
9634
9801
|
responses: {
|
|
9802
|
+
"400": { description: "Invalid expected_version; must be a positive safe integer." },
|
|
9803
|
+
"409": { description: "CONFIG_VERSION_CONFLICT: expected_version no longer matches; config and snapshots are unchanged." },
|
|
9635
9804
|
"200": {
|
|
9636
9805
|
content: {
|
|
9637
9806
|
"application/json": {
|
|
@@ -9650,6 +9819,8 @@ function buildV1OpenApiDocument(version = getPackageVersion()) {
|
|
|
9650
9819
|
content: { "application/json": { schema: { $ref: "#/components/schemas/UpdateConfigInput" } } }
|
|
9651
9820
|
},
|
|
9652
9821
|
responses: {
|
|
9822
|
+
"400": { description: "Invalid expected_version; must be a positive safe integer." },
|
|
9823
|
+
"409": { description: "CONFIG_VERSION_CONFLICT: expected_version no longer matches; config and snapshots are unchanged." },
|
|
9653
9824
|
"200": {
|
|
9654
9825
|
content: {
|
|
9655
9826
|
"application/json": {
|
|
@@ -9674,6 +9845,26 @@ function buildV1OpenApiDocument(version = getPackageVersion()) {
|
|
|
9674
9845
|
}
|
|
9675
9846
|
}
|
|
9676
9847
|
},
|
|
9848
|
+
"/v1/configs/{id}/conditional-update": {
|
|
9849
|
+
post: {
|
|
9850
|
+
operationId: "conditionalUpdateConfig",
|
|
9851
|
+
summary: "Atomically update a config only if its current version matches",
|
|
9852
|
+
description: "Requires expected_version. Older servers return 404 without changing the config. Clients must never retry through an unconditional update route.",
|
|
9853
|
+
parameters: [{ name: "id", in: "path", required: true, schema: { type: "string" } }],
|
|
9854
|
+
requestBody: {
|
|
9855
|
+
required: true,
|
|
9856
|
+
content: { "application/json": { schema: { $ref: "#/components/schemas/ConditionalUpdateConfigInput" } } }
|
|
9857
|
+
},
|
|
9858
|
+
responses: {
|
|
9859
|
+
"200": {
|
|
9860
|
+
content: { "application/json": { schema: { type: "object", properties: { config: { $ref: "#/components/schemas/Config" } } } } }
|
|
9861
|
+
},
|
|
9862
|
+
"400": { description: "expected_version is required and must be a positive safe integer." },
|
|
9863
|
+
"404": { description: "Config not found, or conditional updates are unsupported by this server." },
|
|
9864
|
+
"409": { description: "CONFIG_VERSION_CONFLICT: config and snapshots are unchanged." }
|
|
9865
|
+
}
|
|
9866
|
+
}
|
|
9867
|
+
},
|
|
9677
9868
|
"/v1/configs/{id}/snapshots": {
|
|
9678
9869
|
get: {
|
|
9679
9870
|
operationId: "listSnapshots",
|
package/dist/server/openapi.d.ts
CHANGED
|
@@ -321,6 +321,67 @@ export declare function buildV1OpenApiDocument(version?: string): {
|
|
|
321
321
|
UpdateConfigInput: {
|
|
322
322
|
type: string;
|
|
323
323
|
properties: {
|
|
324
|
+
expected_version: {
|
|
325
|
+
type: string;
|
|
326
|
+
minimum: number;
|
|
327
|
+
description: string;
|
|
328
|
+
};
|
|
329
|
+
name: {
|
|
330
|
+
type: string;
|
|
331
|
+
};
|
|
332
|
+
kind: {
|
|
333
|
+
type: string;
|
|
334
|
+
};
|
|
335
|
+
category: {
|
|
336
|
+
type: string;
|
|
337
|
+
};
|
|
338
|
+
agent: {
|
|
339
|
+
type: string;
|
|
340
|
+
};
|
|
341
|
+
target_path: {
|
|
342
|
+
type: string;
|
|
343
|
+
nullable: boolean;
|
|
344
|
+
};
|
|
345
|
+
outputs: {
|
|
346
|
+
type: string;
|
|
347
|
+
items: {
|
|
348
|
+
type: string;
|
|
349
|
+
};
|
|
350
|
+
};
|
|
351
|
+
format: {
|
|
352
|
+
type: string;
|
|
353
|
+
};
|
|
354
|
+
content: {
|
|
355
|
+
type: string;
|
|
356
|
+
};
|
|
357
|
+
description: {
|
|
358
|
+
type: string;
|
|
359
|
+
nullable: boolean;
|
|
360
|
+
};
|
|
361
|
+
tags: {
|
|
362
|
+
type: string;
|
|
363
|
+
items: {
|
|
364
|
+
type: string;
|
|
365
|
+
};
|
|
366
|
+
};
|
|
367
|
+
is_template: {
|
|
368
|
+
type: string;
|
|
369
|
+
};
|
|
370
|
+
synced_at: {
|
|
371
|
+
type: string;
|
|
372
|
+
nullable: boolean;
|
|
373
|
+
};
|
|
374
|
+
};
|
|
375
|
+
};
|
|
376
|
+
ConditionalUpdateConfigInput: {
|
|
377
|
+
type: string;
|
|
378
|
+
required: string[];
|
|
379
|
+
properties: {
|
|
380
|
+
expected_version: {
|
|
381
|
+
type: string;
|
|
382
|
+
minimum: number;
|
|
383
|
+
description: string;
|
|
384
|
+
};
|
|
324
385
|
name: {
|
|
325
386
|
type: string;
|
|
326
387
|
};
|
|
@@ -512,6 +573,30 @@ export declare function buildV1OpenApiDocument(version?: string): {
|
|
|
512
573
|
};
|
|
513
574
|
};
|
|
514
575
|
};
|
|
576
|
+
NativeAgentMetadata: {
|
|
577
|
+
type: string;
|
|
578
|
+
additionalProperties: boolean;
|
|
579
|
+
required: string[];
|
|
580
|
+
properties: {
|
|
581
|
+
name: {
|
|
582
|
+
type: string;
|
|
583
|
+
minLength: number;
|
|
584
|
+
maxLength: number;
|
|
585
|
+
pattern: string;
|
|
586
|
+
};
|
|
587
|
+
description: {
|
|
588
|
+
type: string;
|
|
589
|
+
minLength: number;
|
|
590
|
+
maxLength: number;
|
|
591
|
+
pattern: string;
|
|
592
|
+
};
|
|
593
|
+
frontmatter: {
|
|
594
|
+
type: string;
|
|
595
|
+
maxLength: number;
|
|
596
|
+
description: string;
|
|
597
|
+
};
|
|
598
|
+
};
|
|
599
|
+
};
|
|
515
600
|
ProfileAssetBindingSpec: {
|
|
516
601
|
type: string;
|
|
517
602
|
required: string[];
|
|
@@ -594,6 +679,9 @@ export declare function buildV1OpenApiDocument(version?: string): {
|
|
|
594
679
|
};
|
|
595
680
|
};
|
|
596
681
|
};
|
|
682
|
+
nativeAgent: {
|
|
683
|
+
$ref: string;
|
|
684
|
+
};
|
|
597
685
|
uninstall: {
|
|
598
686
|
type: string;
|
|
599
687
|
enum: string[];
|
|
@@ -1352,6 +1440,12 @@ export declare function buildV1OpenApiDocument(version?: string): {
|
|
|
1352
1440
|
};
|
|
1353
1441
|
};
|
|
1354
1442
|
responses: {
|
|
1443
|
+
"400": {
|
|
1444
|
+
description: string;
|
|
1445
|
+
};
|
|
1446
|
+
"409": {
|
|
1447
|
+
description: string;
|
|
1448
|
+
};
|
|
1355
1449
|
"200": {
|
|
1356
1450
|
content: {
|
|
1357
1451
|
"application/json": {
|
|
@@ -1390,6 +1484,12 @@ export declare function buildV1OpenApiDocument(version?: string): {
|
|
|
1390
1484
|
};
|
|
1391
1485
|
};
|
|
1392
1486
|
responses: {
|
|
1487
|
+
"400": {
|
|
1488
|
+
description: string;
|
|
1489
|
+
};
|
|
1490
|
+
"409": {
|
|
1491
|
+
description: string;
|
|
1492
|
+
};
|
|
1393
1493
|
"200": {
|
|
1394
1494
|
content: {
|
|
1395
1495
|
"application/json": {
|
|
@@ -1438,6 +1538,56 @@ export declare function buildV1OpenApiDocument(version?: string): {
|
|
|
1438
1538
|
};
|
|
1439
1539
|
};
|
|
1440
1540
|
};
|
|
1541
|
+
"/v1/configs/{id}/conditional-update": {
|
|
1542
|
+
post: {
|
|
1543
|
+
operationId: string;
|
|
1544
|
+
summary: string;
|
|
1545
|
+
description: string;
|
|
1546
|
+
parameters: {
|
|
1547
|
+
name: string;
|
|
1548
|
+
in: string;
|
|
1549
|
+
required: boolean;
|
|
1550
|
+
schema: {
|
|
1551
|
+
type: string;
|
|
1552
|
+
};
|
|
1553
|
+
}[];
|
|
1554
|
+
requestBody: {
|
|
1555
|
+
required: boolean;
|
|
1556
|
+
content: {
|
|
1557
|
+
"application/json": {
|
|
1558
|
+
schema: {
|
|
1559
|
+
$ref: string;
|
|
1560
|
+
};
|
|
1561
|
+
};
|
|
1562
|
+
};
|
|
1563
|
+
};
|
|
1564
|
+
responses: {
|
|
1565
|
+
"200": {
|
|
1566
|
+
content: {
|
|
1567
|
+
"application/json": {
|
|
1568
|
+
schema: {
|
|
1569
|
+
type: string;
|
|
1570
|
+
properties: {
|
|
1571
|
+
config: {
|
|
1572
|
+
$ref: string;
|
|
1573
|
+
};
|
|
1574
|
+
};
|
|
1575
|
+
};
|
|
1576
|
+
};
|
|
1577
|
+
};
|
|
1578
|
+
};
|
|
1579
|
+
"400": {
|
|
1580
|
+
description: string;
|
|
1581
|
+
};
|
|
1582
|
+
"404": {
|
|
1583
|
+
description: string;
|
|
1584
|
+
};
|
|
1585
|
+
"409": {
|
|
1586
|
+
description: string;
|
|
1587
|
+
};
|
|
1588
|
+
};
|
|
1589
|
+
};
|
|
1590
|
+
};
|
|
1441
1591
|
"/v1/configs/{id}/snapshots": {
|
|
1442
1592
|
get: {
|
|
1443
1593
|
operationId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../src/server/openapi.ts"],"names":[],"mappings":"AAgKA,wBAAgB,sBAAsB,CAAC,OAAO,SAAsB
|
|
1
|
+
{"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../src/server/openapi.ts"],"names":[],"mappings":"AAgKA,wBAAgB,sBAAsB,CAAC,OAAO,SAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAk6BnE"}
|
package/dist/server/v1.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"v1.d.ts","sourceRoot":"","sources":["../../src/server/v1.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAM7D,eAAO,MAAM,sBAAsB,QAAc,CAAC;AAClD,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAC1C,eAAO,MAAM,yBAAyB,MAAM,CAAC;AAE7C,qBAAa,cAAe,SAAQ,KAAK;IAErC,QAAQ,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG;IAC1B,QAAQ,CAAC,IAAI,EAAE,wBAAwB,GAAG,uBAAuB,GAAG,yBAAyB;gBADpF,MAAM,EAAE,GAAG,GAAG,GAAG,EACjB,IAAI,EAAE,wBAAwB,GAAG,uBAAuB,GAAG,yBAAyB,EAC7F,OAAO,EAAE,MAAM;CAKlB;AAUD,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B;AA0DD,wBAAsB,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAwCjE;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAM3E;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,GAAG,EACR,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"v1.d.ts","sourceRoot":"","sources":["../../src/server/v1.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAM7D,eAAO,MAAM,sBAAsB,QAAc,CAAC;AAClD,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAC1C,eAAO,MAAM,yBAAyB,MAAM,CAAC;AAE7C,qBAAa,cAAe,SAAQ,KAAK;IAErC,QAAQ,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG;IAC1B,QAAQ,CAAC,IAAI,EAAE,wBAAwB,GAAG,uBAAuB,GAAG,yBAAyB;gBADpF,MAAM,EAAE,GAAG,GAAG,GAAG,EACjB,IAAI,EAAE,wBAAwB,GAAG,uBAAuB,GAAG,yBAAyB,EAC7F,OAAO,EAAE,MAAM;CAKlB;AAUD,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B;AA0DD,wBAAsB,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAwCjE;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAM3E;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,GAAG,EACR,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAuW1B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cloud-store.d.ts","sourceRoot":"","sources":["../../src/storage/cloud-store.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,
|
|
1
|
+
{"version":3,"file":"cloud-store.d.ts","sourceRoot":"","sources":["../../src/storage/cloud-store.ts"],"names":[],"mappings":"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"}
|