@ai-matrx/agents 0.59.211 → 0.59.213

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/CHANGELOG.md CHANGED
@@ -1,10 +1,25 @@
1
1
  # Changelog
2
2
 
3
- ## 0.59.211
3
+ ## 0.59.213
4
4
 
5
5
  UNVERIFIED: this release has no Unreleased entry and the source comparison could not be made (the caller supplied no source comparison). Whether source changed is unknown; consumer action is unknown.
6
6
  Check the package's gitHead on npm against this version's gitHead: `git diff <previous gitHead> <this gitHead> -- apps/shared/matrx-agents/src`.
7
7
 
8
+ ## 0.59.211
9
+
10
+ Automatic changed-only republish (docs/metadata drift since the last published version; verified: `git diff bcd75d763a 77dc9ac997 -- apps/shared/matrx-agents/src`
11
+ has no shipped-source changes outside tests, fixtures and docs). No consumer action required.
12
+
13
+ ## 0.59.210
14
+
15
+ Automatic changed-only republish (docs/metadata drift since the last published version; verified: `git diff 2887f76927 bcd75d763a -- apps/shared/matrx-agents/src`
16
+ has no shipped-source changes outside tests, fixtures and docs). No consumer action required.
17
+
18
+ ## 0.59.209
19
+
20
+ Automatic changed-only republish (docs/metadata drift since the last published version; verified: `git diff 1ed8f032c1 2887f76927 -- apps/shared/matrx-agents/src`
21
+ has no shipped-source changes outside tests, fixtures and docs). No consumer action required.
22
+
8
23
  ## 0.59.208
9
24
 
10
25
  Automatic changed-only republish (docs/metadata drift since the last published version; verified: `git diff 4b1a35d58a 1ed8f032c1 -- apps/shared/matrx-agents/src`
@@ -4345,3 +4360,4 @@ byte-identical to v0.6.0). No source changes and no consumer action required.
4345
4360
  - Added strict tests, ESM declarations, packed-artifact validation, and an
4346
4361
  isolated consumer import canary.
4347
4362
 
