@exellix/graph-composer 2.3.1 → 2.4.2
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 +4 -3
- package/dist/catalogMatchAssist.d.ts +1 -2
- package/dist/catalogMatchAssist.d.ts.map +1 -1
- package/dist/catalogMatchAssist.js +3 -4
- package/dist/cataloxCatalogBridge.d.ts +1 -2
- package/dist/cataloxCatalogBridge.d.ts.map +1 -1
- package/dist/cataloxCatalogBridge.js +2 -2
- package/dist/exampleGeneration.d.ts +11 -0
- package/dist/exampleGeneration.d.ts.map +1 -1
- package/dist/exampleGeneration.js +54 -0
- package/dist/funcxModel.d.ts +8 -0
- package/dist/funcxModel.d.ts.map +1 -0
- package/dist/funcxModel.js +10 -0
- package/dist/graphComposerActions.d.ts.map +1 -1
- package/dist/graphComposerActions.js +65 -0
- package/dist/graphComposerOutputValidation.d.ts +1 -0
- package/dist/graphComposerOutputValidation.d.ts.map +1 -1
- package/dist/graphComposerOutputValidation.js +1 -0
- package/dist/graphEntryContract.d.ts +114 -0
- package/dist/graphEntryContract.d.ts.map +1 -0
- package/dist/graphEntryContract.js +206 -0
- package/dist/graphEntryOutputValidation.d.ts +9 -0
- package/dist/graphEntryOutputValidation.d.ts.map +1 -0
- package/dist/graphEntryOutputValidation.js +276 -0
- package/dist/graphEntryPostProcess.d.ts +11 -0
- package/dist/graphEntryPostProcess.d.ts.map +1 -0
- package/dist/graphEntryPostProcess.js +114 -0
- package/dist/graphModelLayers.d.ts +19 -0
- package/dist/graphModelLayers.d.ts.map +1 -1
- package/dist/graphModelLayers.js +75 -0
- package/dist/index.d.ts +6 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -4
- package/dist/modelConfigPatchMerge.d.ts +6 -0
- package/dist/modelConfigPatchMerge.d.ts.map +1 -0
- package/dist/modelConfigPatchMerge.js +38 -0
- package/dist/runGraphComposer.d.ts +3 -2
- package/dist/runGraphComposer.d.ts.map +1 -1
- package/dist/runGraphComposer.js +25 -11
- package/dist/scopingNeedMatchAssist.d.ts +1 -2
- package/dist/scopingNeedMatchAssist.d.ts.map +1 -1
- package/dist/scopingNeedMatchAssist.js +3 -3
- package/dist/types.d.ts +8 -1
- package/dist/types.d.ts.map +1 -1
- package/functions/graph-composer/meta.json +130 -4
- package/functions/graph-composer/prompts/README.md +8 -0
- package/functions/graph-composer/prompts/action-review-graph-entry-contract.md +37 -0
- package/functions/graph-composer/prompts/action-suggest-graph-entry-conditions.md +13 -0
- package/functions/graph-composer/prompts/action-suggest-graph-entry-examples.md +14 -0
- package/functions/graph-composer/prompts/action-suggest-graph-entry-inputs.md +14 -0
- package/functions/graph-composer/prompts/action-suggest-graph-execution-defaults.md +15 -0
- package/functions/graph-composer/prompts/action-suggest-job-knowledge-refs.md +12 -0
- package/functions/graph-composer/prompts/action-suggest-job-model-defaults.md +14 -0
- package/functions/graph-composer/prompts/shared/graph-entry-scope.md +19 -0
- package/functions/graph-composer/prompts/shared/request-context.md +2 -1
- package/package.json +8 -7
package/dist/graphModelLayers.js
CHANGED
|
@@ -345,3 +345,78 @@ export async function resolveGraphModelProfileName(profileName) {
|
|
|
345
345
|
formatted,
|
|
346
346
|
};
|
|
347
347
|
}
|
|
348
|
+
function formatProfileSlot(profiles, providerIds, slot, includeProviderIds) {
|
|
349
|
+
const name = profiles[slot]?.trim() ?? "";
|
|
350
|
+
if (!name)
|
|
351
|
+
return "—";
|
|
352
|
+
const resolved = providerIds?.[slot]?.trim();
|
|
353
|
+
if (includeProviderIds &&
|
|
354
|
+
resolved &&
|
|
355
|
+
resolved.length > 0 &&
|
|
356
|
+
resolved !== name) {
|
|
357
|
+
return `${name} (${resolved})`;
|
|
358
|
+
}
|
|
359
|
+
return name;
|
|
360
|
+
}
|
|
361
|
+
/** Read `metadata.graphModelLayers` stamped by `stampGraphModelLayersOnGraph`. */
|
|
362
|
+
export function readNodeGraphModelLayersFromNode(node) {
|
|
363
|
+
const meta = readRecord(readRecord(node)?.metadata);
|
|
364
|
+
const raw = meta?.graphModelLayers;
|
|
365
|
+
if (raw === null || typeof raw !== "object" || Array.isArray(raw)) {
|
|
366
|
+
return undefined;
|
|
367
|
+
}
|
|
368
|
+
const layer = raw;
|
|
369
|
+
if (typeof layer.nodeId !== "string" ||
|
|
370
|
+
layer.winning === null ||
|
|
371
|
+
typeof layer.winning !== "object") {
|
|
372
|
+
return undefined;
|
|
373
|
+
}
|
|
374
|
+
return layer;
|
|
375
|
+
}
|
|
376
|
+
/**
|
|
377
|
+
* Human-readable model label for graph canvas / Agent View (graphs-studio).
|
|
378
|
+
* Requires `stampGraphModelLayersOnGraph` (or equivalent `metadata.graphModelLayers` on the node).
|
|
379
|
+
*/
|
|
380
|
+
export function formatNodeWinningModelLabel(nodeOrLayers, options) {
|
|
381
|
+
const layers = nodeOrLayers !== null &&
|
|
382
|
+
typeof nodeOrLayers === "object" &&
|
|
383
|
+
"winning" in nodeOrLayers &&
|
|
384
|
+
"profiles" in (nodeOrLayers.winning ?? {})
|
|
385
|
+
? nodeOrLayers
|
|
386
|
+
: readNodeGraphModelLayersFromNode(nodeOrLayers);
|
|
387
|
+
if (layers === undefined)
|
|
388
|
+
return undefined;
|
|
389
|
+
const includeProviderIds = options?.includeProviderIds !== false;
|
|
390
|
+
const mode = options?.mode ?? "main";
|
|
391
|
+
const { profiles, providerIds } = layers.winning;
|
|
392
|
+
if (!profiles)
|
|
393
|
+
return undefined;
|
|
394
|
+
if (mode === "main") {
|
|
395
|
+
const main = formatProfileSlot(profiles, providerIds, "skillModel", includeProviderIds);
|
|
396
|
+
return main === "—" ? undefined : main;
|
|
397
|
+
}
|
|
398
|
+
const triple = `PRE ${formatProfileSlot(profiles, providerIds, "preActionModel", includeProviderIds)} · MAIN ${formatProfileSlot(profiles, providerIds, "skillModel", includeProviderIds)} · POST ${formatProfileSlot(profiles, providerIds, "postActionModel", includeProviderIds)}`;
|
|
399
|
+
if (mode === "triple")
|
|
400
|
+
return triple;
|
|
401
|
+
const src = layers.winning.sourcePath?.trim() ||
|
|
402
|
+
layers.winning.source ||
|
|
403
|
+
"unknown";
|
|
404
|
+
return `${triple} — ${src}`;
|
|
405
|
+
}
|
|
406
|
+
/** Label for graph-root default from `metadata.graphModelLayersSummary`. */
|
|
407
|
+
export function formatGraphDefaultModelLabel(graph, options) {
|
|
408
|
+
const meta = readRecord(graph.metadata);
|
|
409
|
+
const summary = readRecord(meta?.graphModelLayersSummary);
|
|
410
|
+
const graphDefault = readRecord(summary?.graphDefault);
|
|
411
|
+
const profiles = graphDefault?.profiles;
|
|
412
|
+
const providerIds = graphDefault?.providerIds;
|
|
413
|
+
if (!profiles)
|
|
414
|
+
return undefined;
|
|
415
|
+
const includeProviderIds = options?.includeProviderIds !== false;
|
|
416
|
+
const mode = options?.mode ?? "triple";
|
|
417
|
+
if (mode === "main") {
|
|
418
|
+
const main = formatProfileSlot(profiles, providerIds, "skillModel", includeProviderIds);
|
|
419
|
+
return main === "—" ? undefined : `Job default: ${main}`;
|
|
420
|
+
}
|
|
421
|
+
return `Job default — PRE ${formatProfileSlot(profiles, providerIds, "preActionModel", includeProviderIds)} · MAIN ${formatProfileSlot(profiles, providerIds, "skillModel", includeProviderIds)} · POST ${formatProfileSlot(profiles, providerIds, "postActionModel", includeProviderIds)}`;
|
|
422
|
+
}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,25 +2,27 @@ export { composeInstructions, composeWorkerInstructions, formatSkillList, LOCKED
|
|
|
2
2
|
export { GRAPH_COMPOSER_ACTION_REGISTRY, getActionDefinition, getActionDefinitionByToolName, requiredPromptPathsFromRegistry, loadWorkerBaseMarkdown, type GraphComposerAction, type GraphComposerActionDefinition, } from "./graphComposerActions.js";
|
|
3
3
|
export { graphComposerPackRoot, readGraphComposerPromptFile, } from "./packDir.js";
|
|
4
4
|
export { DEFAULT_UTILITY_SKILLS } from "./defaultUtilitySkills.js";
|
|
5
|
-
export { runGraphComposer, runGraphWorker, resolveGraphComposerClient, getGraphComposerLlmClient, getPackDir, normalizeGraphComposerExplainOutput, normalizeReviewConceptComposerOutput, redactSecretsForLog, type RunGraphComposerOptions, } from "./runGraphComposer.js";
|
|
5
|
+
export { runGraphComposer, runGraphWorker, resolveGraphComposerClient, getGraphComposerLlmClient, getPackDir, normalizeGraphComposerExplainOutput, normalizeReviewConceptComposerOutput, normalizeReviewGraphEntryComposerOutput, redactSecretsForLog, type RunGraphComposerOptions, } from "./runGraphComposer.js";
|
|
6
6
|
export type { LogRuntimeContext, LogLevel, PackageLogLevelsConfig, StackLoggingOptions, } from "@x12i/logxer";
|
|
7
7
|
export { applyPackageLogLevelsFromEnv, configurePackageLogLevels, } from "@x12i/logxer";
|
|
8
8
|
export { GRAPH_COMPOSER_LOG_ENV_PREFIX, configureGraphComposerLogging, createGraphComposerLogger, getGraphComposerLogger, getGraphComposerLoggingConfig, parseGraphComposerLogsLevel, withGraphComposerLogsLevel, type ConfigureGraphComposerLoggingOptions, type GraphComposerLoggingConfig, type GraphComposerLogsLevelInput, } from "./graphComposerLogging.js";
|
|
9
9
|
export { applyGraphConceptPatchOnlyIfEmpty } from "./graphConceptPatchMerge.js";
|
|
10
|
+
export { applyModelConfigPatchGuard } from "./modelConfigPatchMerge.js";
|
|
11
|
+
export { resolveEffectiveGraphEntry, buildGraphEntryExampleJsonSchema, validateGraphEntryPaths, isValidGraphEntryPath, findGraphEntryEntityBindingMismatches, parseJsonExampleValue, resolveGraphEntryContextFromInput, assertGraphEntryAgentSurface, GRAPH_ENTRY_PATH_PREFIX, GRAPH_ENTRY_FINDING_CATEGORIES, GRAPH_EXECUTION_PATCH_ALLOWLIST, type GraphEntryPatch, type GraphEntryInputRow, type GraphEntryExampleRow, type GraphEntryFinding, type ModelConfigPatch, type JobPagentiKnowledgePatch, type GraphExecutionPatch, type GraphResponsePatch, type GraphEntryAgentContext, type TaskNodeAgentContext, type ComposerAgentSurface, } from "./graphEntryContract.js";
|
|
10
12
|
export { runGraphComposerAgent, type GraphComposerAgentResult, type GraphComposerAgentOrchestrationStep, type RunGraphComposerAgentOptions, } from "./graphComposerAgent.js";
|
|
11
13
|
export type { GraphComposerInput, GraphComposerAgentInput, GraphComposerIntent, GraphComposerConstraints, SkillDescriptor, PrimaryIntentType, GraphConceptStatus, GraphConceptEntityBindings, GraphConceptPatch, GraphConceptPatchKey, GraphConceptRequirementsPatch, GraphConceptCoreTaskPatchItem, RequirementOptionCandidate, RequirementOptionEntry, CatalogCandidates, ScopingMapCandidate, NarrixTemplateCandidate, } from "./types.js";
|
|
12
14
|
export { buildCatalogMatchHints, type CatalogMatchAssistOptions, } from "./catalogMatchAssist.js";
|
|
13
15
|
export { buildScopingNeedMatchHints, type ScopingNeedMatchAssistOptions, } from "./scopingNeedMatchAssist.js";
|
|
14
|
-
export { validateCreateModifyOutput, validateSuggestCatalogResolutionOutput, validateSuggestCatalogCreationsOutput, validateSuggestScopingNeedMatchOutput, validateSuggestScopingMapCreationOutput, validateReviewConceptOutput, validateReviewConceptOutputAgainstInput, type OutputValidationContext, } from "./graphComposerOutputValidation.js";
|
|
16
|
+
export { validateCreateModifyOutput, validateSuggestCatalogResolutionOutput, validateSuggestCatalogCreationsOutput, validateSuggestScopingNeedMatchOutput, validateSuggestScopingMapCreationOutput, validateReviewConceptOutput, validateReviewConceptOutputAgainstInput, validateReviewGraphEntryContractOutput, validateSuggestGraphEntryInputsOutput, validateSuggestGraphEntryExamplesOutput, validateSuggestGraphEntryConditionsOutput, validateSuggestJobModelDefaultsOutput, validateSuggestJobKnowledgeRefsOutput, validateSuggestGraphExecutionDefaultsOutput, type OutputValidationContext, } from "./graphComposerOutputValidation.js";
|
|
15
17
|
export type { WoroxScopingMapCatalogCreatePayload, WoroxScopedDataDocumentShape, } from "./scopingCatalogHostTypes.js";
|
|
16
18
|
export { loadExampleGraph, inputExplainNetworkVulnSubnet, inputSuggestConceptObjectiveNetworkVulnSubnet, inputReviewConceptIoSmoke, } from "./exampleInputs.js";
|
|
17
|
-
export { buildGraphInputExampleGuidance, generateGraphJsonInputExample, generateJsonExample, generateMdExample, generateContentExample, type GenerateGraphJsonInputExampleParams, type GenerateJsonExampleResult, type GenerateMdExampleParams, type GenerateMdExampleResult, type GenerateContentExampleParams, type GenerateContentExampleResult, } from "./exampleGeneration.js";
|
|
19
|
+
export { buildGraphInputExampleGuidance, buildGraphEntryExampleGuidance, generateGraphJsonInputExample, generateGraphEntryInputExample, generateJsonExample, generateMdExample, generateContentExample, type GenerateGraphJsonInputExampleParams, type GenerateGraphEntryInputExampleParams, type GenerateJsonExampleResult, type GenerateMdExampleParams, type GenerateMdExampleResult, type GenerateContentExampleParams, type GenerateContentExampleResult, } from "./exampleGeneration.js";
|
|
18
20
|
export { parseGraphConceptStory, parseGraphConceptStoryBody, isGraphConceptStoryDescription, GRAPH_CONCEPT_STORY_MARKER, } from "./parseGraphConceptStory.js";
|
|
19
21
|
export type { ParsedGraphConcept } from "./parseGraphConceptStory.js";
|
|
20
22
|
export { reportTaskNodeProtocolGaps, DEFAULT_LOCAL_SKILL_KEYS, type AiTaskProfileMetadata, type TaskNodeProtocolGap, type TaskNodeProtocolIssueCode, type WebScopingNodeConfig, type InputSynthesisNodeConfig, type InputSynthesisDestination, } from "./aiTaskProfile.js";
|
|
21
23
|
export { assertCanonicalGraphDocument, getCanonicalGraphDocumentViolations, CANONICAL_GRAPH_TOP_LEVEL_KEYS, GRAPH_ENGINE_MEMORY_PATH_ROOTS, isAllowedGraphEngineMemoryPath, collectAiTasksNodeExtensionIssues, assertAiTasksNodeExtensionsValid, resolveGraphEngineMemoryPathValue, buildGraphEngineMemoryResolutionRootFromWorkingMemory, DEFAULT_GRAPH_AI_MODEL_PROFILE_CONFIG, looksLikeConcreteModelId, isGraphAiProfileName, type GraphEngineMemoryResolutionRoot, } from "./graphEngineBridge.js";
|
|
22
24
|
export { collectCanonicalGraphWarnings } from "./canonicalGraphWarnings.js";
|
|
23
|
-
export { analyzeGraphModelLayers, stampGraphModelLayersOnGraph, graphModelLayerLegend, graphModelProfileAccent, resolveGraphModelProfileName, type AnalyzeGraphModelLayersOptions, type GraphModelLayerPhase, type GraphModelLayerSource, type GraphModelLayerStackEntry, type GraphModelLayersAnalysis, type GraphModelLayersRuntimeOverlay, type GraphModelProfilesTriple, type NodeGraphModelLayers, } from "./graphModelLayers.js";
|
|
25
|
+
export { analyzeGraphModelLayers, stampGraphModelLayersOnGraph, graphModelLayerLegend, graphModelProfileAccent, resolveGraphModelProfileName, readNodeGraphModelLayersFromNode, formatNodeWinningModelLabel, formatGraphDefaultModelLabel, type FormatNodeModelLabelOptions, type AnalyzeGraphModelLayersOptions, type GraphModelLayerPhase, type GraphModelLayerSource, type GraphModelLayerStackEntry, type GraphModelLayersAnalysis, type GraphModelLayersRuntimeOverlay, type GraphModelProfilesTriple, type NodeGraphModelLayers, } from "./graphModelLayers.js";
|
|
24
26
|
export { resolveTaskNodeInputs, resolveTaskNodeInputsConfig, resolveTaskNodeTaskVariable, canonicalizeGraphTaskNodeTaskVariable, canonicalizeGraphModel, reportTaskNodeInputsLayoutIssues, taskNodeInputsLayoutWarningMessage, isTaskVariablePathRef, isTaskNode, isFinalizerNode, type TaskNodeInputsLayoutIssue, type TaskNodeInputsLayoutIssueCode, } from "./taskNodeTaskVariable.js";
|
|
25
27
|
export { createCatalox, bindCataloxContext, Catalox, CataloxBound, } from "@x12i/catalox/embedder";
|
|
26
28
|
export type { CataloxContext, CataloxRuntimeConfig, } from "@x12i/catalox/embedder";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -2,21 +2,23 @@ export { composeInstructions, composeWorkerInstructions, formatSkillList, LOCKED
|
|
|
2
2
|
export { GRAPH_COMPOSER_ACTION_REGISTRY, getActionDefinition, getActionDefinitionByToolName, requiredPromptPathsFromRegistry, loadWorkerBaseMarkdown, } from "./graphComposerActions.js";
|
|
3
3
|
export { graphComposerPackRoot, readGraphComposerPromptFile, } from "./packDir.js";
|
|
4
4
|
export { DEFAULT_UTILITY_SKILLS } from "./defaultUtilitySkills.js";
|
|
5
|
-
export { runGraphComposer, runGraphWorker, resolveGraphComposerClient, getGraphComposerLlmClient, getPackDir, normalizeGraphComposerExplainOutput, normalizeReviewConceptComposerOutput, redactSecretsForLog, } from "./runGraphComposer.js";
|
|
5
|
+
export { runGraphComposer, runGraphWorker, resolveGraphComposerClient, getGraphComposerLlmClient, getPackDir, normalizeGraphComposerExplainOutput, normalizeReviewConceptComposerOutput, normalizeReviewGraphEntryComposerOutput, redactSecretsForLog, } from "./runGraphComposer.js";
|
|
6
6
|
export { applyPackageLogLevelsFromEnv, configurePackageLogLevels, } from "@x12i/logxer";
|
|
7
7
|
export { GRAPH_COMPOSER_LOG_ENV_PREFIX, configureGraphComposerLogging, createGraphComposerLogger, getGraphComposerLogger, getGraphComposerLoggingConfig, parseGraphComposerLogsLevel, withGraphComposerLogsLevel, } from "./graphComposerLogging.js";
|
|
8
8
|
export { applyGraphConceptPatchOnlyIfEmpty } from "./graphConceptPatchMerge.js";
|
|
9
|
+
export { applyModelConfigPatchGuard } from "./modelConfigPatchMerge.js";
|
|
10
|
+
export { resolveEffectiveGraphEntry, buildGraphEntryExampleJsonSchema, validateGraphEntryPaths, isValidGraphEntryPath, findGraphEntryEntityBindingMismatches, parseJsonExampleValue, resolveGraphEntryContextFromInput, assertGraphEntryAgentSurface, GRAPH_ENTRY_PATH_PREFIX, GRAPH_ENTRY_FINDING_CATEGORIES, GRAPH_EXECUTION_PATCH_ALLOWLIST, } from "./graphEntryContract.js";
|
|
9
11
|
export { runGraphComposerAgent, } from "./graphComposerAgent.js";
|
|
10
12
|
export { buildCatalogMatchHints, } from "./catalogMatchAssist.js";
|
|
11
13
|
export { buildScopingNeedMatchHints, } from "./scopingNeedMatchAssist.js";
|
|
12
|
-
export { validateCreateModifyOutput, validateSuggestCatalogResolutionOutput, validateSuggestCatalogCreationsOutput, validateSuggestScopingNeedMatchOutput, validateSuggestScopingMapCreationOutput, validateReviewConceptOutput, validateReviewConceptOutputAgainstInput, } from "./graphComposerOutputValidation.js";
|
|
14
|
+
export { validateCreateModifyOutput, validateSuggestCatalogResolutionOutput, validateSuggestCatalogCreationsOutput, validateSuggestScopingNeedMatchOutput, validateSuggestScopingMapCreationOutput, validateReviewConceptOutput, validateReviewConceptOutputAgainstInput, validateReviewGraphEntryContractOutput, validateSuggestGraphEntryInputsOutput, validateSuggestGraphEntryExamplesOutput, validateSuggestGraphEntryConditionsOutput, validateSuggestJobModelDefaultsOutput, validateSuggestJobKnowledgeRefsOutput, validateSuggestGraphExecutionDefaultsOutput, } from "./graphComposerOutputValidation.js";
|
|
13
15
|
export { loadExampleGraph, inputExplainNetworkVulnSubnet, inputSuggestConceptObjectiveNetworkVulnSubnet, inputReviewConceptIoSmoke, } from "./exampleInputs.js";
|
|
14
|
-
export { buildGraphInputExampleGuidance, generateGraphJsonInputExample, generateJsonExample, generateMdExample, generateContentExample, } from "./exampleGeneration.js";
|
|
16
|
+
export { buildGraphInputExampleGuidance, buildGraphEntryExampleGuidance, generateGraphJsonInputExample, generateGraphEntryInputExample, generateJsonExample, generateMdExample, generateContentExample, } from "./exampleGeneration.js";
|
|
15
17
|
export { parseGraphConceptStory, parseGraphConceptStoryBody, isGraphConceptStoryDescription, GRAPH_CONCEPT_STORY_MARKER, } from "./parseGraphConceptStory.js";
|
|
16
18
|
export { reportTaskNodeProtocolGaps, DEFAULT_LOCAL_SKILL_KEYS, } from "./aiTaskProfile.js";
|
|
17
19
|
export { assertCanonicalGraphDocument, getCanonicalGraphDocumentViolations, CANONICAL_GRAPH_TOP_LEVEL_KEYS, GRAPH_ENGINE_MEMORY_PATH_ROOTS, isAllowedGraphEngineMemoryPath, collectAiTasksNodeExtensionIssues, assertAiTasksNodeExtensionsValid, resolveGraphEngineMemoryPathValue, buildGraphEngineMemoryResolutionRootFromWorkingMemory, DEFAULT_GRAPH_AI_MODEL_PROFILE_CONFIG, looksLikeConcreteModelId, isGraphAiProfileName, } from "./graphEngineBridge.js";
|
|
18
20
|
export { collectCanonicalGraphWarnings } from "./canonicalGraphWarnings.js";
|
|
19
|
-
export { analyzeGraphModelLayers, stampGraphModelLayersOnGraph, graphModelLayerLegend, graphModelProfileAccent, resolveGraphModelProfileName, } from "./graphModelLayers.js";
|
|
21
|
+
export { analyzeGraphModelLayers, stampGraphModelLayersOnGraph, graphModelLayerLegend, graphModelProfileAccent, resolveGraphModelProfileName, readNodeGraphModelLayersFromNode, formatNodeWinningModelLabel, formatGraphDefaultModelLabel, } from "./graphModelLayers.js";
|
|
20
22
|
export { resolveTaskNodeInputs, resolveTaskNodeInputsConfig, resolveTaskNodeTaskVariable, canonicalizeGraphTaskNodeTaskVariable, canonicalizeGraphModel, reportTaskNodeInputsLayoutIssues, taskNodeInputsLayoutWarningMessage, isTaskVariablePathRef, isTaskNode, isFinalizerNode, } from "./taskNodeTaskVariable.js";
|
|
21
23
|
export { createCatalox, bindCataloxContext, Catalox, CataloxBound, } from "@x12i/catalox/embedder";
|
|
22
24
|
export { loadCatalogCandidatesFromCatalox, unifiedCatalogItemToSkillDescriptor, unifiedCatalogItemToScopingMapCandidate, unifiedCatalogItemToNarrixTemplateCandidate, } from "./cataloxCatalogBridge.js";
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ModelConfigPatch } from "./graphEntryContract.js";
|
|
2
|
+
/**
|
|
3
|
+
* Apply modelConfigPatch without dropping existing cases unless replaceMode (FR-G6).
|
|
4
|
+
*/
|
|
5
|
+
export declare function applyModelConfigPatchGuard(patch: ModelConfigPatch, existingGraph: object): ModelConfigPatch;
|
|
6
|
+
//# sourceMappingURL=modelConfigPatchMerge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"modelConfigPatchMerge.d.ts","sourceRoot":"","sources":["../src/modelConfigPatchMerge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAQhE;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,gBAAgB,EACvB,aAAa,EAAE,MAAM,GACpB,gBAAgB,CAiClB"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
function asObject(v) {
|
|
2
|
+
return v !== null && typeof v === "object" && !Array.isArray(v)
|
|
3
|
+
? v
|
|
4
|
+
: undefined;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Apply modelConfigPatch without dropping existing cases unless replaceMode (FR-G6).
|
|
8
|
+
*/
|
|
9
|
+
export function applyModelConfigPatchGuard(patch, existingGraph) {
|
|
10
|
+
const graph = asObject(existingGraph);
|
|
11
|
+
const existing = asObject(graph?.modelConfig);
|
|
12
|
+
const existingCases = Array.isArray(existing?.cases) ? existing.cases : [];
|
|
13
|
+
if (patch.mode === "replaceDefault" && patch.modelConfig) {
|
|
14
|
+
return patch;
|
|
15
|
+
}
|
|
16
|
+
if (patch.cases && patch.cases.length > 0) {
|
|
17
|
+
if (patch.mode === "appendCase" || existingCases.length === 0) {
|
|
18
|
+
return patch;
|
|
19
|
+
}
|
|
20
|
+
return {
|
|
21
|
+
...patch,
|
|
22
|
+
mode: "appendCase",
|
|
23
|
+
cases: [...existingCases, ...patch.cases],
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
if (patch.modelConfig && existingCases.length > 0) {
|
|
27
|
+
return {
|
|
28
|
+
mode: "appendCase",
|
|
29
|
+
cases: [
|
|
30
|
+
...existingCases,
|
|
31
|
+
{
|
|
32
|
+
modelConfig: patch.modelConfig,
|
|
33
|
+
},
|
|
34
|
+
],
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
return patch;
|
|
38
|
+
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { type LogRuntimeContext } from "@x12i/logxer";
|
|
2
2
|
import { type GraphComposerLogsLevelInput, type StackLoggingOptions } from "./graphComposerLogging.js";
|
|
3
3
|
import type { Client } from "@x12i/funcx";
|
|
4
|
-
import { type LlmMode } from "@x12i/funcx/functions";
|
|
5
4
|
import type { GraphComposerInput } from "./types.js";
|
|
6
5
|
import { redactSecretsForLog } from "./redactForLog.js";
|
|
7
6
|
export { redactSecretsForLog };
|
|
@@ -10,6 +9,7 @@ export { applyGraphConceptPatchOnlyIfEmpty } from "./graphConceptPatchMerge.js";
|
|
|
10
9
|
* Maps `suggestedCatalogArtifacts` to `catalogProposals` when the latter is empty
|
|
11
10
|
* or missing (consumer contract alias). No-op for other actions.
|
|
12
11
|
*/
|
|
12
|
+
export { normalizeReviewGraphEntryComposerOutput } from "./graphEntryPostProcess.js";
|
|
13
13
|
export declare function normalizeReviewConceptComposerOutput(out: Record<string, unknown>): void;
|
|
14
14
|
/**
|
|
15
15
|
* If `action` is `explain` and known fields are flattened at the top level, moves them under `explanation` (see `functions/graph-composer/meta.json`). Maps `perNode` / `perNodeDescriptions` to `nodeDescriptions`. No-op for other actions or when `explanation` is already an object.
|
|
@@ -30,7 +30,8 @@ export type RunGraphComposerOptions = {
|
|
|
30
30
|
* If you pass `client`, set `connectTimeoutMs` on your own `createClient` instead; this field is then ignored.
|
|
31
31
|
*/
|
|
32
32
|
connectTimeoutMs?: number;
|
|
33
|
-
|
|
33
|
+
/** Legacy alias for {@link model} (funcx 4.4+). */
|
|
34
|
+
mode?: string;
|
|
34
35
|
model?: string;
|
|
35
36
|
temperature?: number;
|
|
36
37
|
maxTokens?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runGraphComposer.d.ts","sourceRoot":"","sources":["../src/runGraphComposer.ts"],"names":[],"mappings":"AAEA,OAAO,EAKL,KAAK,iBAAiB,EACvB,MAAM,cAAc,CAAC;AACtB,OAAO,EAGL,KAAK,2BAA2B,EAChC,KAAK,mBAAmB,EACzB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"runGraphComposer.d.ts","sourceRoot":"","sources":["../src/runGraphComposer.ts"],"names":[],"mappings":"AAEA,OAAO,EAKL,KAAK,iBAAiB,EACvB,MAAM,cAAc,CAAC;AACtB,OAAO,EAGL,KAAK,2BAA2B,EAChC,KAAK,mBAAmB,EACzB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAoB1C,OAAO,KAAK,EAAE,kBAAkB,EAAmB,MAAM,YAAY,CAAC;AAEtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAQxD,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAC/B,OAAO,EAAE,iCAAiC,EAAE,MAAM,6BAA6B,CAAC;AAgHhF;;;GAGG;AACH,OAAO,EAAE,uCAAuC,EAAE,MAAM,4BAA4B,CAAC;AAErF,wBAAgB,oCAAoC,CAClD,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC3B,IAAI,CASN;AA6DD;;GAEG;AACH,wBAAgB,mCAAmC,CACjD,MAAM,EAAE,OAAO,GACd,OAAO,CAKT;AA0ED,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,2FAA2F;IAC3F,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mDAAmD;IACnD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;;OAGG;IACH,SAAS,CAAC,EAAE,2BAA2B,CAAC;IACxC;;;OAGG;IACH,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAC9B;;;OAGG;IACH,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAmDF,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,uBAAuB,GAC/B,MAAM,GAAG,SAAS,CA4BpB;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,GAAE,uBAA4B,GACpC,MAAM,CAYR;AA0LD,wBAAsB,cAAc,CAClC,KAAK,EAAE,kBAAkB,EACzB,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,OAAO,CAAC,CAYlB;AAED,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,kBAAkB,EACzB,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,OAAO,CAAC,CAElB;AAED,wBAAgB,UAAU,IAAI,MAAM,CAEnC"}
|
package/dist/runGraphComposer.js
CHANGED
|
@@ -4,6 +4,7 @@ import { DebugLogAbstract, exceptionEvidence, fieldEvidence, runWithLogContext,
|
|
|
4
4
|
import { getGraphComposerLogger, withGraphComposerLogsLevel, } from "./graphComposerLogging.js";
|
|
5
5
|
import { createClient } from "@x12i/funcx";
|
|
6
6
|
import { buildRequestPrompt, executeFuncx as invokeFuncxPack, } from "@x12i/funcx/functions";
|
|
7
|
+
import { resolveFuncxModel } from "./funcxModel.js";
|
|
7
8
|
import { composeWorkerInstructions } from "./composeInstructions.js";
|
|
8
9
|
import { buildCatalogMatchHints } from "./catalogMatchAssist.js";
|
|
9
10
|
import { buildScopingNeedMatchHints } from "./scopingNeedMatchAssist.js";
|
|
@@ -14,6 +15,7 @@ import { isGraphConceptStoryDescription, parseGraphConceptStory, } from "./parse
|
|
|
14
15
|
import { applyGraphConceptPatchOnlyIfEmpty } from "./graphConceptPatchMerge.js";
|
|
15
16
|
import { redactSecretsForLog } from "./redactForLog.js";
|
|
16
17
|
import { validateReviewConceptOutputAgainstInput } from "./graphComposerOutputValidation.js";
|
|
18
|
+
import { normalizeReviewGraphEntryComposerOutput, processSuggestGraphEntryExamplesOutput, processSuggestJobModelDefaultsOutput, } from "./graphEntryPostProcess.js";
|
|
17
19
|
export { redactSecretsForLog };
|
|
18
20
|
export { applyGraphConceptPatchOnlyIfEmpty } from "./graphConceptPatchMerge.js";
|
|
19
21
|
function processSuggestConceptObjectiveOutput(shaped, intent, existingGraph) {
|
|
@@ -102,6 +104,7 @@ function assertInputShape(input) {
|
|
|
102
104
|
* Maps `suggestedCatalogArtifacts` to `catalogProposals` when the latter is empty
|
|
103
105
|
* or missing (consumer contract alias). No-op for other actions.
|
|
104
106
|
*/
|
|
107
|
+
export { normalizeReviewGraphEntryComposerOutput } from "./graphEntryPostProcess.js";
|
|
105
108
|
export function normalizeReviewConceptComposerOutput(out) {
|
|
106
109
|
const cur = out.catalogProposals;
|
|
107
110
|
const hasProposals = Array.isArray(cur) && cur.length > 0;
|
|
@@ -137,7 +140,13 @@ function unwrapComposerPayload(result) {
|
|
|
137
140
|
io.findings !== undefined ||
|
|
138
141
|
io.catalogProposals !== undefined ||
|
|
139
142
|
io.suggestedCatalogArtifacts !== undefined ||
|
|
140
|
-
io.requirementOptions !== undefined
|
|
143
|
+
io.requirementOptions !== undefined ||
|
|
144
|
+
io.graphEntryPatch !== undefined ||
|
|
145
|
+
io.suggestedGraphEntryPatch !== undefined ||
|
|
146
|
+
io.modelConfigPatch !== undefined ||
|
|
147
|
+
io.jobPagentiKnowledgePatch !== undefined ||
|
|
148
|
+
io.graphExecutionPatch !== undefined ||
|
|
149
|
+
io.graphResponsePatch !== undefined) {
|
|
141
150
|
return inner;
|
|
142
151
|
}
|
|
143
152
|
}
|
|
@@ -329,13 +338,7 @@ async function runGraphWorkerInner(input, options) {
|
|
|
329
338
|
getActionDefinition(action);
|
|
330
339
|
const rules = loadRules();
|
|
331
340
|
const system = composeWorkerInstructions(action, normalized.aiSkills, normalized.utilitySkills, normalized.skillMode);
|
|
332
|
-
|
|
333
|
-
const instructions = {
|
|
334
|
-
weak: system,
|
|
335
|
-
normal: system,
|
|
336
|
-
strong: system,
|
|
337
|
-
ultra: system,
|
|
338
|
-
};
|
|
341
|
+
const instructions = system;
|
|
339
342
|
const client = resolveGraphComposerClient(options);
|
|
340
343
|
let requestForPrompt = normalized;
|
|
341
344
|
const assist = options.catalogMatchListsAssist !== false &&
|
|
@@ -391,7 +394,7 @@ async function runGraphWorkerInner(input, options) {
|
|
|
391
394
|
composedInstructionChars: system.length,
|
|
392
395
|
debugKind: DebugLogAbstract.EVENT,
|
|
393
396
|
});
|
|
394
|
-
const
|
|
397
|
+
const model = resolveFuncxModel({ model: options.model, mode: options.mode ?? "strong" });
|
|
395
398
|
try {
|
|
396
399
|
// One @x12i/funcx function-pack LLM call for this intent.action (not a DAG node skill).
|
|
397
400
|
const result = await invokeFuncxPack({
|
|
@@ -400,8 +403,7 @@ async function runGraphWorkerInner(input, options) {
|
|
|
400
403
|
instructions,
|
|
401
404
|
rules,
|
|
402
405
|
client,
|
|
403
|
-
|
|
404
|
-
model: options.model,
|
|
406
|
+
model,
|
|
405
407
|
temperature: options.temperature,
|
|
406
408
|
maxTokens: options.maxTokens,
|
|
407
409
|
});
|
|
@@ -414,9 +416,21 @@ async function runGraphWorkerInner(input, options) {
|
|
|
414
416
|
if (action === "reviewConcept") {
|
|
415
417
|
normalizeReviewConceptComposerOutput(o);
|
|
416
418
|
}
|
|
419
|
+
if (action === "reviewGraphEntryContract") {
|
|
420
|
+
normalizeReviewGraphEntryComposerOutput(o);
|
|
421
|
+
}
|
|
417
422
|
if (action === "suggestConceptObjective") {
|
|
418
423
|
processSuggestConceptObjectiveOutput(o, normalized.intent, normalized.existingGraph);
|
|
419
424
|
}
|
|
425
|
+
if (action === "suggestJobModelDefaults") {
|
|
426
|
+
processSuggestJobModelDefaultsOutput(o, normalized.existingGraph);
|
|
427
|
+
}
|
|
428
|
+
if (action === "suggestGraphEntryExamples") {
|
|
429
|
+
await processSuggestGraphEntryExamplesOutput(o, normalized, {
|
|
430
|
+
repairWithLlm: false,
|
|
431
|
+
});
|
|
432
|
+
delete o._graphEntryExamplesIncomplete;
|
|
433
|
+
}
|
|
420
434
|
validateGraphComposerOutput(action, shaped, normalized);
|
|
421
435
|
if (action === "reviewConcept") {
|
|
422
436
|
validateReviewConceptOutputAgainstInput(shaped, {
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import type { Client } from "@x12i/funcx";
|
|
2
|
-
import type { LlmMode } from "@x12i/funcx/functions";
|
|
3
2
|
import type { GraphComposerInput } from "./types.js";
|
|
4
3
|
export type ScopingNeedMatchAssistOptions = {
|
|
5
4
|
client: Client;
|
|
6
|
-
mode?:
|
|
5
|
+
mode?: string;
|
|
7
6
|
model?: string;
|
|
8
7
|
};
|
|
9
8
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scopingNeedMatchAssist.d.ts","sourceRoot":"","sources":["../src/scopingNeedMatchAssist.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"scopingNeedMatchAssist.d.ts","sourceRoot":"","sources":["../src/scopingNeedMatchAssist.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,KAAK,EACV,kBAAkB,EAEnB,MAAM,YAAY,CAAC;AA0BpB,MAAM,MAAM,6BAA6B,GAAG;IAC1C,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;GAGG;AACH,wBAAsB,0BAA0B,CAC9C,KAAK,EAAE,kBAAkB,EACzB,IAAI,EAAE,6BAA6B,GAClC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC,CAoC9C"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { matchLists } from "@x12i/funcx/functions";
|
|
2
|
+
import { resolveFuncxModel } from "./funcxModel.js";
|
|
2
3
|
function scopingCatalogItems(maps) {
|
|
3
4
|
return maps.map((m) => ({
|
|
4
5
|
scopingMapId: m.scopingMapId,
|
|
@@ -45,14 +46,13 @@ export async function buildScopingNeedMatchHints(input, opts) {
|
|
|
45
46
|
...(hint !== undefined ? { graphHint: hint } : {}),
|
|
46
47
|
},
|
|
47
48
|
];
|
|
48
|
-
const { client
|
|
49
|
+
const { client } = opts;
|
|
49
50
|
const r = await matchLists({
|
|
50
51
|
list1,
|
|
51
52
|
list2: scopingCatalogItems(maps),
|
|
52
53
|
guidance: "Match the data need to the single best scoping map or questionId candidate. Prefer precise title/description fit over generic maps. Use reason briefly.",
|
|
53
|
-
mode,
|
|
54
54
|
client,
|
|
55
|
-
model,
|
|
55
|
+
model: resolveFuncxModel(opts),
|
|
56
56
|
}, { rules: [] });
|
|
57
57
|
return { matches: r.matches, unmatched: r.unmatched };
|
|
58
58
|
}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import type { GraphComposerAgentContext } from "./graphEntryContract.js";
|
|
2
|
+
export type { GraphComposerAgentContext, GraphEntryAgentContext } from "./graphEntryContract.js";
|
|
1
3
|
export type SkillDescriptor = {
|
|
2
4
|
skillKey: string;
|
|
3
5
|
description: string;
|
|
@@ -115,7 +117,7 @@ export type RequirementOptionEntry = {
|
|
|
115
117
|
needsNewArtifact: boolean;
|
|
116
118
|
};
|
|
117
119
|
export type GraphComposerIntent = {
|
|
118
|
-
action: "create" | "modify" | "explain" | "suggestConceptObjective" | "suggestCatalogResolution" | "suggestCatalogCreations" | "suggestScopingNeedMatch" | "suggestScopingMapCreation" | "reviewConcept";
|
|
120
|
+
action: "create" | "modify" | "explain" | "suggestConceptObjective" | "suggestCatalogResolution" | "suggestCatalogCreations" | "suggestScopingNeedMatch" | "suggestScopingMapCreation" | "reviewConcept" | "reviewGraphEntryContract" | "suggestGraphEntryInputs" | "suggestGraphEntryExamples" | "suggestGraphEntryConditions" | "suggestJobModelDefaults" | "suggestJobKnowledgeRefs" | "suggestGraphExecutionDefaults";
|
|
119
121
|
description: string;
|
|
120
122
|
focusNodeIds?: string[];
|
|
121
123
|
/**
|
|
@@ -138,6 +140,11 @@ export type GraphComposerConstraints = {
|
|
|
138
140
|
export type GraphComposerInput = {
|
|
139
141
|
intent: GraphComposerIntent;
|
|
140
142
|
existingGraph?: object;
|
|
143
|
+
/**
|
|
144
|
+
* Agent View envelope from graphs-studio (`buildGraphEntryAgentContext` / node context).
|
|
145
|
+
* Preferred over duplicating the same keys under `analysisContext`.
|
|
146
|
+
*/
|
|
147
|
+
agentContext?: GraphComposerAgentContext;
|
|
141
148
|
/**
|
|
142
149
|
* Optional analyzer payload (execution order, node IO, issues, layers, …).
|
|
143
150
|
* Strongly recommended for `suggestConceptObjective`.
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -93,6 +93,86 @@
|
|
|
93
93
|
"source": { "type": "string" }
|
|
94
94
|
}
|
|
95
95
|
},
|
|
96
|
+
"GraphEntryInputRow": {
|
|
97
|
+
"type": "object",
|
|
98
|
+
"required": ["path"],
|
|
99
|
+
"properties": {
|
|
100
|
+
"kind": { "enum": ["scalar", "record"] },
|
|
101
|
+
"path": {
|
|
102
|
+
"type": "string",
|
|
103
|
+
"description": "Must start with execution.input."
|
|
104
|
+
},
|
|
105
|
+
"required": { "type": "boolean" },
|
|
106
|
+
"entityIds": { "type": "array", "items": { "type": "string" } },
|
|
107
|
+
"label": { "type": "string" },
|
|
108
|
+
"description": { "type": "string" }
|
|
109
|
+
}
|
|
110
|
+
},
|
|
111
|
+
"GraphEntryExampleRow": {
|
|
112
|
+
"type": "object",
|
|
113
|
+
"required": ["format", "value"],
|
|
114
|
+
"properties": {
|
|
115
|
+
"path": { "type": "string" },
|
|
116
|
+
"format": { "enum": ["json", "markdown", "text"] },
|
|
117
|
+
"value": { "type": "string" }
|
|
118
|
+
}
|
|
119
|
+
},
|
|
120
|
+
"GraphEntryPatch": {
|
|
121
|
+
"type": "object",
|
|
122
|
+
"properties": {
|
|
123
|
+
"inputs": {
|
|
124
|
+
"type": "array",
|
|
125
|
+
"items": { "$ref": "#/$defs/GraphEntryInputRow" }
|
|
126
|
+
},
|
|
127
|
+
"exampleInputs": {
|
|
128
|
+
"type": "array",
|
|
129
|
+
"items": { "$ref": "#/$defs/GraphEntryExampleRow" }
|
|
130
|
+
},
|
|
131
|
+
"conditions": { "type": "object" }
|
|
132
|
+
}
|
|
133
|
+
},
|
|
134
|
+
"ModelConfigPatch": {
|
|
135
|
+
"type": "object",
|
|
136
|
+
"properties": {
|
|
137
|
+
"mode": { "enum": ["appendCase", "replaceDefault"] },
|
|
138
|
+
"cases": { "type": "array", "items": { "type": "object" } },
|
|
139
|
+
"modelConfig": {
|
|
140
|
+
"type": "object",
|
|
141
|
+
"properties": {
|
|
142
|
+
"preActionModel": { "type": "string" },
|
|
143
|
+
"skillModel": { "type": "string" },
|
|
144
|
+
"postActionModel": { "type": "string" }
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
},
|
|
149
|
+
"JobPagentiKnowledgePatch": {
|
|
150
|
+
"type": "object",
|
|
151
|
+
"properties": {
|
|
152
|
+
"refs": {
|
|
153
|
+
"type": "array",
|
|
154
|
+
"items": {
|
|
155
|
+
"type": "object",
|
|
156
|
+
"required": ["catalogId", "itemId"],
|
|
157
|
+
"properties": {
|
|
158
|
+
"catalogId": { "type": "string" },
|
|
159
|
+
"itemId": { "type": "string" }
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
},
|
|
163
|
+
"append": {
|
|
164
|
+
"type": "array",
|
|
165
|
+
"items": {
|
|
166
|
+
"type": "object",
|
|
167
|
+
"required": ["catalogId", "itemId"],
|
|
168
|
+
"properties": {
|
|
169
|
+
"catalogId": { "type": "string" },
|
|
170
|
+
"itemId": { "type": "string" }
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
},
|
|
96
176
|
"RequirementOptionEntry": {
|
|
97
177
|
"type": "object",
|
|
98
178
|
"description": "Ambiguous requirement field: candidates and whether a new catalog artifact is needed",
|
|
@@ -238,7 +318,14 @@
|
|
|
238
318
|
"suggestCatalogCreations",
|
|
239
319
|
"suggestScopingNeedMatch",
|
|
240
320
|
"suggestScopingMapCreation",
|
|
241
|
-
"reviewConcept"
|
|
321
|
+
"reviewConcept",
|
|
322
|
+
"reviewGraphEntryContract",
|
|
323
|
+
"suggestGraphEntryInputs",
|
|
324
|
+
"suggestGraphEntryExamples",
|
|
325
|
+
"suggestGraphEntryConditions",
|
|
326
|
+
"suggestJobModelDefaults",
|
|
327
|
+
"suggestJobKnowledgeRefs",
|
|
328
|
+
"suggestGraphExecutionDefaults"
|
|
242
329
|
]
|
|
243
330
|
},
|
|
244
331
|
"description": {
|
|
@@ -265,9 +352,13 @@
|
|
|
265
352
|
}
|
|
266
353
|
},
|
|
267
354
|
"existingGraph": {
|
|
268
|
-
"description": "Required for modify, explain, suggestConceptObjective, suggestCatalogResolution, suggestCatalogCreations, reviewConcept. Optional for suggestScopingNeedMatch (context) and suggestScopingMapCreation (alignment).",
|
|
355
|
+
"description": "Required for modify, explain, suggestConceptObjective, suggestCatalogResolution, suggestCatalogCreations, reviewConcept, and graph-entry actions. Optional for suggestScopingNeedMatch (context) and suggestScopingMapCreation (alignment).",
|
|
269
356
|
"type": "object"
|
|
270
357
|
},
|
|
358
|
+
"agentContext": {
|
|
359
|
+
"type": "object",
|
|
360
|
+
"description": "graphs-studio Agent View envelope (surface graph-entry | task-node, graphEntry, jobDefaults, …)"
|
|
361
|
+
},
|
|
271
362
|
"analysisContext": {
|
|
272
363
|
"type": "object",
|
|
273
364
|
"description": "Optional graph analysis output (execution order, IO, issues, …). Strongly recommended for suggestConceptObjective, reviewConcept, and suggestCatalog*."
|
|
@@ -336,7 +427,14 @@
|
|
|
336
427
|
"suggestCatalogCreations",
|
|
337
428
|
"suggestScopingNeedMatch",
|
|
338
429
|
"suggestScopingMapCreation",
|
|
339
|
-
"reviewConcept"
|
|
430
|
+
"reviewConcept",
|
|
431
|
+
"reviewGraphEntryContract",
|
|
432
|
+
"suggestGraphEntryInputs",
|
|
433
|
+
"suggestGraphEntryExamples",
|
|
434
|
+
"suggestGraphEntryConditions",
|
|
435
|
+
"suggestJobModelDefaults",
|
|
436
|
+
"suggestJobKnowledgeRefs",
|
|
437
|
+
"suggestGraphExecutionDefaults"
|
|
340
438
|
]
|
|
341
439
|
},
|
|
342
440
|
"graph": {
|
|
@@ -426,13 +524,41 @@
|
|
|
426
524
|
"summary": { "type": "string" }
|
|
427
525
|
}
|
|
428
526
|
},
|
|
527
|
+
"graphEntryPatch": {
|
|
528
|
+
"$ref": "#/$defs/GraphEntryPatch",
|
|
529
|
+
"description": "Partial metadata.graphEntry patch for graph-entry actions"
|
|
530
|
+
},
|
|
531
|
+
"suggestedGraphEntryPatch": {
|
|
532
|
+
"$ref": "#/$defs/GraphEntryPatch",
|
|
533
|
+
"description": "Alias for graphEntryPatch on reviewGraphEntryContract"
|
|
534
|
+
},
|
|
535
|
+
"modelConfigPatch": {
|
|
536
|
+
"$ref": "#/$defs/ModelConfigPatch",
|
|
537
|
+
"description": "Root modelConfig patch (suggestJobModelDefaults / reviewGraphEntryContract)"
|
|
538
|
+
},
|
|
539
|
+
"jobPagentiKnowledgePatch": {
|
|
540
|
+
"$ref": "#/$defs/JobPagentiKnowledgePatch",
|
|
541
|
+
"description": "Root jobPagentiKnowledge refs patch"
|
|
542
|
+
},
|
|
543
|
+
"graphExecutionPatch": {
|
|
544
|
+
"type": "object",
|
|
545
|
+
"description": "Partial metadata.graphExecution patch"
|
|
546
|
+
},
|
|
547
|
+
"graphResponsePatch": {
|
|
548
|
+
"type": "object",
|
|
549
|
+
"description": "Layer 08 response / studio persistency patch (separate from graphEntry)"
|
|
550
|
+
},
|
|
429
551
|
"findings": {
|
|
430
552
|
"type": "array",
|
|
431
|
-
"description": "Present for reviewConcept — categorized review findings",
|
|
553
|
+
"description": "Present for reviewConcept and reviewGraphEntryContract — categorized review findings",
|
|
432
554
|
"items": {
|
|
433
555
|
"type": "object",
|
|
434
556
|
"required": ["category", "severity", "summary"],
|
|
435
557
|
"properties": {
|
|
558
|
+
"scopeType": {
|
|
559
|
+
"type": "string",
|
|
560
|
+
"description": "graph for reviewGraphEntryContract findings"
|
|
561
|
+
},
|
|
436
562
|
"category": { "type": "string" },
|
|
437
563
|
"severity": { "type": "string" },
|
|
438
564
|
"summary": { "type": "string" },
|