signetai 0.165.0 → 0.166.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/mcp-stdio.js CHANGED
@@ -43926,6 +43926,7 @@ function buildRememberRequestBody(content, options = {}) {
43926
43926
  validUntil: options.validUntil,
43927
43927
  sourceCreatedAt: options.sourceCreatedAt,
43928
43928
  reviewAfter: options.reviewAfter,
43929
+ supersedes: options.supersedes,
43929
43930
  hints: options.hints,
43930
43931
  transcript: options.transcript,
43931
43932
  structured: normalizeStructuredMemoryPayload(options.structured),
@@ -48289,6 +48290,7 @@ var ONTOLOGY_PROPOSAL_OPERATIONS = [
48289
48290
  "update_link",
48290
48291
  "archive_link",
48291
48292
  "merge_entities",
48293
+ "merge_aspects",
48292
48294
  "supersede_claim_value",
48293
48295
  "create_policy",
48294
48296
  "create_action_type",
@@ -50051,8 +50053,10 @@ var DEFAULT_PIPELINE_V2 = {
50051
50053
  traversal: {
50052
50054
  enabled: true,
50053
50055
  primary: true,
50054
- maxAspectsPerEntity: 10,
50055
- maxAttributesPerAspect: 20,
50056
+ maxAspectsPerEntity: 20,
50057
+ maxAttributesPerAspect: 50,
50058
+ maxWriteAspectsPerEntity: 20,
50059
+ maxWriteAttributesPerAspect: 50,
50056
50060
  maxDependencyHops: 10,
50057
50061
  minDependencyStrength: 0.3,
50058
50062
  maxBranching: 4,
@@ -50821,6 +50825,15 @@ function txSupersedeMemory(db, input) {
50821
50825
  currentSupersededBy: existing.superseded_by
50822
50826
  };
50823
50827
  }
50828
+ if (existing.superseded_by !== null && existing.superseded_by !== input.supersededBy) {
50829
+ return {
50830
+ status: "already_superseded_by_other",
50831
+ memoryId: input.memoryId,
50832
+ supersededBy: existing.superseded_by,
50833
+ currentVersion: existing.version,
50834
+ currentSupersededBy: existing.superseded_by
50835
+ };
50836
+ }
50824
50837
  const target2 = db.prepare(`SELECT id, is_deleted, agent_id, project, scope, visibility
50825
50838
  FROM memories
50826
50839
  WHERE id = ?`).get(input.supersededBy);
@@ -50893,7 +50906,7 @@ function applyOntologyOperationBatchInTx(db, params) {
50893
50906
  const row = getProposalInTx(db, inserted.id, params.agentId);
50894
50907
  if (row === null)
50895
50908
  throw new OntologyProposalError("Proposal not found", 404);
50896
- const result = applyOperation(db, row, params.actor);
50909
+ const result = applyOperation(db, row, params.actor, params.writeCaps);
50897
50910
  items.push({
50898
50911
  proposal: markAppliedInTx(db, row, params.actor, result),
50899
50912
  result,
@@ -51355,7 +51368,7 @@ function restoreAttributeMemoryInTx(db, memoryId, proposal) {
51355
51368
  createdAt: changedAt
51356
51369
  });
51357
51370
  }
51358
- function applyAddClaimValue(db, agentId, proposal, payload) {
51371
+ function applyAddClaimValue(db, agentId, proposal, payload, writeCaps) {
51359
51372
  const entity = readString2(payload, "entity");
51360
51373
  const aspect = readString2(payload, "aspect");
51361
51374
  const claimKey = readString2(payload, "claim_key");
@@ -51369,6 +51382,9 @@ function applyAddClaimValue(db, agentId, proposal, payload) {
51369
51382
  if (value === null)
51370
51383
  throw new OntologyProposalError("payload.value is required", 400);
51371
51384
  const entityId = resolveOrCreateEntity(db, agentId, entity, normalizeEntityType2(readString2(payload, "entity_type")));
51385
+ const addEntityRow = db.prepare("SELECT id, name FROM entities WHERE id = ?").get(entityId);
51386
+ if (addEntityRow !== undefined)
51387
+ enforceAspectCapForNewAspect(db, addEntityRow, agentId, aspect, writeCaps);
51372
51388
  const aspectId = resolveOrCreateAspect(db, entityId, agentId, aspect);
51373
51389
  const groupKey = readString2(payload, "group_key") ?? "general";
51374
51390
  const kind = normalizeAttributeKind(readString2(payload, "kind"));
@@ -51385,6 +51401,14 @@ function applyAddClaimValue(db, agentId, proposal, payload) {
51385
51401
  if (existing) {
51386
51402
  return { entityId, aspectId, attributeId: existing.id, deduped: true };
51387
51403
  }
51404
+ if (writeCaps !== undefined) {
51405
+ const attrCount = db.prepare(`SELECT COUNT(*) AS c FROM entity_attributes
51406
+ WHERE aspect_id = ? AND agent_id = ? AND status = 'active'`).get(aspectId, agentId);
51407
+ if (attrCount.c >= writeCaps.maxAttributesPerAspect) {
51408
+ const aspectName = db.prepare("SELECT name FROM entity_aspects WHERE id = ?").get(aspectId);
51409
+ throw new OntologyProposalError(`aspect '${aspectName?.name ?? aspectId}' is at attribute cap (${attrCount.c}/${writeCaps.maxAttributesPerAspect}) — supersede or expire an existing claim, or consolidate duplicates, before adding`, 409);
51410
+ }
51411
+ }
51388
51412
  const id = crypto.randomUUID();
51389
51413
  const confidence = clamp01(readNumber(payload, "confidence") ?? proposal.confidence);
51390
51414
  const importance = clamp01(readNumber(payload, "importance") ?? confidence);
@@ -51411,7 +51435,7 @@ function applyAddClaimValue(db, agentId, proposal, payload) {
51411
51435
  });
51412
51436
  return { entityId, aspectId, attributeId: id, memoryId, deduped: false };
51413
51437
  }
51414
- function applySetClaimValue(db, agentId, proposal, payload) {
51438
+ function applySetClaimValue(db, agentId, proposal, payload, writeCaps) {
51415
51439
  const entity = readString2(payload, "entity");
51416
51440
  const aspect = readString2(payload, "aspect");
51417
51441
  const claimKey = canonicalKey(readString2(payload, "claim_key") ?? readString2(payload, "claim"));
@@ -51453,6 +51477,14 @@ function applySetClaimValue(db, agentId, proposal, payload) {
51453
51477
  throw new OntologyProposalError("Refusing to replace active constraint claim without force", 409);
51454
51478
  }
51455
51479
  const previous = active[0] ?? slot[0] ?? null;
51480
+ if (previous === null && writeCaps !== undefined) {
51481
+ const attrCount = db.prepare(`SELECT COUNT(*) AS c FROM entity_attributes
51482
+ WHERE aspect_id = ? AND agent_id = ? AND status = 'active'`).get(aspectId, agentId);
51483
+ if (attrCount.c >= writeCaps.maxAttributesPerAspect) {
51484
+ const aspectName = db.prepare("SELECT name FROM entity_aspects WHERE id = ?").get(aspectId);
51485
+ throw new OntologyProposalError(`aspect '${aspectName?.name ?? aspectId}' is at attribute cap (${attrCount.c}/${writeCaps.maxAttributesPerAspect}) — supersede or expire an existing claim, or consolidate duplicates, before adding`, 409);
51486
+ }
51487
+ }
51456
51488
  const version2 = previous === null ? 1 : Math.max(...slot.map((row) => row.version ?? 1)) + 1;
51457
51489
  const rootId = previous?.version_root_id ?? previous?.id ?? crypto.randomUUID();
51458
51490
  const id = version2 === 1 ? rootId : crypto.randomUUID();
@@ -51624,7 +51656,21 @@ function applyArchiveEntity(db, agentId, proposal, payload, actor) {
51624
51656
  WHERE id = ? AND agent_id = ?`).run(actor, readString2(payload, "reason") ?? proposal.rationale, proposal.id, JSON.stringify(proposalAuditEvidence(proposal)), entity.id, agentId);
51625
51657
  return { entityId: entity.id, archived: true };
51626
51658
  }
51627
- function applyCreateAspect(db, agentId, proposal, payload) {
51659
+ function enforceAspectCapForNewAspect(db, entity, agentId, name, writeCaps) {
51660
+ if (writeCaps === undefined)
51661
+ return;
51662
+ const key = canonical(name);
51663
+ const activeAspect = db.prepare(`SELECT id FROM entity_aspects
51664
+ WHERE entity_id = ? AND agent_id = ? AND canonical_name = ? AND COALESCE(status, 'active') = 'active'`).get(entity.id, agentId, key);
51665
+ if (activeAspect != null)
51666
+ return;
51667
+ const aspectCount = db.prepare(`SELECT COUNT(*) AS c FROM entity_aspects
51668
+ WHERE entity_id = ? AND agent_id = ? AND COALESCE(status, 'active') = 'active'`).get(entity.id, agentId);
51669
+ if (aspectCount.c >= writeCaps.maxAspectsPerEntity) {
51670
+ throw new OntologyProposalError(`entity '${entity.name}' is at aspect cap (${aspectCount.c}/${writeCaps.maxAspectsPerEntity}) — consolidate or archive an existing aspect before creating a new one`, 409);
51671
+ }
51672
+ }
51673
+ function applyCreateAspect(db, agentId, proposal, payload, writeCaps) {
51628
51674
  const entitySelector = readPayloadSelector(payload, "entity", "entity_id");
51629
51675
  const name = readString2(payload, "name") ?? readString2(payload, "aspect");
51630
51676
  if (entitySelector === null)
@@ -51632,6 +51678,7 @@ function applyCreateAspect(db, agentId, proposal, payload) {
51632
51678
  if (name === null)
51633
51679
  throw new OntologyProposalError("payload.name is required", 400);
51634
51680
  const entity = resolveEntityStrict(db, agentId, entitySelector);
51681
+ enforceAspectCapForNewAspect(db, entity, agentId, name, writeCaps);
51635
51682
  const aspectId = resolveOrCreateAspect(db, entity.id, agentId, name);
51636
51683
  db.prepare(`UPDATE entity_aspects
51637
51684
  SET proposal_id = ?, proposal_evidence = ?, updated_at = datetime('now')
@@ -51795,6 +51842,68 @@ function applyMergeEntities(db, agentId, payload) {
51795
51842
  warnings: plan.warnings
51796
51843
  };
51797
51844
  }
51845
+ function applyMergeAspects(db, agentId, proposal, payload) {
51846
+ const entitySelector = readPayloadSelector(payload, "entity", "entity_id");
51847
+ const targetSelector = readPayloadSelector(payload, "target", "target_aspect", "target_aspect_id", "aspect");
51848
+ const rawSources = readStringArray(payload, "sources") ?? readStringArray(payload, "source_aspects");
51849
+ if (entitySelector === null)
51850
+ throw new OntologyProposalError("payload.entity is required", 400);
51851
+ if (targetSelector === null)
51852
+ throw new OntologyProposalError("payload.target is required", 400);
51853
+ if (rawSources.length === 0)
51854
+ throw new OntologyProposalError("payload.sources is required", 400);
51855
+ const entity = resolveEntityStrict(db, agentId, entitySelector);
51856
+ const target2 = resolveAspectStrict(db, agentId, entity.id, targetSelector);
51857
+ const newName = readString2(payload, "new_name");
51858
+ if (newName !== null) {
51859
+ const key = canonical(newName);
51860
+ const collision = db.prepare(`SELECT id FROM entity_aspects
51861
+ WHERE entity_id = ? AND agent_id = ? AND id != ?
51862
+ AND COALESCE(status, 'active') = 'active'
51863
+ AND (canonical_name = ? OR LOWER(name) = ?)
51864
+ LIMIT 1`).get(entity.id, agentId, target2.id, key, key);
51865
+ if (collision)
51866
+ throw new OntologyProposalError(`Aspect collides with "${newName}"`, 409);
51867
+ }
51868
+ const evidence = JSON.stringify(proposalAuditEvidence(proposal));
51869
+ const moved = [];
51870
+ let totalMoved = 0;
51871
+ const seen = new Set([target2.id]);
51872
+ for (const raw of rawSources) {
51873
+ if (typeof raw !== "string")
51874
+ throw new OntologyProposalError("payload.sources must be aspect selectors", 400);
51875
+ const source = resolveAspectStrict(db, agentId, entity.id, raw);
51876
+ if (seen.has(source.id))
51877
+ continue;
51878
+ seen.add(source.id);
51879
+ const attributes = db.prepare("SELECT id FROM entity_attributes WHERE aspect_id = ? AND agent_id = ?").all(source.id, agentId);
51880
+ for (const attribute of attributes) {
51881
+ db.prepare(`UPDATE entity_attributes
51882
+ SET aspect_id = ?, updated_at = datetime('now')
51883
+ WHERE id = ? AND agent_id = ?`).run(target2.id, attribute.id, agentId);
51884
+ }
51885
+ db.prepare(`UPDATE entity_aspects
51886
+ SET status = 'archived', archived_at = datetime('now'), archived_by = ?,
51887
+ archive_reason = ?, proposal_id = ?, proposal_evidence = ?, updated_at = datetime('now')
51888
+ WHERE id = ? AND agent_id = ? AND COALESCE(status, 'active') = 'active'`).run(proposal.created_by || "ontology-merge", `Merged into aspect '${target2.name}'`, proposal.id, evidence, source.id, agentId);
51889
+ moved.push({ aspect: source.name, attributes: attributes.length });
51890
+ totalMoved += attributes.length;
51891
+ }
51892
+ if (moved.length === 0)
51893
+ throw new OntologyProposalError("No distinct source aspects to merge", 400);
51894
+ if (newName !== null) {
51895
+ db.prepare(`UPDATE entity_aspects
51896
+ SET name = ?, canonical_name = ?, proposal_id = ?, proposal_evidence = ?, updated_at = datetime('now')
51897
+ WHERE id = ? AND agent_id = ?`).run(newName, canonical(newName), proposal.id, evidence, target2.id, agentId);
51898
+ }
51899
+ return {
51900
+ entityId: entity.id,
51901
+ targetAspectId: target2.id,
51902
+ targetAspect: newName ?? target2.name,
51903
+ mergedAspects: moved,
51904
+ totalAttributesMoved: totalMoved
51905
+ };
51906
+ }
51798
51907
  function applyCreateLink(db, agentId, proposal, payload) {
51799
51908
  const sourceIdSelector = readString2(payload, "source_entity_id");
51800
51909
  const targetIdSelector = readString2(payload, "target_entity_id");
@@ -51927,7 +52036,7 @@ function applyArchiveEntityAlias(db, agentId, proposal, payload) {
51927
52036
  throw new OntologyProposalError("Alias not found", 404);
51928
52037
  return { aliasId, entityId: entity.id, archived: true };
51929
52038
  }
51930
- function applyOperation(db, proposal, actor) {
52039
+ function applyOperation(db, proposal, actor, writeCaps) {
51931
52040
  const payload = parseJsonRecord(proposal.payload);
51932
52041
  if (proposal.operation === "create_entity")
51933
52042
  return applyCreateEntity(db, proposal.agent_id, proposal, payload);
@@ -51936,17 +52045,19 @@ function applyOperation(db, proposal, actor) {
51936
52045
  if (proposal.operation === "archive_entity")
51937
52046
  return applyArchiveEntity(db, proposal.agent_id, proposal, payload, actor);
51938
52047
  if (proposal.operation === "create_aspect")
51939
- return applyCreateAspect(db, proposal.agent_id, proposal, payload);
52048
+ return applyCreateAspect(db, proposal.agent_id, proposal, payload, writeCaps);
51940
52049
  if (proposal.operation === "rename_aspect")
51941
52050
  return applyRenameAspect(db, proposal.agent_id, proposal, payload);
51942
52051
  if (proposal.operation === "archive_aspect")
51943
52052
  return applyArchiveAspect(db, proposal.agent_id, proposal, payload, actor);
51944
52053
  if (proposal.operation === "add_claim_value")
51945
- return applyAddClaimValue(db, proposal.agent_id, proposal, payload);
52054
+ return applyAddClaimValue(db, proposal.agent_id, proposal, payload, writeCaps);
51946
52055
  if (proposal.operation === "set_claim_value")
51947
- return applySetClaimValue(db, proposal.agent_id, proposal, payload);
52056
+ return applySetClaimValue(db, proposal.agent_id, proposal, payload, writeCaps);
51948
52057
  if (proposal.operation === "merge_entities")
51949
52058
  return applyMergeEntities(db, proposal.agent_id, payload);
52059
+ if (proposal.operation === "merge_aspects")
52060
+ return applyMergeAspects(db, proposal.agent_id, proposal, payload);
51950
52061
  if (proposal.operation === "supersede_claim_value") {
51951
52062
  return applySupersedeClaimValue(db, proposal.agent_id, proposal, payload);
51952
52063
  }
@@ -52385,6 +52496,13 @@ var DREAMING_ONTOLOGY_PAYLOAD_SCHEMAS = {
52385
52496
  survivor: entityId.describe("The entity that survives the merge."),
52386
52497
  ...reasonField
52387
52498
  }),
52499
+ merge_aspects: payload({
52500
+ entityId,
52501
+ target: aspectId.describe("The aspect that absorbs the sources. Use aspect_id."),
52502
+ sources: exports_external.array(aspectId).min(1).describe("Aspect ids to fold into the target. Attributes are moved, sources are archived."),
52503
+ newName: aspectName.describe("Optional new name for the merged aspect.").optional(),
52504
+ ...reasonField
52505
+ }),
52388
52506
  create_entity: payload({ name: entityName, type: entityType }),
52389
52507
  add_claim_value: payload({ entityId, aspectId, claimKey, value: claimValue, reviewAfter }),
52390
52508
  set_claim_value: payload({ entityId, aspectId, claimKey, value: claimValue, reviewAfter }),
@@ -52440,6 +52558,7 @@ var DREAMING_ONTOLOGY_OPERATION_SCHEMA = exports_external.discriminatedUnion("op
52440
52558
  operation("update_link"),
52441
52559
  operation("archive_link"),
52442
52560
  operation("merge_entities"),
52561
+ operation("merge_aspects"),
52443
52562
  operation("supersede_claim_value"),
52444
52563
  operation("create_policy"),
52445
52564
  operation("create_action_type"),
@@ -52454,7 +52573,8 @@ var HYGIENE_ARCHIVE_OPS = new Set([
52454
52573
  "archive_aspect",
52455
52574
  "archive_claim_value",
52456
52575
  "archive_link",
52457
- "merge_entities"
52576
+ "merge_entities",
52577
+ "merge_aspects"
52458
52578
  ]);
52459
52579
  function citationRecord(value) {
52460
52580
  if (typeof value !== "object" || value === null || Array.isArray(value))
@@ -52569,6 +52689,10 @@ function attentionProvenance(accessor, agentId, operation2, mintedById) {
52569
52689
  const survivor = typeof payload2.survivor === "string" ? payload2.survivor : "";
52570
52690
  const groupIds = semanticDuplicateIds(accessor, agentId, attention.details.canonicalName ?? "");
52571
52691
  expectedTarget = attention.subjectRef === `duplicate:${attention.details.canonicalName}` && groupIds.size > 1 && groupIds.has(survivor) && targets.length >= 2 && targets.every((id) => groupIds.has(id)) && targets.includes(survivor) && targets.some((id) => id !== survivor);
52692
+ } else if (operation2.operation === "merge_aspects") {
52693
+ const sources = Array.isArray(payload2.sources) ? payload2.sources.filter((value) => typeof value === "string") : [];
52694
+ const flaggedAspect = attention.details.aspectId ?? attention.subjectRef.replace(/^aspect:/, "");
52695
+ expectedTarget = attention.subjectRef.startsWith("aspect:") && typeof payload2.target === "string" && sources.length >= 1 && sources.includes(flaggedAspect);
52572
52696
  }
52573
52697
  if (!expectedTarget)
52574
52698
  return null;
@@ -52675,6 +52799,15 @@ function toApplicatorPayload(accessor, agentId, operation2, payload2) {
52675
52799
  const sourceIds = targets.filter((id) => id !== survivor);
52676
52800
  return { target_entity_id: survivor, source_entity_ids: sourceIds };
52677
52801
  }
52802
+ case "merge_aspects": {
52803
+ const entityId2 = stringField(payload2, "entityId");
52804
+ const target3 = stringField(payload2, "target");
52805
+ const sources = stringArrayField(payload2, "sources");
52806
+ if (entityId2 === null || target3 === null || sources === null || sources.length === 0)
52807
+ return null;
52808
+ const name = lookupEntityName(accessor, agentId, entityId2);
52809
+ return name === null ? null : { entity: name, target: target3, sources, new_name: stringField(payload2, "newName") ?? undefined };
52810
+ }
52678
52811
  case "create_entity": {
52679
52812
  const name = stringField(payload2, "name");
52680
52813
  const type = stringField(payload2, "type");
@@ -52836,7 +52969,8 @@ function applyDreamingOperations(params) {
52836
52969
  const batch = applyOntologyOperationBatchInTx(db, {
52837
52970
  agentId: params.agentId,
52838
52971
  actor: params.actor,
52839
- operations: [entry.input]
52972
+ operations: [entry.input],
52973
+ writeCaps: params.writeCaps
52840
52974
  });
52841
52975
  db.exec(`RELEASE SAVEPOINT ${savepoint}`);
52842
52976
  if (entry.attentionId !== null) {
@@ -53420,7 +53554,8 @@ function createDreamingCapabilities(params) {
53420
53554
  agentId: scopeId,
53421
53555
  actor,
53422
53556
  operations,
53423
- passId: params.passId
53557
+ passId: params.passId,
53558
+ writeCaps: params.writeCaps
53424
53559
  });
53425
53560
  params.onOperationsApplied?.(result, operations);
53426
53561
  return { ok: result.ok, ...result.error ? { error: result.error } : {}, items: result.items };
@@ -55463,6 +55598,7 @@ async function createMcpServer(opts) {
55463
55598
  validFrom: exports_external.string().optional().describe("Start of validity window for this memory"),
55464
55599
  validUntil: exports_external.string().optional().describe("End of validity window for this memory"),
55465
55600
  reviewAfter: exports_external.string().optional().describe("ISO timestamp when this temporal claim becomes due for review (issue #945)"),
55601
+ supersedes: exports_external.string().optional().describe("Id of an existing memory this write supersedes. The old row is marked superseded in the same transaction, wiring vN -> vN+1 lineage for drill-down history."),
55466
55602
  transcript: exports_external.string().optional().describe("Raw source text (conversation transcript) to preserve alongside extracted memory"),
55467
55603
  structured: exports_external.object({
55468
55604
  entities: exports_external.array(exports_external.object({
@@ -55515,7 +55651,8 @@ async function createMcpServer(opts) {
55515
55651
  sourceCreatedAt,
55516
55652
  validFrom,
55517
55653
  validUntil,
55518
- reviewAfter: reviewAfter2
55654
+ reviewAfter: reviewAfter2,
55655
+ supersedes
55519
55656
  }) => {
55520
55657
  const result = await fetchDaemon(baseUrl, "/api/memory/remember", {
55521
55658
  method: "POST",
@@ -55533,7 +55670,8 @@ async function createMcpServer(opts) {
55533
55670
  sourceCreatedAt,
55534
55671
  validFrom,
55535
55672
  validUntil,
55536
- reviewAfter: reviewAfter2
55673
+ reviewAfter: reviewAfter2,
55674
+ supersedes
55537
55675
  })
55538
55676
  });
55539
55677
  if (!result.ok) {
@@ -1,43 +1,43 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
- "version": "0.165.0",
3
+ "version": "0.166.0",
4
4
  "assets": [
5
5
  {
6
6
  "name": "signet-darwin-arm64",
7
7
  "platform": "darwin-arm64",
8
- "sha256": "cfa00e0e08296e60030ec256596115e23360e3d113456dd1b4117a17f2a09f26",
9
- "size": 116929312
8
+ "sha256": "155b6a8c4d9af1904f3593cb30e9325aeffc6274f45cac63ba31e6a31d1f5205",
9
+ "size": 116945824
10
10
  },
11
11
  {
12
12
  "name": "signet-darwin-x64",
13
13
  "platform": "darwin-x64",
14
- "sha256": "bfa798eefc6a1e502186b32678ee9d0a6c4edef5d14f57aa70fafb1c69f8f5c7",
15
- "size": 121555520
14
+ "sha256": "106507b237601bf0e55c682756ac16c686c693e452f5642457f96b8464a59a4b",
15
+ "size": 121571904
16
16
  },
17
17
  {
18
18
  "name": "signet-linux-arm64",
19
19
  "platform": "linux-arm64",
20
- "sha256": "9e5dfbd7c4664cde0ccb882b642fb413e7ee1a1c61821514d7d451c8685a4d9b",
21
- "size": 154173882
20
+ "sha256": "ce016781de96917962c4388fd278f21125e8ec27faac8cd0bbe746c1577bf891",
21
+ "size": 154190762
22
22
  },
23
23
  {
24
24
  "name": "signet-linux-x64",
25
25
  "platform": "linux-x64",
26
- "sha256": "c0740baf74799c1b229e41a0231360700e0b536adfd538d70ead1fa55d4bc841",
27
- "size": 154732867
26
+ "sha256": "259426f4e14fffd27d296ecbb40779d85909bc77b4feed11af2fd95f5799c2d7",
27
+ "size": 154749747
28
28
  },
29
29
  {
30
30
  "name": "signet-win32-x64.exe",
31
31
  "platform": "win32-x64",
32
- "sha256": "2e3291f8f52a1aec46c9e207c3d58f079046f12e9890b148a3b47197c3c116ee",
33
- "size": 170866176
32
+ "sha256": "16f90b1a518e3f9a0631eb0bd722ed69f37a80d4a916e51cefc157aeb19215bf",
33
+ "size": 170883072
34
34
  }
35
35
  ],
36
36
  "components": {
37
37
  "connectors": {
38
- "url": "signet-connectors-0.165.0.tar.gz",
39
- "sha256": "59cfe5b98223652be028e51f99d927681c6cdd6da1b4e6237582e94cae40b071",
40
- "size": 16248
38
+ "url": "signet-connectors-0.166.0.tar.gz",
39
+ "sha256": "e2050e9c1d4078a715b144762cfe50dfeb719311c07812ec489eeab7f9bc7ed9",
40
+ "size": 16093
41
41
  }
42
42
  }
43
43
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "signetai",
3
- "version": "0.165.0",
3
+ "version": "0.166.0",
4
4
  "description": "Signet native CLI installer wrapper",
5
5
  "type": "module",
6
6
  "bin": {
@@ -65,10 +65,10 @@
65
65
  "access": "public"
66
66
  },
67
67
  "optionalDependencies": {
68
- "signetai-darwin-arm64": "https://github.com/Signet-AI/signetai/releases/download/v0.165.0/signetai-darwin-arm64-0.165.0.tgz",
69
- "signetai-darwin-x64": "https://github.com/Signet-AI/signetai/releases/download/v0.165.0/signetai-darwin-x64-0.165.0.tgz",
70
- "signetai-linux-arm64": "https://github.com/Signet-AI/signetai/releases/download/v0.165.0/signetai-linux-arm64-0.165.0.tgz",
71
- "signetai-linux-x64": "https://github.com/Signet-AI/signetai/releases/download/v0.165.0/signetai-linux-x64-0.165.0.tgz",
72
- "signetai-win32-x64": "https://github.com/Signet-AI/signetai/releases/download/v0.165.0/signetai-win32-x64-0.165.0.tgz"
68
+ "signetai-darwin-arm64": "https://github.com/Signet-AI/signetai/releases/download/v0.166.0/signetai-darwin-arm64-0.166.0.tgz",
69
+ "signetai-darwin-x64": "https://github.com/Signet-AI/signetai/releases/download/v0.166.0/signetai-darwin-x64-0.166.0.tgz",
70
+ "signetai-linux-arm64": "https://github.com/Signet-AI/signetai/releases/download/v0.166.0/signetai-linux-arm64-0.166.0.tgz",
71
+ "signetai-linux-x64": "https://github.com/Signet-AI/signetai/releases/download/v0.166.0/signetai-linux-x64-0.166.0.tgz",
72
+ "signetai-win32-x64": "https://github.com/Signet-AI/signetai/releases/download/v0.166.0/signetai-win32-x64-0.166.0.tgz"
73
73
  }
74
74
  }