4363
+
@@ -116,6 +116,7 @@ var MANDATE_KEYS = {
116
116
  brand_discovery__propose_offering_roles: "brand_discovery.propose_offering_roles",
117
117
  brand_discovery__read_self_page: "brand_discovery.read_self_page",
118
118
  brand_discovery__room_outside_world: "brand_discovery.room_outside_world",
119
+ brand_discovery__room_owner: "brand_discovery.room_owner",
119
120
  brand_discovery__room_self_description: "brand_discovery.room_self_description",
120
121
  brand_intake__asset_gaps: "brand_intake.asset_gaps",
121
122
  brand_intake__early_facts: "brand_intake.early_facts",
@@ -93,6 +93,7 @@ var MANDATE_KEYS = {
93
93
  brand_discovery__propose_offering_roles: "brand_discovery.propose_offering_roles",
94
94
  brand_discovery__read_self_page: "brand_discovery.read_self_page",
95
95
  brand_discovery__room_outside_world: "brand_discovery.room_outside_world",
96
+ brand_discovery__room_owner: "brand_discovery.room_owner",
96
97
  brand_discovery__room_self_description: "brand_discovery.room_self_description",
97
98
  brand_intake__asset_gaps: "brand_intake.asset_gaps",
98
99
  brand_intake__early_facts: "brand_intake.early_facts",
@@ -69,6 +69,7 @@ var MANDATE_KEYS = {
69
69
  brand_discovery__propose_offering_roles: "brand_discovery.propose_offering_roles",
70
70
  brand_discovery__read_self_page: "brand_discovery.read_self_page",
71
71
  brand_discovery__room_outside_world: "brand_discovery.room_outside_world",
72
+ brand_discovery__room_owner: "brand_discovery.room_owner",
72
73
  brand_discovery__room_self_description: "brand_discovery.room_self_description",
73
74
  brand_intake__asset_gaps: "brand_intake.asset_gaps",
74
75
  brand_intake__early_facts: "brand_intake.early_facts",
@@ -41,6 +41,7 @@ var MANDATE_KEYS = {
41
41
  brand_discovery__propose_offering_roles: "brand_discovery.propose_offering_roles",
42
42
  brand_discovery__read_self_page: "brand_discovery.read_self_page",
43
43
  brand_discovery__room_outside_world: "brand_discovery.room_outside_world",
44
+ brand_discovery__room_owner: "brand_discovery.room_owner",
44
45
  brand_discovery__room_self_description: "brand_discovery.room_self_description",
45
46
  brand_intake__asset_gaps: "brand_intake.asset_gaps",
46
47
  brand_intake__early_facts: "brand_intake.early_facts",
@@ -47,9 +47,9 @@ module.exports = __toCommonJS(mandates_exports);
47
47
 
48
48
  // mandates/keys.generated.ts
49
49
  var MANDATE_KEYS_META = {
50
- aidreamRevision: "77dc9ac9971e02c1dcd327b31dbf8e6eeba66185",
50
+ aidreamRevision: "7b0c0ef2c077e84db21db43adf1c6e297fd08138",
51
51
  generatorVersion: "1.0.0",
52
- packageVersion: "0.59.211",
52
+ packageVersion: "0.59.213",
53
53
  retireWindow: 3
54
54
  };
55
55
  var MANDATE_KEYS = {
@@ -79,6 +79,7 @@ var MANDATE_KEYS = {
79
79
  brand_discovery__propose_offering_roles: "brand_discovery.propose_offering_roles",
80
80
  brand_discovery__read_self_page: "brand_discovery.read_self_page",
81
81
  brand_discovery__room_outside_world: "brand_discovery.room_outside_world",
82
+ brand_discovery__room_owner: "brand_discovery.room_owner",
82
83
  brand_discovery__room_self_description: "brand_discovery.room_self_description",
83
84
  brand_intake__asset_gaps: "brand_intake.asset_gaps",
84
85
  brand_intake__early_facts: "brand_intake.early_facts",
@@ -6,10 +6,10 @@
6
6
  * from the IN-PROCESS mandate declarations — the same `declared_mandates()` the
7
7
  * boot sync writes to the database from. There is no hand list anywhere.
8
8
  *
9
- * aidream revision: 77dc9ac9971e02c1dcd327b31dbf8e6eeba66185
9
+ * aidream revision: 7b0c0ef2c077e84db21db43adf1c6e297fd08138
10
10
  * generator version: 1.0.0
11
- * package version: 0.59.211
12
- * active keys: 610
11
+ * package version: 0.59.213
12
+ * active keys: 611
13
13
  * retiring keys: 5
14
14
  *
15
15
  * THE IDENTIFIER RULE: every `.` in a key becomes `__`, any character outside
@@ -19,9 +19,9 @@
19
19
  */
20
20
  /** Where this module came from — surfaced so a report can name the exact build. */
21
21
  declare const MANDATE_KEYS_META: {
22
- readonly aidreamRevision: "77dc9ac9971e02c1dcd327b31dbf8e6eeba66185";
22
+ readonly aidreamRevision: "7b0c0ef2c077e84db21db43adf1c6e297fd08138";
23
23
  readonly generatorVersion: "1.0.0";
24
- readonly packageVersion: "0.59.211";
24
+ readonly packageVersion: "0.59.213";
25
25
  readonly retireWindow: 3;
26
26
  };
27
27
  /** Every declared mandate key, by THE IDENTIFIER RULE. */
@@ -52,6 +52,7 @@ declare const MANDATE_KEYS: {
52
52
  readonly brand_discovery__propose_offering_roles: "brand_discovery.propose_offering_roles";
53
53
  readonly brand_discovery__read_self_page: "brand_discovery.read_self_page";
54
54
  readonly brand_discovery__room_outside_world: "brand_discovery.room_outside_world";
55
+ readonly brand_discovery__room_owner: "brand_discovery.room_owner";
55
56
  readonly brand_discovery__room_self_description: "brand_discovery.room_self_description";
56
57
  readonly brand_intake__asset_gaps: "brand_intake.asset_gaps";
57
58
  readonly brand_intake__early_facts: "brand_intake.early_facts";
@@ -6,10 +6,10 @@
6
6
  * from the IN-PROCESS mandate declarations — the same `declared_mandates()` the
7
7
  * boot sync writes to the database from. There is no hand list anywhere.
8
8
  *
9
- * aidream revision: 77dc9ac9971e02c1dcd327b31dbf8e6eeba66185
9
+ * aidream revision: 7b0c0ef2c077e84db21db43adf1c6e297fd08138
10
10
  * generator version: 1.0.0
11
- * package version: 0.59.211
12
- * active keys: 610
11
+ * package version: 0.59.213
12
+ * active keys: 611
13
13
  * retiring keys: 5
14
14
  *
15
15
  * THE IDENTIFIER RULE: every `.` in a key becomes `__`, any character outside
@@ -19,9 +19,9 @@
19
19
  */
20
20
  /** Where this module came from — surfaced so a report can name the exact build. */
21
21
  declare const MANDATE_KEYS_META: {
22
- readonly aidreamRevision: "77dc9ac9971e02c1dcd327b31dbf8e6eeba66185";
22
+ readonly aidreamRevision: "7b0c0ef2c077e84db21db43adf1c6e297fd08138";
23
23
  readonly generatorVersion: "1.0.0";
24
- readonly packageVersion: "0.59.211";
24
+ readonly packageVersion: "0.59.213";
25
25
  readonly retireWindow: 3;
26
26
  };
27
27
  /** Every declared mandate key, by THE IDENTIFIER RULE. */
@@ -52,6 +52,7 @@ declare const MANDATE_KEYS: {
52
52
  readonly brand_discovery__propose_offering_roles: "brand_discovery.propose_offering_roles";
53
53
  readonly brand_discovery__read_self_page: "brand_discovery.read_self_page";
54
54
  readonly brand_discovery__room_outside_world: "brand_discovery.room_outside_world";
55
+ readonly brand_discovery__room_owner: "brand_discovery.room_owner";
55
56
  readonly brand_discovery__room_self_description: "brand_discovery.room_self_description";
56
57
  readonly brand_intake__asset_gaps: "brand_intake.asset_gaps";
57
58
  readonly brand_intake__early_facts: "brand_intake.early_facts";
@@ -1,8 +1,8 @@
1
1
  // mandates/keys.generated.ts
2
2
  var MANDATE_KEYS_META = {
3
- aidreamRevision: "77dc9ac9971e02c1dcd327b31dbf8e6eeba66185",
3
+ aidreamRevision: "7b0c0ef2c077e84db21db43adf1c6e297fd08138",
4
4
  generatorVersion: "1.0.0",
5
- packageVersion: "0.59.211",
5
+ packageVersion: "0.59.213",
6
6
  retireWindow: 3
7
7
  };
8
8
  var MANDATE_KEYS = {
@@ -32,6 +32,7 @@ var MANDATE_KEYS = {
32
32
  brand_discovery__propose_offering_roles: "brand_discovery.propose_offering_roles",
33
33
  brand_discovery__read_self_page: "brand_discovery.read_self_page",
34
34
  brand_discovery__room_outside_world: "brand_discovery.room_outside_world",
35
+ brand_discovery__room_owner: "brand_discovery.room_owner",
35
36
  brand_discovery__room_self_description: "brand_discovery.room_self_description",
36
37
  brand_intake__asset_gaps: "brand_intake.asset_gaps",
37
38
  brand_intake__early_facts: "brand_intake.early_facts",
@@ -113,6 +113,7 @@ __export(models_exports, {
113
113
  requiredArtifacts: () => requiredArtifacts,
114
114
  resetSuccessionLogForTests: () => resetSuccessionLogForTests,
115
115
  resolveLiveModelId: () => resolveLiveModelId,
116
+ resolveModelMapKnob: () => resolveModelMapKnob,
116
117
  resolveNewAgentModelId: () => resolveNewAgentModelId,
117
118
  resolvePreferredModelChoice: () => resolvePreferredModelChoice,
118
119
  resolveSuccessor: () => resolveSuccessor,
@@ -2766,7 +2767,7 @@ function cheapestAdequateModel(catalog, need, options = {}) {
2766
2767
 
2767
2768
  // models/default-model.ts
2768
2769
  var NEW_AGENT_DEFAULT_MODEL_KNOB = "agents.model_prefs.new_agent_default_model";
2769
- async function resolveNewAgentModelId(resolveKnob) {
2770
+ async function resolveNewAgentModelId(resolveKnob, catalog) {
2770
2771
  let value;
2771
2772
  try {
2772
2773
  value = await resolveKnob(NEW_AGENT_DEFAULT_MODEL_KNOB);
@@ -2775,8 +2776,14 @@ async function resolveNewAgentModelId(resolveKnob) {
2775
2776
  `The model new agents start on (${NEW_AGENT_DEFAULT_MODEL_KNOB}) could not be read, so no agent was created: ${error instanceof Error ? error.message : String(error)}`
2776
2777
  );
2777
2778
  }
2778
- if (typeof value === "string" && value.trim() !== "") return { modelId: value.trim() };
2779
+ if (typeof value === "string" && value.trim() !== "") return { modelId: await resolveLiveModelId(catalog, value.trim()) };
2779
2780
  throw new Error(
2780
2781
  `No model is set for new agents (${NEW_AGENT_DEFAULT_MODEL_KNOB} is empty for this organization), so no agent was created. Set it in Settings.`
2781
2782
  );
2782
2783
  }
2784
+ async function resolveModelMapKnob(value, catalog) {
2785
+ if (!value || typeof value !== "object" || Array.isArray(value)) return {};
2786
+ const entries = Object.entries(value).filter((e) => typeof e[1] === "string" && e[1].trim() !== "");
2787
+ const resolved = await Promise.all(entries.map(async ([k, id]) => [k, await resolveLiveModelId(catalog, id.trim())]));
2788
+ return Object.fromEntries(resolved);
2789
+ }
@@ -1776,14 +1776,23 @@ declare function cheapestAdequateModel<T extends PricedCatalogModel>(catalog: re
1776
1776
  *
1777
1777
  * It is NOT `agent_authoring_default_model`: that knob is the agent FACTORY's own model.
1778
1778
  *
1779
+ * Every read resolves the knob's id through the catalog's successor chain (`resolveLiveModelId`): a default that
1780
+ * was deprecated with a successor answers its live successor with no knob edit.
1781
+ *
1779
1782
  * No code fallback: an unset or unreadable knob refuses, naming the knob, so nothing is created on a model nobody
1780
1783
  * chose (the knob's platform default makes "unset" an admin act, not a normal state).
1781
1784
  */
1785
+
1782
1786
  declare const NEW_AGENT_DEFAULT_MODEL_KNOB = "agents.model_prefs.new_agent_default_model";
1783
1787
  interface NewAgentModel {
1784
1788
  modelId: string;
1785
1789
  }
1786
1790
  /** The model a new agent starts on. `resolveKnob(fullKey)` is the host's effective-knob read. Throws, naming the knob, when it answers nothing. */
1787
- declare function resolveNewAgentModelId(resolveKnob: (fullKey: string) => Promise<unknown>): Promise<NewAgentModel>;
1791
+ declare function resolveNewAgentModelId(resolveKnob: (fullKey: string) => Promise<unknown>, catalog: SuccessionClient): Promise<NewAgentModel>;
1792
+ /**
1793
+ * A json knob mapping names to model ids (e.g. `agents.simple_run.capability_models`), each id resolved through the
1794
+ * catalog's successor chain on this read. Non-string entries are dropped; a value that is not an object answers {}.
1795
+ */
1796
+ declare function resolveModelMapKnob(value: unknown, catalog: SuccessionClient): Promise<Record<string, string>>;
1788
1797
 
1789
- export { type AdminOffering, type AdminPricingBand, type ArtifactUse, type AuditCapabilitiesRecord, CHAT_DEFAULT_MODEL_KNOB, CONTENT_TYPES, type CapabilitiesParseContext, type CatalogKindInput, type CatalogModel, type CatalogTier, type CheapestAdequateOptions, type CompatStatus, type ContentType, type CuratedCatalogClient, type CuratedModel, type CuratedPresentation, type CuratedRows, type CuratedVariant, DEFAULT_CAPABILITIES, type DecidedBy, type DeviceGraphics, type DeviceHardware, type DiscoveryAmbiguity, type DiscoveryArtifact, type DiscoveryMedia, type DiscoveryResult, type DiscoveryRuntime, type DiscoverySource, type DiscoveryVariant, EMPTY_MODEL_RECORDS, EXCLUDED_REVIEW_STATES, FEATURE_BUCKETS, FEATURE_BUCKET_ORDER, FEATURE_KEYS, FILE_TYPE_QUANT, type FeatureBucket, type FeatureBucketMeta, type FeatureKey, type FitCapabilities, GgufError, type GgufHeader, type GgufRead, type GgufTensor, type GroupedFeatures, type HardwareClass, type HardwareClasses, type HeaderFlag, type HeaderJudgement, type HeaderRefusal, INPUT_MODALITIES, INTERACTION_MODES, type Interaction, type InteractionMode, type LocalArtifact, type LocalCatalogClient, type LocalCatalogQuery, type LocalCompatRow, type LocalModel, type LocalModelCatalog, type LocalPresentation, type LocalRuntime, type LocalRuntimeBuild, type LocalVariant, MAX_SUCCESSION_HOPS, MODEL_CATALOG_KINDS, MODEL_FAVORITE_ENTITY_TYPE, type Modality, type ModelCapabilities, type ModelCatalog, type ModelCatalogClient, type ModelCatalogConfig, type ModelCatalogErrorSink, type ModelCatalogPgError, type ModelCatalogPgResult, type ModelCatalogQuery, type ModelCatalogState, type ModelCatalogVariant, type ModelCatalogVariantState, type ModelClassConfig, type ModelClassEntry, type ModelClassIndex, type ModelDiagnosticEntry, type ModelDiagnosticsSink, type ModelFavorites, type ModelFavoritesCache, type ModelFavoritesClient, type ModelFavoritesConfig, type ModelFavoritesErrorSink, type ModelFavoritesState, type ModelFetchScope, type ModelFileHandle, type ModelFit, type ModelIdentityRow, type ModelJson, type ModelNeed, type ModelOfferingRow, type ModelOption, type ModelOptionWithLifecycle, type ModelRecord, type ModelRecordFetchType, type ModelRecords, type ModelRecordsClient, type ModelRecordsConfig, type ModelRecordsState, type ModelSelectionPurpose, type ModelSetEnv, type ModelSetFacts, type ModelSetValidation, NEW_AGENT_DEFAULT_MODEL_KNOB, type NewAgentModel, type NoSelection, OUTPUT_MODALITIES, type OrderedLike, type PreferredModelChoice, type PreferredModelChoicePorts, type PriceTier, type PricedCatalogModel, type RankOptions, type RankedVariant, type ReadModelCatalogOptions, SERVICE_LABEL, SERVICE_LABEL_PLURAL, type SelectDevice, type Selection, type ShardName, type SuccessionClient, type SuccessionIndex, type SuccessionNode, TOP_TIER_COST_RATING, TOP_TIER_LOCKED_TITLE, type VariantDiscovery, type VariantVerdict, type Want, acceptsTextInstructions, blendedPrice, buildModelClassIndex, buildSuccessionIndex, catalogFingerprint, catalogForApp, catalogKindOf, cheapestAdequateModel, classConfigKey, collapseTiersByClass, costRatingTier, costRatingWord, createModelCatalog, createModelFavorites, createModelRecords, curatedList, displayOrderOf, favoriteIdsEqual, fetchCuratedModels, findNonCanonicalCapabilityValues, fitsMemory, fitsNeed, fitsThisComputer, formatMemoryBytes, fromDiscovery, ggufEngine, ggufFacts, groupFeatures, hardwareClassesOf, hasCompatibleDecisionInteraction, isChatModelCapability, isContentType, isConversationalModelCapability, isDecisionModelCapability, isFeatureKey, isHelperGguf, isInteractionMode, isListedVariant, isLocalModelCatalog, isManagedAgentModelCapability, isProjectorName, isSupersedable, isTopTierRating, judgeHeaderFacts, mergeAuditRecordIntoCapabilities, missingShards, modelClassKnobFor, modelClassName, modelClassPinOf, modelsForSelectionPurpose, normalizeArch, normalizeModel, normalizeModels, normalizeOs, normalizePromptSettings, orderCatalogGroups, orderCatalogModels, outputFormatControlKey, parseCapabilities, pickProjector, priceTierRating, quantFromName, rankVariants, readCuratedRows, readGgufHeader, readModelCatalog, reconcileModelFavoriteIds, reportModelDiagnostic, requireCanonicalCapabilities, requiredArtifacts, resetSuccessionLogForTests, resolveLiveModelId, resolveNewAgentModelId, resolvePreferredModelChoice, resolveSuccessor, runtimesOnEngine, seesImages, selectActiveModels, selectActiveModelsReady, selectAllModelOptions, selectAllModels, selectAllModelsReady, selectDeprecatedModels, selectDeprecatedModelsReady, selectModelById, selectModelClassConfig, selectModelClassName, selectModelControls, selectModelDetailError, selectModelFetchType, selectModelFullyLoaded, selectModelIdentityById, selectModelIdentityLookupStatus, selectModelLabelById, selectModelLabelWithClass, selectModelNameById, selectModelOptions, selectVariant, serviceCountLabel, setModelDiagnosticsSink, shapeCuratedModels, shardFileName, shardName, speedRatingLabel, speedRatingWord, splitSetProblems, takesInput, toAuditRecord, validateModelSet, variantVerdict, withModelClass };
1798
+ export { type AdminOffering, type AdminPricingBand, type ArtifactUse, type AuditCapabilitiesRecord, CHAT_DEFAULT_MODEL_KNOB, CONTENT_TYPES, type CapabilitiesParseContext, type CatalogKindInput, type CatalogModel, type CatalogTier, type CheapestAdequateOptions, type CompatStatus, type ContentType, type CuratedCatalogClient, type CuratedModel, type CuratedPresentation, type CuratedRows, type CuratedVariant, DEFAULT_CAPABILITIES, type DecidedBy, type DeviceGraphics, type DeviceHardware, type DiscoveryAmbiguity, type DiscoveryArtifact, type DiscoveryMedia, type DiscoveryResult, type DiscoveryRuntime, type DiscoverySource, type DiscoveryVariant, EMPTY_MODEL_RECORDS, EXCLUDED_REVIEW_STATES, FEATURE_BUCKETS, FEATURE_BUCKET_ORDER, FEATURE_KEYS, FILE_TYPE_QUANT, type FeatureBucket, type FeatureBucketMeta, type FeatureKey, type FitCapabilities, GgufError, type GgufHeader, type GgufRead, type GgufTensor, type GroupedFeatures, type HardwareClass, type HardwareClasses, type HeaderFlag, type HeaderJudgement, type HeaderRefusal, INPUT_MODALITIES, INTERACTION_MODES, type Interaction, type InteractionMode, type LocalArtifact, type LocalCatalogClient, type LocalCatalogQuery, type LocalCompatRow, type LocalModel, type LocalModelCatalog, type LocalPresentation, type LocalRuntime, type LocalRuntimeBuild, type LocalVariant, MAX_SUCCESSION_HOPS, MODEL_CATALOG_KINDS, MODEL_FAVORITE_ENTITY_TYPE, type Modality, type ModelCapabilities, type ModelCatalog, type ModelCatalogClient, type ModelCatalogConfig, type ModelCatalogErrorSink, type ModelCatalogPgError, type ModelCatalogPgResult, type ModelCatalogQuery, type ModelCatalogState, type ModelCatalogVariant, type ModelCatalogVariantState, type ModelClassConfig, type ModelClassEntry, type ModelClassIndex, type ModelDiagnosticEntry, type ModelDiagnosticsSink, type ModelFavorites, type ModelFavoritesCache, type ModelFavoritesClient, type ModelFavoritesConfig, type ModelFavoritesErrorSink, type ModelFavoritesState, type ModelFetchScope, type ModelFileHandle, type ModelFit, type ModelIdentityRow, type ModelJson, type ModelNeed, type ModelOfferingRow, type ModelOption, type ModelOptionWithLifecycle, type ModelRecord, type ModelRecordFetchType, type ModelRecords, type ModelRecordsClient, type ModelRecordsConfig, type ModelRecordsState, type ModelSelectionPurpose, type ModelSetEnv, type ModelSetFacts, type ModelSetValidation, NEW_AGENT_DEFAULT_MODEL_KNOB, type NewAgentModel, type NoSelection, OUTPUT_MODALITIES, type OrderedLike, type PreferredModelChoice, type PreferredModelChoicePorts, type PriceTier, type PricedCatalogModel, type RankOptions, type RankedVariant, type ReadModelCatalogOptions, SERVICE_LABEL, SERVICE_LABEL_PLURAL, type SelectDevice, type Selection, type ShardName, type SuccessionClient, type SuccessionIndex, type SuccessionNode, TOP_TIER_COST_RATING, TOP_TIER_LOCKED_TITLE, type VariantDiscovery, type VariantVerdict, type Want, acceptsTextInstructions, blendedPrice, buildModelClassIndex, buildSuccessionIndex, catalogFingerprint, catalogForApp, catalogKindOf, cheapestAdequateModel, classConfigKey, collapseTiersByClass, costRatingTier, costRatingWord, createModelCatalog, createModelFavorites, createModelRecords, curatedList, displayOrderOf, favoriteIdsEqual, fetchCuratedModels, findNonCanonicalCapabilityValues, fitsMemory, fitsNeed, fitsThisComputer, formatMemoryBytes, fromDiscovery, ggufEngine, ggufFacts, groupFeatures, hardwareClassesOf, hasCompatibleDecisionInteraction, isChatModelCapability, isContentType, isConversationalModelCapability, isDecisionModelCapability, isFeatureKey, isHelperGguf, isInteractionMode, isListedVariant, isLocalModelCatalog, isManagedAgentModelCapability, isProjectorName, isSupersedable, isTopTierRating, judgeHeaderFacts, mergeAuditRecordIntoCapabilities, missingShards, modelClassKnobFor, modelClassName, modelClassPinOf, modelsForSelectionPurpose, normalizeArch, normalizeModel, normalizeModels, normalizeOs, normalizePromptSettings, orderCatalogGroups, orderCatalogModels, outputFormatControlKey, parseCapabilities, pickProjector, priceTierRating, quantFromName, rankVariants, readCuratedRows, readGgufHeader, readModelCatalog, reconcileModelFavoriteIds, reportModelDiagnostic, requireCanonicalCapabilities, requiredArtifacts, resetSuccessionLogForTests, resolveLiveModelId, resolveModelMapKnob, resolveNewAgentModelId, resolvePreferredModelChoice, resolveSuccessor, runtimesOnEngine, seesImages, selectActiveModels, selectActiveModelsReady, selectAllModelOptions, selectAllModels, selectAllModelsReady, selectDeprecatedModels, selectDeprecatedModelsReady, selectModelById, selectModelClassConfig, selectModelClassName, selectModelControls, selectModelDetailError, selectModelFetchType, selectModelFullyLoaded, selectModelIdentityById, selectModelIdentityLookupStatus, selectModelLabelById, selectModelLabelWithClass, selectModelNameById, selectModelOptions, selectVariant, serviceCountLabel, setModelDiagnosticsSink, shapeCuratedModels, shardFileName, shardName, speedRatingLabel, speedRatingWord, splitSetProblems, takesInput, toAuditRecord, validateModelSet, variantVerdict, withModelClass };
@@ -1776,14 +1776,23 @@ declare function cheapestAdequateModel<T extends PricedCatalogModel>(catalog: re
1776
1776
  *
1777
1777
  * It is NOT `agent_authoring_default_model`: that knob is the agent FACTORY's own model.
1778
1778
  *
1779
+ * Every read resolves the knob's id through the catalog's successor chain (`resolveLiveModelId`): a default that
1780
+ * was deprecated with a successor answers its live successor with no knob edit.
1781
+ *
1779
1782
  * No code fallback: an unset or unreadable knob refuses, naming the knob, so nothing is created on a model nobody
1780
1783
  * chose (the knob's platform default makes "unset" an admin act, not a normal state).
1781
1784
  */
1785
+
1782
1786
  declare const NEW_AGENT_DEFAULT_MODEL_KNOB = "agents.model_prefs.new_agent_default_model";
1783
1787
  interface NewAgentModel {
1784
1788
  modelId: string;
1785
1789
  }
1786
1790
  /** The model a new agent starts on. `resolveKnob(fullKey)` is the host's effective-knob read. Throws, naming the knob, when it answers nothing. */
1787
- declare function resolveNewAgentModelId(resolveKnob: (fullKey: string) => Promise<unknown>): Promise<NewAgentModel>;
1791
+ declare function resolveNewAgentModelId(resolveKnob: (fullKey: string) => Promise<unknown>, catalog: SuccessionClient): Promise<NewAgentModel>;
1792
+ /**
1793
+ * A json knob mapping names to model ids (e.g. `agents.simple_run.capability_models`), each id resolved through the
1794
+ * catalog's successor chain on this read. Non-string entries are dropped; a value that is not an object answers {}.
1795
+ */
1796
+ declare function resolveModelMapKnob(value: unknown, catalog: SuccessionClient): Promise<Record<string, string>>;
1788
1797
 
1789
- export { type AdminOffering, type AdminPricingBand, type ArtifactUse, type AuditCapabilitiesRecord, CHAT_DEFAULT_MODEL_KNOB, CONTENT_TYPES, type CapabilitiesParseContext, type CatalogKindInput, type CatalogModel, type CatalogTier, type CheapestAdequateOptions, type CompatStatus, type ContentType, type CuratedCatalogClient, type CuratedModel, type CuratedPresentation, type CuratedRows, type CuratedVariant, DEFAULT_CAPABILITIES, type DecidedBy, type DeviceGraphics, type DeviceHardware, type DiscoveryAmbiguity, type DiscoveryArtifact, type DiscoveryMedia, type DiscoveryResult, type DiscoveryRuntime, type DiscoverySource, type DiscoveryVariant, EMPTY_MODEL_RECORDS, EXCLUDED_REVIEW_STATES, FEATURE_BUCKETS, FEATURE_BUCKET_ORDER, FEATURE_KEYS, FILE_TYPE_QUANT, type FeatureBucket, type FeatureBucketMeta, type FeatureKey, type FitCapabilities, GgufError, type GgufHeader, type GgufRead, type GgufTensor, type GroupedFeatures, type HardwareClass, type HardwareClasses, type HeaderFlag, type HeaderJudgement, type HeaderRefusal, INPUT_MODALITIES, INTERACTION_MODES, type Interaction, type InteractionMode, type LocalArtifact, type LocalCatalogClient, type LocalCatalogQuery, type LocalCompatRow, type LocalModel, type LocalModelCatalog, type LocalPresentation, type LocalRuntime, type LocalRuntimeBuild, type LocalVariant, MAX_SUCCESSION_HOPS, MODEL_CATALOG_KINDS, MODEL_FAVORITE_ENTITY_TYPE, type Modality, type ModelCapabilities, type ModelCatalog, type ModelCatalogClient, type ModelCatalogConfig, type ModelCatalogErrorSink, type ModelCatalogPgError, type ModelCatalogPgResult, type ModelCatalogQuery, type ModelCatalogState, type ModelCatalogVariant, type ModelCatalogVariantState, type ModelClassConfig, type ModelClassEntry, type ModelClassIndex, type ModelDiagnosticEntry, type ModelDiagnosticsSink, type ModelFavorites, type ModelFavoritesCache, type ModelFavoritesClient, type ModelFavoritesConfig, type ModelFavoritesErrorSink, type ModelFavoritesState, type ModelFetchScope, type ModelFileHandle, type ModelFit, type ModelIdentityRow, type ModelJson, type ModelNeed, type ModelOfferingRow, type ModelOption, type ModelOptionWithLifecycle, type ModelRecord, type ModelRecordFetchType, type ModelRecords, type ModelRecordsClient, type ModelRecordsConfig, type ModelRecordsState, type ModelSelectionPurpose, type ModelSetEnv, type ModelSetFacts, type ModelSetValidation, NEW_AGENT_DEFAULT_MODEL_KNOB, type NewAgentModel, type NoSelection, OUTPUT_MODALITIES, type OrderedLike, type PreferredModelChoice, type PreferredModelChoicePorts, type PriceTier, type PricedCatalogModel, type RankOptions, type RankedVariant, type ReadModelCatalogOptions, SERVICE_LABEL, SERVICE_LABEL_PLURAL, type SelectDevice, type Selection, type ShardName, type SuccessionClient, type SuccessionIndex, type SuccessionNode, TOP_TIER_COST_RATING, TOP_TIER_LOCKED_TITLE, type VariantDiscovery, type VariantVerdict, type Want, acceptsTextInstructions, blendedPrice, buildModelClassIndex, buildSuccessionIndex, catalogFingerprint, catalogForApp, catalogKindOf, cheapestAdequateModel, classConfigKey, collapseTiersByClass, costRatingTier, costRatingWord, createModelCatalog, createModelFavorites, createModelRecords, curatedList, displayOrderOf, favoriteIdsEqual, fetchCuratedModels, findNonCanonicalCapabilityValues, fitsMemory, fitsNeed, fitsThisComputer, formatMemoryBytes, fromDiscovery, ggufEngine, ggufFacts, groupFeatures, hardwareClassesOf, hasCompatibleDecisionInteraction, isChatModelCapability, isContentType, isConversationalModelCapability, isDecisionModelCapability, isFeatureKey, isHelperGguf, isInteractionMode, isListedVariant, isLocalModelCatalog, isManagedAgentModelCapability, isProjectorName, isSupersedable, isTopTierRating, judgeHeaderFacts, mergeAuditRecordIntoCapabilities, missingShards, modelClassKnobFor, modelClassName, modelClassPinOf, modelsForSelectionPurpose, normalizeArch, normalizeModel, normalizeModels, normalizeOs, normalizePromptSettings, orderCatalogGroups, orderCatalogModels, outputFormatControlKey, parseCapabilities, pickProjector, priceTierRating, quantFromName, rankVariants, readCuratedRows, readGgufHeader, readModelCatalog, reconcileModelFavoriteIds, reportModelDiagnostic, requireCanonicalCapabilities, requiredArtifacts, resetSuccessionLogForTests, resolveLiveModelId, resolveNewAgentModelId, resolvePreferredModelChoice, resolveSuccessor, runtimesOnEngine, seesImages, selectActiveModels, selectActiveModelsReady, selectAllModelOptions, selectAllModels, selectAllModelsReady, selectDeprecatedModels, selectDeprecatedModelsReady, selectModelById, selectModelClassConfig, selectModelClassName, selectModelControls, selectModelDetailError, selectModelFetchType, selectModelFullyLoaded, selectModelIdentityById, selectModelIdentityLookupStatus, selectModelLabelById, selectModelLabelWithClass, selectModelNameById, selectModelOptions, selectVariant, serviceCountLabel, setModelDiagnosticsSink, shapeCuratedModels, shardFileName, shardName, speedRatingLabel, speedRatingWord, splitSetProblems, takesInput, toAuditRecord, validateModelSet, variantVerdict, withModelClass };
1798
+ export { type AdminOffering, type AdminPricingBand, type ArtifactUse, type AuditCapabilitiesRecord, CHAT_DEFAULT_MODEL_KNOB, CONTENT_TYPES, type CapabilitiesParseContext, type CatalogKindInput, type CatalogModel, type CatalogTier, type CheapestAdequateOptions, type CompatStatus, type ContentType, type CuratedCatalogClient, type CuratedModel, type CuratedPresentation, type CuratedRows, type CuratedVariant, DEFAULT_CAPABILITIES, type DecidedBy, type DeviceGraphics, type DeviceHardware, type DiscoveryAmbiguity, type DiscoveryArtifact, type DiscoveryMedia, type DiscoveryResult, type DiscoveryRuntime, type DiscoverySource, type DiscoveryVariant, EMPTY_MODEL_RECORDS, EXCLUDED_REVIEW_STATES, FEATURE_BUCKETS, FEATURE_BUCKET_ORDER, FEATURE_KEYS, FILE_TYPE_QUANT, type FeatureBucket, type FeatureBucketMeta, type FeatureKey, type FitCapabilities, GgufError, type GgufHeader, type GgufRead, type GgufTensor, type GroupedFeatures, type HardwareClass, type HardwareClasses, type HeaderFlag, type HeaderJudgement, type HeaderRefusal, INPUT_MODALITIES, INTERACTION_MODES, type Interaction, type InteractionMode, type LocalArtifact, type LocalCatalogClient, type LocalCatalogQuery, type LocalCompatRow, type LocalModel, type LocalModelCatalog, type LocalPresentation, type LocalRuntime, type LocalRuntimeBuild, type LocalVariant, MAX_SUCCESSION_HOPS, MODEL_CATALOG_KINDS, MODEL_FAVORITE_ENTITY_TYPE, type Modality, type ModelCapabilities, type ModelCatalog, type ModelCatalogClient, type ModelCatalogConfig, type ModelCatalogErrorSink, type ModelCatalogPgError, type ModelCatalogPgResult, type ModelCatalogQuery, type ModelCatalogState, type ModelCatalogVariant, type ModelCatalogVariantState, type ModelClassConfig, type ModelClassEntry, type ModelClassIndex, type ModelDiagnosticEntry, type ModelDiagnosticsSink, type ModelFavorites, type ModelFavoritesCache, type ModelFavoritesClient, type ModelFavoritesConfig, type ModelFavoritesErrorSink, type ModelFavoritesState, type ModelFetchScope, type ModelFileHandle, type ModelFit, type ModelIdentityRow, type ModelJson, type ModelNeed, type ModelOfferingRow, type ModelOption, type ModelOptionWithLifecycle, type ModelRecord, type ModelRecordFetchType, type ModelRecords, type ModelRecordsClient, type ModelRecordsConfig, type ModelRecordsState, type ModelSelectionPurpose, type ModelSetEnv, type ModelSetFacts, type ModelSetValidation, NEW_AGENT_DEFAULT_MODEL_KNOB, type NewAgentModel, type NoSelection, OUTPUT_MODALITIES, type OrderedLike, type PreferredModelChoice, type PreferredModelChoicePorts, type PriceTier, type PricedCatalogModel, type RankOptions, type RankedVariant, type ReadModelCatalogOptions, SERVICE_LABEL, SERVICE_LABEL_PLURAL, type SelectDevice, type Selection, type ShardName, type SuccessionClient, type SuccessionIndex, type SuccessionNode, TOP_TIER_COST_RATING, TOP_TIER_LOCKED_TITLE, type VariantDiscovery, type VariantVerdict, type Want, acceptsTextInstructions, blendedPrice, buildModelClassIndex, buildSuccessionIndex, catalogFingerprint, catalogForApp, catalogKindOf, cheapestAdequateModel, classConfigKey, collapseTiersByClass, costRatingTier, costRatingWord, createModelCatalog, createModelFavorites, createModelRecords, curatedList, displayOrderOf, favoriteIdsEqual, fetchCuratedModels, findNonCanonicalCapabilityValues, fitsMemory, fitsNeed, fitsThisComputer, formatMemoryBytes, fromDiscovery, ggufEngine, ggufFacts, groupFeatures, hardwareClassesOf, hasCompatibleDecisionInteraction, isChatModelCapability, isContentType, isConversationalModelCapability, isDecisionModelCapability, isFeatureKey, isHelperGguf, isInteractionMode, isListedVariant, isLocalModelCatalog, isManagedAgentModelCapability, isProjectorName, isSupersedable, isTopTierRating, judgeHeaderFacts, mergeAuditRecordIntoCapabilities, missingShards, modelClassKnobFor, modelClassName, modelClassPinOf, modelsForSelectionPurpose, normalizeArch, normalizeModel, normalizeModels, normalizeOs, normalizePromptSettings, orderCatalogGroups, orderCatalogModels, outputFormatControlKey, parseCapabilities, pickProjector, priceTierRating, quantFromName, rankVariants, readCuratedRows, readGgufHeader, readModelCatalog, reconcileModelFavoriteIds, reportModelDiagnostic, requireCanonicalCapabilities, requiredArtifacts, resetSuccessionLogForTests, resolveLiveModelId, resolveModelMapKnob, resolveNewAgentModelId, resolvePreferredModelChoice, resolveSuccessor, runtimesOnEngine, seesImages, selectActiveModels, selectActiveModelsReady, selectAllModelOptions, selectAllModels, selectAllModelsReady, selectDeprecatedModels, selectDeprecatedModelsReady, selectModelById, selectModelClassConfig, selectModelClassName, selectModelControls, selectModelDetailError, selectModelFetchType, selectModelFullyLoaded, selectModelIdentityById, selectModelIdentityLookupStatus, selectModelLabelById, selectModelLabelWithClass, selectModelNameById, selectModelOptions, selectVariant, serviceCountLabel, setModelDiagnosticsSink, shapeCuratedModels, shardFileName, shardName, speedRatingLabel, speedRatingWord, splitSetProblems, takesInput, toAuditRecord, validateModelSet, variantVerdict, withModelClass };
@@ -2609,7 +2609,7 @@ function cheapestAdequateModel(catalog, need, options = {}) {
2609
2609
 
2610
2610
  // models/default-model.ts
2611
2611
  var NEW_AGENT_DEFAULT_MODEL_KNOB = "agents.model_prefs.new_agent_default_model";
2612
- async function resolveNewAgentModelId(resolveKnob) {
2612
+ async function resolveNewAgentModelId(resolveKnob, catalog) {
2613
2613
  let value;
2614
2614
  try {
2615
2615
  value = await resolveKnob(NEW_AGENT_DEFAULT_MODEL_KNOB);
@@ -2618,11 +2618,17 @@ async function resolveNewAgentModelId(resolveKnob) {
2618
2618
  `The model new agents start on (${NEW_AGENT_DEFAULT_MODEL_KNOB}) could not be read, so no agent was created: ${error instanceof Error ? error.message : String(error)}`
2619
2619
  );
2620
2620
  }
2621
- if (typeof value === "string" && value.trim() !== "") return { modelId: value.trim() };
2621
+ if (typeof value === "string" && value.trim() !== "") return { modelId: await resolveLiveModelId(catalog, value.trim()) };
2622
2622
  throw new Error(
2623
2623
  `No model is set for new agents (${NEW_AGENT_DEFAULT_MODEL_KNOB} is empty for this organization), so no agent was created. Set it in Settings.`
2624
2624
  );
2625
2625
  }
2626
+ async function resolveModelMapKnob(value, catalog) {
2627
+ if (!value || typeof value !== "object" || Array.isArray(value)) return {};
2628
+ const entries = Object.entries(value).filter((e) => typeof e[1] === "string" && e[1].trim() !== "");
2629
+ const resolved = await Promise.all(entries.map(async ([k, id]) => [k, await resolveLiveModelId(catalog, id.trim())]));
2630
+ return Object.fromEntries(resolved);
2631
+ }
2626
2632
  export {
2627
2633
  CHAT_DEFAULT_MODEL_KNOB,
2628
2634
  CONTENT_TYPES,
@@ -2717,6 +2723,7 @@ export {
2717
2723
  requiredArtifacts,
2718
2724
  resetSuccessionLogForTests,
2719
2725
  resolveLiveModelId,
2726
+ resolveModelMapKnob,
2720
2727
  resolveNewAgentModelId,
2721
2728
  resolvePreferredModelChoice,
2722
2729
  resolveSuccessor,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-matrx/agents",
3
- "version": "0.59.211",
3
+ "version": "0.59.213",
4
4
  "description": "Portable AI Matrx agent stream protocol, event projection, and safe result-presentation primitives.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
@@ -508,14 +508,14 @@
508
508
  },
509
509
  "sideEffects": false,
510
510
  "dependencies": {
511
- "@ai-matrx/associations": "latest",
511
+ "@ai-matrx/alchemy": "latest",
512
512
  "@ai-matrx/api": "latest",
513
+ "@ai-matrx/associations": "latest",
514
+ "@ai-matrx/content-ir": "latest",
513
515
  "@ai-matrx/data": "latest",
514
516
  "@ai-matrx/design-system": "latest",
515
517
  "@ai-matrx/diff": "latest",
516
- "@ai-matrx/content-ir": "latest",
517
518
  "@ai-matrx/icons": "latest",
518
- "@ai-matrx/alchemy": "latest",
519
519
  "@ai-matrx/kit": "latest"
520
520
  },
521
521
  "peerDependencies": {
@@ -561,5 +561,5 @@
561
561
  "verify:tarball": "node ./scripts/verify-tarball.mjs",
562
562
  "typegen:self-test": "node scripts/typegen/drop-guard.self-test.mjs && node scripts/typegen/check-api-types-fresh.mjs --self-test"
563
563
  },
564
- "gitHead": "77dc9ac9971e02c1dcd327b31dbf8e6eeba66185"
564
+ "gitHead": "7b0c0ef2c077e84db21db43adf1c6e297fd08138"
565
565
  }