@amaster.ai/employee-runtime-connector 0.1.1-beta.46 → 0.1.1-beta.47

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.
@@ -2699,7 +2699,6 @@ export default function amasterEffectiveToolsAttestor(pi) {
2699
2699
 
2700
2700
  // src/amaster-runtime-daemon/pi-managed-mcp-profile.mjs
2701
2701
  var MANAGED_PI_MCP_TOOL_MODE = "proxy_only";
2702
- var MANAGED_PI_HYBRID_MCP_TOOL_MODE = "hybrid";
2703
2702
  var MANAGED_PI_DIRECT_TYPED_MCP_TOOL_MODE = "direct_typed";
2704
2703
  var MANAGED_PI_MCP_ARGS_NORMALIZATION = "json_string_control_characters_v1";
2705
2704
  var MANAGED_PI_MCP_ARGS_NORMALIZER_FILENAME = "amaster-mcp-args-normalizer.js";
@@ -2732,12 +2731,43 @@ function createManagedPiMcpProfileApi(options = {}) {
2732
2731
  "wiki_read_page",
2733
2732
  "wiki_list_pages"
2734
2733
  ]);
2735
- const HYBRID_DIRECT_TYPED_V1_TOOL_NAMES = /* @__PURE__ */ new Set([
2736
- "amaster.read_company_snapshot",
2737
- "amaster.read_governed_business_state",
2734
+ const FULL_DIRECT_TYPED_V1_BASE_TOOL_NAMES = /* @__PURE__ */ new Set([
2738
2735
  "runtime_action.describe",
2736
+ "runtime_action.prepare",
2737
+ "runtime_action.submit",
2738
+ "runtime_action.plan",
2739
+ "runtime_action.commit",
2740
+ "runtime_action.status",
2741
+ "amaster.read_company_snapshot",
2742
+ "amaster.read_issue",
2739
2743
  "amaster.read_issue_document",
2740
- "amaster.read_issue_evidence"
2744
+ "amaster.read_issue_delivery",
2745
+ "amaster.read_issue_evidence",
2746
+ "amaster.read_governed_business_state",
2747
+ "amaster.read_company_diagnosis",
2748
+ "amaster.publish_company_diagnosis_brief"
2749
+ ]);
2750
+ const FULL_DIRECT_TYPED_V1_WIKI_TOOL_NAMES = /* @__PURE__ */ new Set([
2751
+ "wiki_search",
2752
+ "wiki_read_page",
2753
+ "wiki_list_pages",
2754
+ "wiki_read_source",
2755
+ "wiki_write_page"
2756
+ ]);
2757
+ const FULL_DIRECT_TYPED_V1_CONNECTOR_TOOL_NAMES = /* @__PURE__ */ new Set([
2758
+ "connector.search_actions",
2759
+ "connector.get_action_guide",
2760
+ "connector.execute_action",
2761
+ "connector.admin.list_apps",
2762
+ "connector.admin.list_connections",
2763
+ "connector.admin.upsert_connection",
2764
+ "connector.admin.delete_connection",
2765
+ "connector.admin.validate_connection"
2766
+ ]);
2767
+ const FULL_DIRECT_TYPED_V1_TOOL_NAMES = /* @__PURE__ */ new Set([
2768
+ ...FULL_DIRECT_TYPED_V1_BASE_TOOL_NAMES,
2769
+ ...FULL_DIRECT_TYPED_V1_WIKI_TOOL_NAMES,
2770
+ ...FULL_DIRECT_TYPED_V1_CONNECTOR_TOOL_NAMES
2741
2771
  ]);
2742
2772
  const SOURCE_ACQUISITION_DIRECT_TYPED_V1_TOOL_NAMES = /* @__PURE__ */ new Set([
2743
2773
  "runtime_action.submit",
@@ -2976,12 +3006,18 @@ function createManagedPiMcpProfileApi(options = {}) {
2976
3006
  }
2977
3007
  const tools = Array.isArray(catalog.tools) ? catalog.tools.map(record6) : [];
2978
3008
  const declaredToolNames = new Set(tools.map((tool) => tool.name).filter((name) => typeof name === "string"));
2979
- const sourceAcquisitionCatalog = mcpToolMode === MANAGED_PI_DIRECT_TYPED_MCP_TOOL_MODE && tools.length === SOURCE_ACQUISITION_DIRECT_TYPED_V1_TOOL_NAMES.size && [...SOURCE_ACQUISITION_DIRECT_TYPED_V1_TOOL_NAMES].every((name) => declaredToolNames.has(name));
2980
- const admittedToolNames = mcpToolMode === MANAGED_PI_HYBRID_MCP_TOOL_MODE ? HYBRID_DIRECT_TYPED_V1_TOOL_NAMES : sourceAcquisitionCatalog ? SOURCE_ACQUISITION_DIRECT_TYPED_V1_TOOL_NAMES : /* @__PURE__ */ new Set([...DIRECT_TYPED_V1_TOOL_NAMES, ...DIAGNOSIS_WIKI_READ_DIRECT_TYPED_V1_TOOL_NAMES]);
2981
- const directTypedSizeValid = mcpToolMode !== MANAGED_PI_DIRECT_TYPED_MCP_TOOL_MODE || sourceAcquisitionCatalog || tools.length === DIRECT_TYPED_V1_TOOL_NAMES.size || tools.length === DIRECT_TYPED_V1_TOOL_NAMES.size + DIAGNOSIS_WIKI_READ_DIRECT_TYPED_V1_TOOL_NAMES.size;
2982
- if (!directTypedSizeValid || mcpToolMode === MANAGED_PI_HYBRID_MCP_TOOL_MODE && tools.length !== admittedToolNames.size) {
3009
+ const covers = (set) => [...set].every((name) => declaredToolNames.has(name));
3010
+ const countIn = (set) => tools.filter((tool) => set.has(tool.name)).length;
3011
+ const sourceAcquisitionCatalog = mcpToolMode === MANAGED_PI_DIRECT_TYPED_MCP_TOOL_MODE && tools.length === SOURCE_ACQUISITION_DIRECT_TYPED_V1_TOOL_NAMES.size && covers(SOURCE_ACQUISITION_DIRECT_TYPED_V1_TOOL_NAMES);
3012
+ const diagnosisWikiCount = countIn(DIAGNOSIS_WIKI_READ_DIRECT_TYPED_V1_TOOL_NAMES);
3013
+ const diagnosisCatalog = mcpToolMode === MANAGED_PI_DIRECT_TYPED_MCP_TOOL_MODE && !sourceAcquisitionCatalog && tools.length === DIRECT_TYPED_V1_TOOL_NAMES.size + diagnosisWikiCount && covers(DIRECT_TYPED_V1_TOOL_NAMES) && (diagnosisWikiCount === 0 || diagnosisWikiCount === DIAGNOSIS_WIKI_READ_DIRECT_TYPED_V1_TOOL_NAMES.size);
3014
+ const fullWikiCount = countIn(FULL_DIRECT_TYPED_V1_WIKI_TOOL_NAMES);
3015
+ const fullConnectorCount = countIn(FULL_DIRECT_TYPED_V1_CONNECTOR_TOOL_NAMES);
3016
+ const fullCatalog = mcpToolMode === MANAGED_PI_DIRECT_TYPED_MCP_TOOL_MODE && !sourceAcquisitionCatalog && !diagnosisCatalog && tools.length === FULL_DIRECT_TYPED_V1_BASE_TOOL_NAMES.size + fullWikiCount + fullConnectorCount && covers(FULL_DIRECT_TYPED_V1_BASE_TOOL_NAMES) && (fullWikiCount === 0 || fullWikiCount === FULL_DIRECT_TYPED_V1_WIKI_TOOL_NAMES.size) && (fullConnectorCount === 0 || fullConnectorCount === FULL_DIRECT_TYPED_V1_CONNECTOR_TOOL_NAMES.size) && tools.every((tool) => FULL_DIRECT_TYPED_V1_TOOL_NAMES.has(tool.name));
3017
+ if (mcpToolMode === MANAGED_PI_DIRECT_TYPED_MCP_TOOL_MODE && !sourceAcquisitionCatalog && !diagnosisCatalog && !fullCatalog) {
2983
3018
  throw new Error("pi_managed_mcp_invalid: direct tool catalog size mismatch");
2984
3019
  }
3020
+ const admittedToolNames = sourceAcquisitionCatalog ? SOURCE_ACQUISITION_DIRECT_TYPED_V1_TOOL_NAMES : diagnosisCatalog ? /* @__PURE__ */ new Set([...DIRECT_TYPED_V1_TOOL_NAMES, ...DIAGNOSIS_WIKI_READ_DIRECT_TYPED_V1_TOOL_NAMES]) : FULL_DIRECT_TYPED_V1_TOOL_NAMES;
2985
3021
  const names = /* @__PURE__ */ new Set();
2986
3022
  const exposedNames = /* @__PURE__ */ new Set();
2987
3023
  const normalized = tools.map((tool) => {
@@ -3010,9 +3046,6 @@ function createManagedPiMcpProfileApi(options = {}) {
3010
3046
  if (!(/* @__PURE__ */ new Set(["read", "write", "destructive"])).has(riskLevel)) {
3011
3047
  throw new Error(`pi_managed_mcp_invalid: direct tool risk level mismatch for ${name}`);
3012
3048
  }
3013
- if (mcpToolMode === MANAGED_PI_HYBRID_MCP_TOOL_MODE && riskLevel !== "read") {
3014
- throw new Error(`pi_managed_mcp_invalid: hybrid direct tool must be read-only for ${name}`);
3015
- }
3016
3049
  return {
3017
3050
  name,
3018
3051
  exposedName,
@@ -3024,16 +3057,6 @@ function createManagedPiMcpProfileApi(options = {}) {
3024
3057
  effectiveSchemaHash: stablePiToolSchemaHash(inputSchema, { adapterNormalized: true })
3025
3058
  };
3026
3059
  });
3027
- if (mcpToolMode === MANAGED_PI_DIRECT_TYPED_MCP_TOOL_MODE) {
3028
- const requiredToolNames = sourceAcquisitionCatalog ? SOURCE_ACQUISITION_DIRECT_TYPED_V1_TOOL_NAMES : DIRECT_TYPED_V1_TOOL_NAMES;
3029
- for (const name of requiredToolNames) {
3030
- if (!names.has(name)) throw new Error("pi_managed_mcp_invalid: direct tool catalog name mismatch");
3031
- }
3032
- const wikiReadCount = sourceAcquisitionCatalog ? 0 : [...DIAGNOSIS_WIKI_READ_DIRECT_TYPED_V1_TOOL_NAMES].filter((name) => names.has(name)).length;
3033
- if (wikiReadCount !== 0 && wikiReadCount !== DIAGNOSIS_WIKI_READ_DIRECT_TYPED_V1_TOOL_NAMES.size) {
3034
- throw new Error("pi_managed_mcp_invalid: diagnosis wiki read catalog incomplete");
3035
- }
3036
- }
3037
3060
  const setHash = stablePiDirectCatalogSetHash(normalized.map((tool) => ({
3038
3061
  name: tool.name,
3039
3062
  exposedName: tool.exposedName,
@@ -3120,7 +3143,7 @@ function createManagedPiMcpProfileApi(options = {}) {
3120
3143
  }
3121
3144
  if ((runtimeAuth.issueId ?? null) !== (headers["x-amaster-issue-id"] ?? null)) throw new Error("pi_managed_mcp_invalid: issue authority mismatch");
3122
3145
  const mcpToolMode = gateway.mcpToolMode ?? MANAGED_PI_MCP_TOOL_MODE;
3123
- if (mcpToolMode !== MANAGED_PI_MCP_TOOL_MODE && mcpToolMode !== MANAGED_PI_HYBRID_MCP_TOOL_MODE && mcpToolMode !== MANAGED_PI_DIRECT_TYPED_MCP_TOOL_MODE) {
3146
+ if (mcpToolMode !== MANAGED_PI_MCP_TOOL_MODE && mcpToolMode !== MANAGED_PI_DIRECT_TYPED_MCP_TOOL_MODE) {
3124
3147
  throw new Error("pi_managed_mcp_invalid: unsupported managed Pi MCP tool mode");
3125
3148
  }
3126
3149
  const directCatalog = mcpToolMode !== MANAGED_PI_MCP_TOOL_MODE ? validateDirectCatalog(gateway, mcpToolMode) : null;
@@ -3711,7 +3734,7 @@ ${result3.stderr ?? ""}`, "Pi", MINIMUM_PI_VERSION);
3711
3734
  name: tool.exposedName,
3712
3735
  schemaHash: tool.effectiveSchemaHash
3713
3736
  }))),
3714
- proxyMode: mcpToolMode === MANAGED_PI_HYBRID_MCP_TOOL_MODE ? "required" : "forbidden",
3737
+ proxyMode: "forbidden",
3715
3738
  attestorSourceSha256,
3716
3739
  configSha256: sha2562(readFileSync3(configPath)),
3717
3740
  cacheSha256
@@ -3833,9 +3856,6 @@ ${result3.stderr ?? ""}`, "Pi", MINIMUM_PI_VERSION);
3833
3856
  function prepareDelegatedPiMcpProfile2(input) {
3834
3857
  assertInvocationIsolation2(input);
3835
3858
  const { gateway, gatewayUrl, sessionToken, headers, runId, mcpToolMode, directCatalog } = validateAuthority2(input);
3836
- if (mcpToolMode === MANAGED_PI_HYBRID_MCP_TOOL_MODE) {
3837
- throw new Error("pi_delegated_mcp_hybrid_unsupported: managed effective-tool attestation is required");
3838
- }
3839
3859
  const runDir = resolve3(nonEmpty2(input.runDir, "runDir"));
3840
3860
  const cwd = resolve3(nonEmpty2(input.cwd, "cwd"));
3841
3861
  if (!within2(cwd, runDir)) throw new Error("pi_delegated_mcp_owner_mismatch: cwd is outside the managed run");
@@ -4905,6 +4925,11 @@ function continuationText(context) {
4905
4925
  if (!body) return "";
4906
4926
  return [readString(summary.title), body].filter(Boolean).join("\n");
4907
4927
  }
4928
+ var CONTINUATION_SUMMARY_TITLE_ALLOWLIST = /* @__PURE__ */ new Set(["Continuation Summary", "Predecessor Execution Summary"]);
4929
+ function continuationSectionTitle(context) {
4930
+ const title = readString(asRecord(context.paperclipContinuationSummary).title);
4931
+ return title && CONTINUATION_SUMMARY_TITLE_ALLOWLIST.has(title) ? title : "Continuation Summary";
4932
+ }
4908
4933
  function taskAcceptanceContractError(code, message) {
4909
4934
  const error = new Error(message);
4910
4935
  error.code = code;
@@ -5421,10 +5446,10 @@ function wikiAccessRuleLine(input) {
5421
5446
  const tools = input.hasGovernedMcp === true && access.tools === true;
5422
5447
  const treePath = readString(access.treePath);
5423
5448
  if (tools && treePath) {
5424
- return `- Company wiki access in this run: the governed tools wiki_search / wiki_read_page / wiki_list_pages / wiki_read_source / wiki_write_page via the amaster MCP, and the wiki tree at ${treePath} (read wiki/index.md there first).`;
5449
+ return `- Company wiki access in this run: the wiki tools wiki_search / wiki_read_page / wiki_list_pages / wiki_read_source / wiki_write_page via the amaster MCP, and the wiki tree at ${treePath} (read wiki/index.md there first).`;
5425
5450
  }
5426
5451
  if (tools) {
5427
- return "- Company wiki access in this run: the governed tools wiki_search / wiki_read_page / wiki_list_pages / wiki_read_source / wiki_write_page via the amaster MCP. Use them for governed lookup and durable Wiki updates; Company Knowledge operations must use the exact operationId and sourceRefs named by the issue.";
5452
+ return "- Company wiki access in this run: the wiki tools wiki_search / wiki_read_page / wiki_list_pages / wiki_read_source / wiki_write_page via the amaster MCP. Use them for targeted lookup and durable Wiki updates; Company Knowledge operations must use the exact operationId and sourceRefs named by the issue.";
5428
5453
  }
5429
5454
  if (treePath) {
5430
5455
  return `- Company wiki access in this run: the wiki tree at ${treePath}. Read wiki/index.md first (every page listed with a one-line summary), then open the specific pages you need; wiki_* tools are not available in this run.`;
@@ -5542,7 +5567,7 @@ function fixedRules(input, includeIssueLine) {
5542
5567
  wikiAccessRuleLine(input),
5543
5568
  "- Runtime Artifact lineage fields sourceWorkProductId and sourceWorkProductIds accept only current artifact work product ids returned as result.effectResult.workProductId by a succeeded upload_artifact action. Never pass a documentId or revisionId as artifact lineage.",
5544
5569
  "- When all inputs are issue documents and there is no source artifact work product, persist the derived result with upsert_document and do not call upload_artifact for a derived or review artifact.",
5545
- input.hasGovernedMcp && input.executorKind === "pi" && input.managedMcpToolMode === "proxy_only" ? "- For proxy-only Pi MCP writes, put the complete target argument object directly in actual `mcp` string `args` as strict JSON; escape quotes, backslashes, and control characters. Do not stage or print tool calls. If inner JSON syntax fails, correct it once without changing values; never repeat a possibly accepted call. After `runtime_action.describe`, emit the write." : input.hasGovernedMcp && input.executorKind === "pi" && input.managedMcpToolMode === "hybrid" ? "- For hybrid Pi MCP writes, call direct `runtime_action_describe`, then put long-tail write arguments in `mcp.args` as strict JSON. Never stage, print, or repeat a possibly accepted call." : ""
5570
+ input.hasGovernedMcp && input.executorKind === "pi" && input.managedMcpToolMode === "proxy_only" ? "- For proxy-only Pi MCP writes, put the complete target argument object directly in actual `mcp` string `args` as strict JSON; escape quotes, backslashes, and control characters. Do not stage or print tool calls. If inner JSON syntax fails, correct it once without changing values; never repeat a possibly accepted call. After `runtime_action.describe`, emit the write." : ""
5546
5571
  ].filter(Boolean).join("\n");
5547
5572
  }
5548
5573
  function approvalContinuationText(input) {
@@ -5666,14 +5691,14 @@ function continuationRuntimeActionEnvelope(context) {
5666
5691
  return envelope;
5667
5692
  }
5668
5693
  function managedDirectToolName(input, canonicalName) {
5669
- if (input.managedMcpToolMode !== "direct_typed" && input.managedMcpToolMode !== "hybrid") return null;
5694
+ if (input.managedMcpToolMode !== "direct_typed") return null;
5670
5695
  const catalog = asRecord(input.managedMcpToolCatalog);
5671
5696
  const tools = Array.isArray(catalog.tools) ? catalog.tools.map(asRecord) : [];
5672
5697
  const match = tools.find((tool) => readString(tool.name) === canonicalName);
5673
5698
  return readString(match?.exposedName) ?? null;
5674
5699
  }
5675
5700
  function managedPiMcpProxyAvailable(input) {
5676
- return input.managedMcpToolMode === "proxy_only" || input.managedMcpToolMode === "hybrid";
5701
+ return input.managedMcpToolMode === "proxy_only";
5677
5702
  }
5678
5703
  function managedPiMcpProxyToolName(canonicalName) {
5679
5704
  const name = readString(canonicalName);
@@ -5701,7 +5726,7 @@ A standalone continuation action is unavailable in this repair lane. First persi
5701
5726
  }
5702
5727
  if (!input.hasGovernedMcp) {
5703
5728
  return `${heading}
5704
- Runtime Action continuation is unavailable: managed governed MCP capability is missing. Do not guess a tool call.`;
5729
+ Runtime Action continuation is unavailable: managed MCP capability is missing. Do not guess a tool call.`;
5705
5730
  }
5706
5731
  const envelope = continuationRuntimeActionEnvelope(asRecord(input.context));
5707
5732
  if (!envelope) {
@@ -5987,15 +6012,15 @@ function piMcpUsageText(input) {
5987
6012
  ].join("\n");
5988
6013
  }
5989
6014
  function piDirectTypedToolsText(input) {
5990
- if (!input.hasGovernedMcp || input.executorKind !== "pi" || input.managedMcpToolMode !== "direct_typed" && input.managedMcpToolMode !== "hybrid") return "";
6015
+ if (!input.hasGovernedMcp || input.executorKind !== "pi" || input.managedMcpToolMode !== "direct_typed") return "";
5991
6016
  const catalog = asRecord(input.managedMcpToolCatalog);
5992
6017
  const tools = (Array.isArray(catalog.tools) ? catalog.tools : []).map(asRecord).map((tool) => ({ name: readString(tool.exposedName), description: readString(tool.description) })).filter((tool) => tool.name);
5993
6018
  if (tools.length === 0) {
5994
- return "Direct typed governed tools are unavailable because the run catalog snapshot is empty. Do not guess a proxy or tool name.";
6019
+ return "Direct typed tools are unavailable because the run catalog snapshot is empty. Do not guess a proxy or tool name.";
5995
6020
  }
5996
6021
  return [
5997
- input.managedMcpToolMode === "hybrid" ? "Use the attested direct typed tools already present in the provider tool definitions with object arguments; do not duplicate them through the `mcp` proxy." : "Use only the attested direct typed tools already present in the provider tool definitions. Call their exact names with object arguments; do not call the `mcp` proxy and do not stringify an inner argument envelope.",
5998
- input.managedMcpToolMode === "hybrid" ? "For a canonical tool absent from those definitions, first use the direct typed `runtime_action_describe`, then call the single managed `mcp` proxy with stringified inner `args`. Never infer an alias, use REST, or bypass the governed Gateway." : "A tool absent from the provider tool definitions is unavailable in this run. Do not infer a namespace or fall back to REST/bare MCP."
6022
+ "Use only the attested direct typed tools already present in the provider tool definitions. Call their exact names with object arguments; do not call the `mcp` proxy and do not stringify an inner argument envelope.",
6023
+ "A tool absent from the provider tool definitions is unavailable in this run. Do not infer a namespace or fall back to REST/bare MCP."
5999
6024
  ].join("\n");
6000
6025
  }
6001
6026
  function sourceAcquisitionTaskSection(input) {
@@ -6138,7 +6163,7 @@ var CONTEXT_AVAILABILITY_SECTION_TITLES = Object.freeze({
6138
6163
  runtime_decomposition_requirement: "Required Task Decomposition",
6139
6164
  task_context_authority: "Task Context Authority",
6140
6165
  verified_company_context: "Verified Company Context",
6141
- pi_mcp_usage: "Pi Governed MCP Usage",
6166
+ pi_mcp_usage: "Pi MCP Usage",
6142
6167
  governed_reads: "Governed External Reads",
6143
6168
  optional_task_wiki_context: "Optional Company Wiki Context",
6144
6169
  agent_instructions: "Agent Instructions",
@@ -6375,7 +6400,7 @@ ${resolvedDependencies.details.content}` : ""
6375
6400
  { name: "task", title: "Task Context", priority: 90, sourceRef: taskSourceRefs, originalContent: [taskText, taskCommentRefGuidance(input, taskText)].filter(Boolean).join("\n"), content: includeTask ? [taskText, taskCommentRefGuidance(input, taskText)].filter(Boolean).join("\n") : "", truncationReason: includeTask ? null : "mode_selection" },
6376
6401
  ...taskAcceptanceContract ? [{ name: "task_acceptance_contract", title: "Task Acceptance Contract", priority: 100, ...taskAcceptanceContract }] : [],
6377
6402
  ...governedBusinessState ? [{ name: "governed_business_state", title: "Governed Business State", priority: 99, ...governedBusinessState }] : [],
6378
- { name: "continuation_summary", title: "Continuation Summary", priority: 97, sourceRef: readString(asRecord(context.paperclipContinuationSummary).key) ?? `issue:${input.issueId ?? "unknown"}`, observedAt: readString(asRecord(context.paperclipContinuationSummary).updatedAt), originalContent: continuationSummary, content: mode === "cold" ? "" : continuationSummary, truncationReason: mode === "cold" ? "mode_selection" : null },
6403
+ { name: "continuation_summary", title: continuationSectionTitle(context), priority: 97, sourceRef: readString(asRecord(context.paperclipContinuationSummary).key) ?? `issue:${input.issueId ?? "unknown"}`, observedAt: readString(asRecord(context.paperclipContinuationSummary).updatedAt), originalContent: continuationSummary, content: mode === "cold" ? "" : continuationSummary, truncationReason: mode === "cold" ? "mode_selection" : null },
6379
6404
  ...resolvedDependencyContent ? [{
6380
6405
  name: "resolved_dependencies",
6381
6406
  title: "Resolved Dependency Outputs",
@@ -6392,7 +6417,7 @@ ${resolvedDependencies.details.content}` : ""
6392
6417
  ...verifiedCompanyContext.content ? [{ name: "verified_company_context", title: "Verified Company Context", priority: 96, sourceRef: verifiedCompanyContext.sourceRef, observedAt: verifiedCompanyContext.observedAt, freshness: { kind: "run_snapshot" }, content: verifiedCompanyContext.content }] : [],
6393
6418
  ...piMcpUsage ? [{
6394
6419
  name: "pi_mcp_usage",
6395
- title: "Pi Governed MCP Usage",
6420
+ title: "Pi MCP Usage",
6396
6421
  priority: 96,
6397
6422
  sourceRef: "amaster_governed_mcp_proxy_contract",
6398
6423
  content: piMcpUsage
@@ -10097,7 +10122,7 @@ var source_acquisition_compatibility_default = {
10097
10122
  };
10098
10123
 
10099
10124
  // src/amaster-runtime-daemon.mjs
10100
- var CONNECTOR_VERSION = "0.1.1-beta.46";
10125
+ var CONNECTOR_VERSION = "0.1.1-beta.47";
10101
10126
  var CONNECTOR_CONTRACT_VERSION = "2026-06-04.v1";
10102
10127
  var SOURCE_ACQUISITION_CAPABILITY = source_acquisition_compatibility_default.profileVersion;
10103
10128
  var SOURCE_ACQUISITION_PROFILE_VERSION = source_acquisition_compatibility_default.profileVersion;
@@ -6,7 +6,7 @@ import { basename, dirname, join, resolve } from "node:path";
6
6
  import { homedir, hostname } from "node:os";
7
7
  import { fileURLToPath } from "node:url";
8
8
 
9
- const CONNECTOR_VERSION = "0.1.1-beta.46";
9
+ const CONNECTOR_VERSION = "0.1.1-beta.47";
10
10
 
11
11
  const CAPABILITIES = [
12
12
  "remote_registration",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@amaster.ai/employee-runtime-connector",
3
- "version": "0.1.1-beta.46",
3
+ "version": "0.1.1-beta.47",
4
4
  "description": "MirrorX runtime connector CLI and daemon",
5
5
  "license": "MIT",
6
6
  "type": "module",