@amaster.ai/employee-runtime-connector 0.1.13-beta.2 → 0.1.14
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
CHANGED
|
@@ -102,8 +102,10 @@ each authorized value through `browser_read_credential`. Desktop-delegated,
|
|
|
102
102
|
same-UID, and non-Pi runners must not advertise or execute this capability.
|
|
103
103
|
|
|
104
104
|
`browser_credential_auth_transaction_v1` remains build/runtime vocabulary for the
|
|
105
|
-
|
|
106
|
-
|
|
105
|
+
private-FD path and is advertised only when the sealed extension matches its pinned
|
|
106
|
+
digest. Pi Runtime owns the browser package and browser TCB version checks. The connector
|
|
107
|
+
loads only the sealed extension for these commands using Pi's explicit `--extension`
|
|
108
|
+
flag and disables ambient extension discovery. New browser-credential dispatches require
|
|
107
109
|
`browser_credential_env_read_v1`; they never treat the older capability as
|
|
108
110
|
equivalent. The retired `browser_credential_ref_fill_v1` claim is decode-only.
|
|
109
111
|
Commands carrying credential refs are routed only by their exact required
|
|
@@ -117,7 +119,7 @@ The publish workflow runs on pushes that change Connector package inputs. `maste
|
|
|
117
119
|
|
|
118
120
|
## Pi plugin ownership boundary
|
|
119
121
|
|
|
120
|
-
`pi-
|
|
122
|
+
The `pi-agent` repository owns plugin installation, dependency versions, package resolution, and build validation for `pi-cli-runtime`. The connector passes the Company browser profile through `AMASTER_BROWSER_SESSION_USER_DATA_DIR`; governed browser sessions use their managed profile instead. Do not add Pi package version or digest admission checks to Connector registration, heartbeat, or readiness. Credential capabilities check their Connector-owned runtime extension: the private transaction checks its sealed extension digest, while `browser_credential_env_read_v1` checks its extension entrypoint. An absent or unexpected extension must remove the corresponding capability before dispatch. Other plugin failures remain task execution evidence, not Connector admission decisions.
|
|
121
123
|
|
|
122
124
|
- `dist/amaster-runtime.mjs`: configuration, pairing, workspace, diagnostics, and daemon lifecycle CLI.
|
|
123
125
|
- `dist/amaster-runtime-daemon.mjs`: standalone daemon bundle for connector registration, heartbeat, command execution, and result ingestion.
|
|
@@ -241,10 +243,25 @@ CAS revision. Both modes use the same ownership manifest and byte-ingest path.
|
|
|
241
243
|
Pi JSON mode can also repeat a cumulative `message` snapshot beside each
|
|
242
244
|
incremental `message_update`. The daemon compacts only that redundant snapshot
|
|
243
245
|
from its retained parse/result buffer while preserving the delta, terminal
|
|
244
|
-
events, live logs, and tool-argument guard input.
|
|
245
|
-
`
|
|
246
|
-
|
|
247
|
-
|
|
246
|
+
events, live logs, and tool-argument guard input. For Pi stdout,
|
|
247
|
+
`AMASTER_EXECUTOR_MAX_OUTPUT_BYTES` (50 MiB by default) limits the compacted,
|
|
248
|
+
retained stream. A separate raw stdout safety ceiling is eight times that
|
|
249
|
+
limit, capped at 512 MiB; stderr and other executors still use the configured
|
|
250
|
+
raw-byte limit. Above a configured 512 MiB retained limit, the raw safety
|
|
251
|
+
ceiling can stop the process first. The command result's `outputFlood.basis`
|
|
252
|
+
distinguishes `retained` from `raw`, and telemetry reports both limits and byte counts.
|
|
253
|
+
The raw ceiling, timeout, memory limit, and tool-argument guard remain active
|
|
254
|
+
when Pi emits large redundant JSONL snapshots.
|
|
255
|
+
|
|
256
|
+
If a Pi assistant message ends at `length` with only thinking content and no
|
|
257
|
+
text or tool call, the daemon permits Pi's next generation so it can use its
|
|
258
|
+
built-in recovery when eligible. A second such message in the same run stops
|
|
259
|
+
the run; an unrecovered first message is classified when the process settles.
|
|
260
|
+
It returns `pi_reasoning_output_exhausted` with token counts and content block
|
|
261
|
+
types, never the thinking text. `outputTelemetry.piGenerationSummary` records
|
|
262
|
+
delta counts/bytes by type, the sum of completed assistant messages' output
|
|
263
|
+
tokens, and length-stop counts. These are diagnostic observations; use provider billing
|
|
264
|
+
records for authoritative usage.
|
|
248
265
|
|
|
249
266
|
## Pi terminal cleanup outcome
|
|
250
267
|
|
|
@@ -24,15 +24,9 @@ export const BUILD_SUPPORTED_CAPABILITIES = Object.freeze([
|
|
|
24
24
|
"mirrorx_initialization_completion_v1",
|
|
25
25
|
"native_session_checkpoint_v1",
|
|
26
26
|
"pi_web_public_search_v1",
|
|
27
|
-
"pi_web_public_fetch_v1",
|
|
28
27
|
]);
|
|
29
28
|
|
|
30
29
|
const DYNAMIC_READINESS = Object.freeze({
|
|
31
|
-
pi_web_public_fetch_v1: {
|
|
32
|
-
reasonCode: "pi_web_fetch_extension_unavailable",
|
|
33
|
-
ready: (input) => input.executors.some((executor) => executor.kind === "pi")
|
|
34
|
-
&& input.piWebFetchReady === true,
|
|
35
|
-
},
|
|
36
30
|
pi_web_public_search_v1: {
|
|
37
31
|
reasonCode: "pi_web_search_extension_unavailable",
|
|
38
32
|
ready: (input) => input.executors.some((executor) => executor.kind === "pi")
|
|
@@ -52,15 +46,8 @@ const DYNAMIC_READINESS = Object.freeze({
|
|
|
52
46
|
},
|
|
53
47
|
browser_credential_auth_transaction_v1: {
|
|
54
48
|
reasonCode: "browser_credential_auth_runtime_incomplete",
|
|
55
|
-
ready: (input) =>
|
|
56
|
-
|
|
57
|
-
return input.executors.some((executor) => executor.kind === "pi")
|
|
58
|
-
&& readiness?.privateChannel === true
|
|
59
|
-
&& readiness?.executorClient === true
|
|
60
|
-
&& readiness?.sealedGate === true
|
|
61
|
-
&& readiness?.atomicTransaction === true
|
|
62
|
-
&& readiness?.trustedProfileInjection === true;
|
|
63
|
-
},
|
|
49
|
+
ready: (input) => input.executors.some((executor) => executor.kind === "pi")
|
|
50
|
+
&& input.browserCredentialAuth?.extension === true,
|
|
64
51
|
},
|
|
65
52
|
native_session_checkpoint_v1: {
|
|
66
53
|
reasonCode: "managed_pi_checkpoint_required",
|