@sema-agent/core 7.19.0 → 7.20.1
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 +199 -2
- package/dist/agents/subagent.js +12 -20
- package/dist/agents/teacher.js +2 -5
- package/dist/agents/verify.js +21 -10
- package/dist/brain/anthropic.js +3 -1
- package/dist/brain/open-responses.js +4 -2
- package/dist/brain/openai.js +3 -1
- package/dist/brain/stream-engine.d.ts +4 -0
- package/dist/brain/stream-engine.js +4 -0
- package/dist/core/auto-mode.d.ts +37 -18
- package/dist/core/auto-mode.js +1 -1
- package/dist/core/child-clamp-seats.d.ts +79 -0
- package/dist/core/child-clamp-seats.js +29 -0
- package/dist/core/engine-notice.d.ts +76 -49
- package/dist/core/fs-write-gate-policy.d.ts +17 -9
- package/dist/core/fs-write-gate-policy.js +51 -4
- package/dist/core/gate-bounded-await.d.ts +38 -0
- package/dist/core/gate-bounded-await.js +53 -0
- package/dist/core/gate-fold.js +16 -48
- package/dist/core/gate-lanes.js +11 -3
- package/dist/core/gate-outcome.d.ts +9 -6
- package/dist/core/governance-codes.d.ts +16 -1
- package/dist/core/governance-codes.js +14 -0
- package/dist/core/hooks.d.ts +8 -8
- package/dist/core/memory-engine/engine.d.ts +14 -9
- package/dist/core/memory-engine/engine.js +21 -8
- package/dist/core/memory-engine/layout.d.ts +31 -0
- package/dist/core/memory-engine/layout.js +68 -3
- package/dist/core/memory-engine/tools.js +6 -0
- package/dist/core/memory-engine/types.d.ts +24 -0
- package/dist/core/memory.d.ts +19 -0
- package/dist/core/memory.js +12 -0
- package/dist/core/remote-env.d.ts +32 -0
- package/dist/core/remote-env.js +4 -1
- package/dist/core/runner/advertised-writable-dirs.d.ts +59 -1
- package/dist/core/runner/advertised-writable-dirs.js +51 -3
- package/dist/core/runner/announce-once-ledger.d.ts +15 -0
- package/dist/core/runner/announce-once-ledger.js +8 -0
- package/dist/core/runner/classifier-ladder.d.ts +5 -0
- package/dist/core/runner/classifier-ladder.js +13 -2
- package/dist/core/runner/contracts.d.ts +44 -1
- package/dist/core/runner/denial-limit-arms.d.ts +14 -1
- package/dist/core/runner/denial-limit-arms.js +5 -4
- package/dist/core/runner/env-capability-census.d.ts +30 -0
- package/dist/core/runner/env-capability-census.js +38 -0
- package/dist/core/runner/forward-sink.d.ts +32 -0
- package/dist/core/runner/forward-sink.js +41 -0
- package/dist/core/runner/gate-exit.d.ts +4 -0
- package/dist/core/runner/gate-exit.js +4 -1
- package/dist/core/runner/git-status-frame.d.ts +0 -9
- package/dist/core/runner/listing-fold.d.ts +57 -0
- package/dist/core/runner/listing-fold.js +75 -0
- package/dist/core/runner/prepare-execution-env.d.ts +1 -1
- package/dist/core/runner/prepare-execution-env.js +2 -0
- package/dist/core/runner/prepare-gate-stations.d.ts +6 -0
- package/dist/core/runner/prepare-gate-stations.js +1 -3
- package/dist/core/runner/prepare-hands-readface.d.ts +4 -0
- package/dist/core/runner/prepare-hands-readface.js +3 -5
- package/dist/core/runner/prepare-listings.d.ts +3 -0
- package/dist/core/runner/prepare-listings.js +4 -2
- package/dist/core/runner/prepare-memory.js +7 -1
- package/dist/core/runner/prepare-policy-chain.js +5 -5
- package/dist/core/runner/prepare-prompt-inputs.d.ts +2 -2
- package/dist/core/runner/prepare-run-refs.d.ts +4 -2
- package/dist/core/runner/prepare-run-refs.js +5 -4
- package/dist/core/runner/prepare-task.js +8 -6
- package/dist/core/runner/prepare-wiring-manifest.d.ts +8 -1
- package/dist/core/runner/prepare-wiring-manifest.js +5 -2
- package/dist/core/runner/run-clock-and-content.js +3 -7
- package/dist/core/runner/run-harness-handlers.js +10 -10
- package/dist/core/runner/run-leg.js +28 -19
- package/dist/core/runner/run-settle-and-teardown.js +2 -5
- package/dist/core/runner/run-turn-boundary.js +44 -33
- package/dist/core/runner/runtask.js +2 -1
- package/dist/core/runner/synthetic-tools.d.ts +13 -39
- package/dist/core/runner/synthetic-tools.js +15 -59
- package/dist/core/runner/task-root-canonical.d.ts +45 -0
- package/dist/core/runner/task-root-canonical.js +18 -0
- package/dist/core/runner/turn-attachments.d.ts +125 -49
- package/dist/core/runner/turn-attachments.js +124 -66
- package/dist/core/runner/write-protection-station.d.ts +59 -0
- package/dist/core/runner/write-protection-station.js +32 -0
- package/dist/core/safe-notify.d.ts +5 -0
- package/dist/core/safe-notify.js +24 -2
- package/dist/core/sensitive-path-policy.d.ts +53 -27
- package/dist/core/sensitive-path-policy.js +16 -26
- package/dist/core/skill-listing-budget.d.ts +34 -40
- package/dist/core/skill-listing-budget.js +25 -26
- package/dist/core/skills-directory.js +17 -10
- package/dist/core/task-registry.js +2 -1
- package/dist/core/task-spec.d.ts +8 -7
- package/dist/core/tool-policy.d.ts +12 -1
- package/dist/core/tool-policy.js +39 -25
- package/dist/core/wiring-manifest.d.ts +31 -0
- package/dist/core/wiring-manifest.js +1 -0
- package/dist/core/write-protect.d.ts +124 -18
- package/dist/core/write-protect.js +91 -34
- package/dist/index.d.ts +6 -5
- package/dist/index.js +6 -5
- package/dist/orchestration/workflow-primitives.js +10 -20
- package/dist/stores/file/memory-store.d.ts +5 -2
- package/dist/stores/file/memory-store.js +8 -4
- package/dist/tools/fs/bash-readonly-classifier.d.ts +13 -2
- package/dist/tools/fs/bash-readonly-classifier.js +318 -36
- package/dist/tools/fs/fs-bash.d.ts +1 -1
- package/dist/tools/fs/fs-bash.js +12 -25
- package/dist/tools/fs/fs-shared.d.ts +22 -0
- package/dist/tools/fs/fs-shared.js +30 -0
- package/dist/tools/fs/index.d.ts +1 -1
- package/dist/tools/fs/index.js +1 -1
- package/package.json +2 -1
- package/test/export-surface.snapshot.json +25 -3
- package/wire-changes/core@7.20.0.json +568 -0
- package/wire-changes/core@7.20.1.json +183 -0
package/dist/tools/fs/fs-bash.js
CHANGED
|
@@ -9,11 +9,11 @@ import { hasBackgroundShell } from "../../core/background-shell.js";
|
|
|
9
9
|
import { delimitUntrusted } from "../../core/untrusted-text.js";
|
|
10
10
|
import { MCP_IMAGE_MAX_BASE64 } from "../../core/mcp.js";
|
|
11
11
|
import { imageMagicMatches, normalizeAbsPathLexically, withinAnyRoot } from "./safety.js";
|
|
12
|
-
import { boundaryIsTheSandbox, hasDestroy, isIsolated } from "../../core/remote-env.js";
|
|
12
|
+
import { boundaryIsTheSandbox, canonicalPathIsAuthoritative, hasDestroy, isIsolated } from "../../core/remote-env.js";
|
|
13
13
|
import { ghRateLimitHint } from "./gh-rate-limit.js";
|
|
14
|
-
import { resolveBashTimeoutCaps, bashTimeoutCapsSec, bashTimeoutArgRefusal, bashTimeoutParamDescription, envErrorDetail, bashMaxOutputChars, clipShellOutput, writeShellOverflowFile, createShellOverflowSpoolFence, shellRecoveryHint, CWD_SENTINEL, BASH_READONLY_CONFINEMENT_NOTE, } from "./fs-shared.js";
|
|
14
|
+
import { resolveBashTimeoutCaps, bashTimeoutCapsSec, bashTimeoutArgRefusal, bashTimeoutParamDescription, envErrorDetail, bashMaxOutputChars, clipShellOutput, writeShellOverflowFile, createShellOverflowSpoolFence, shellRecoveryHint, CWD_SENTINEL, stripCwdSentinel, BASH_READONLY_CONFINEMENT_NOTE, } from "./fs-shared.js";
|
|
15
15
|
import { PROBE_CAUSE_PATH_MAX, inlineUntrusted } from "../../core/untrusted-text.js";
|
|
16
|
-
import {
|
|
16
|
+
import { bashClassifyDefaultAllow, BASH_READONLY_DEFAULT_ALLOW, coarseReadonlyCheck, classifyBoundedReadonlyPollLoopDetailed, classifyCompoundReadonlyDetailed, classifyOutOfRootReadGate, refusedCommandMayRead, classifySimpleCommandReadBoundary, NOT_AUTO_ALLOWED, } from "./bash-readonly-classifier.js";
|
|
17
17
|
import { toolFace } from "../../core/tool-catalog-entries.js";
|
|
18
18
|
const RECURSIVE_CAUSE_MAX_PATHS = 3;
|
|
19
19
|
const RECURSIVE_READ_CAUSE_CODE = "shell.recursive_read_unbounded";
|
|
@@ -25,7 +25,7 @@ function operandFamily(paths) {
|
|
|
25
25
|
};
|
|
26
26
|
}
|
|
27
27
|
export function bashReversibilityProbe(allow, boundary) {
|
|
28
|
-
const allowSet = new Set(allow ??
|
|
28
|
+
const allowSet = new Set(allow ?? bashClassifyDefaultAllow());
|
|
29
29
|
return (args) => {
|
|
30
30
|
const command = shellCommandOf(args);
|
|
31
31
|
if (command === undefined)
|
|
@@ -109,7 +109,7 @@ function recursiveReadCause(detailed) {
|
|
|
109
109
|
};
|
|
110
110
|
}
|
|
111
111
|
export function bashReadBoundaryProbe(boundary) {
|
|
112
|
-
const allowSet = new Set(
|
|
112
|
+
const allowSet = new Set(bashClassifyDefaultAllow());
|
|
113
113
|
return (args) => {
|
|
114
114
|
const command = shellCommandOf(args);
|
|
115
115
|
if (command === undefined)
|
|
@@ -402,23 +402,6 @@ function createEpilogueFilter(marker) {
|
|
|
402
402
|
return out + buf;
|
|
403
403
|
};
|
|
404
404
|
}
|
|
405
|
-
function readCwdEpilogue(stderr, marker) {
|
|
406
|
-
let out = "";
|
|
407
|
-
let rest = stderr;
|
|
408
|
-
let cwd;
|
|
409
|
-
for (;;) {
|
|
410
|
-
const open = rest.indexOf(marker);
|
|
411
|
-
if (open === -1)
|
|
412
|
-
break;
|
|
413
|
-
const close = rest.indexOf(marker, open + marker.length);
|
|
414
|
-
if (close === -1)
|
|
415
|
-
break;
|
|
416
|
-
out += rest.slice(0, open);
|
|
417
|
-
cwd = rest.slice(open + marker.length, close);
|
|
418
|
-
rest = rest.slice(close + marker.length);
|
|
419
|
-
}
|
|
420
|
-
return { stderr: out + rest, cwd };
|
|
421
|
-
}
|
|
422
405
|
function describeSafely(sink, body) {
|
|
423
406
|
if (sink === undefined)
|
|
424
407
|
return;
|
|
@@ -582,7 +565,7 @@ async function runShell(env, cwd, toolName, command, timeoutSec, caps, signal, c
|
|
|
582
565
|
let { stderr } = res.value;
|
|
583
566
|
const { stdout, exitCode } = res.value;
|
|
584
567
|
if (cwdRef) {
|
|
585
|
-
const epilogue =
|
|
568
|
+
const epilogue = stripCwdSentinel(stderr, cwdMarker);
|
|
586
569
|
stderr = epilogue.stderr;
|
|
587
570
|
if (epilogue.cwd !== undefined) {
|
|
588
571
|
const captured = epilogue.cwd.trim();
|
|
@@ -736,7 +719,7 @@ export function createBashTool(env, rootCanonical, coAuthor = false, cwdRef = {
|
|
|
736
719
|
const bgRetained = hasBackgroundShell(env) && env.backgroundCapabilities.retainBackgroundProcesses === true;
|
|
737
720
|
const bgSessionScoped = taskOpts.sessionId !== undefined && taskOpts.taskRegistry !== undefined;
|
|
738
721
|
const bgEnvIsolatedOwned = hasDestroy(env) && isIsolated(env);
|
|
739
|
-
const recheckReaders = new Set(
|
|
722
|
+
const recheckReaders = new Set(bashClassifyDefaultAllow());
|
|
740
723
|
let canonicalForRoots;
|
|
741
724
|
const canonicalBoundaryFor = (roots) => {
|
|
742
725
|
const key = roots.join("\u0000");
|
|
@@ -1070,6 +1053,7 @@ function pathSegmentsFrom(p, from) {
|
|
|
1070
1053
|
}
|
|
1071
1054
|
function createCanonicalReadBoundary(env, readRoots) {
|
|
1072
1055
|
const lexicalOnly = boundaryIsTheSandbox(env);
|
|
1056
|
+
const resolverIsAuthoritative = canonicalPathIsAuthoritative(env);
|
|
1073
1057
|
let rootsOnce;
|
|
1074
1058
|
const canonicalRoots = async (signal) => {
|
|
1075
1059
|
rootsOnce ??= (async () => {
|
|
@@ -1229,8 +1213,11 @@ function createCanonicalReadBoundary(env, readRoots) {
|
|
|
1229
1213
|
let unresolvable;
|
|
1230
1214
|
const judge = async (p) => {
|
|
1231
1215
|
const real = await resolve(p, signal);
|
|
1232
|
-
if (real === undefined)
|
|
1216
|
+
if (real === undefined) {
|
|
1217
|
+
if (resolverIsAuthoritative)
|
|
1218
|
+
unresolvable ??= `"${p}" cannot be resolved to verify where it reads`;
|
|
1233
1219
|
return;
|
|
1220
|
+
}
|
|
1234
1221
|
if (!real.exact && real.missing !== true) {
|
|
1235
1222
|
unresolvable ??= `"${p}" cannot be resolved to verify where it reads`;
|
|
1236
1223
|
return;
|
|
@@ -361,6 +361,28 @@ export declare function shellRecoveryHint(path: string, readOnly: boolean | unde
|
|
|
361
361
|
* (NOT NotebookEdit — CC ships it without the trailer). */
|
|
362
362
|
export declare const FILE_STATE_TRAILER = " (file state is current in your context \u2014 no need to Read it back)";
|
|
363
363
|
export declare const CWD_SENTINEL = "__cc_cwd_9f2c1b__";
|
|
364
|
+
/**
|
|
365
|
+
* Take the engine's own cwd epilogue out of a finished stderr, and report the working directory the
|
|
366
|
+
* command left behind (the payload of the LAST span).
|
|
367
|
+
*
|
|
368
|
+
* EVERY span, and the LAST one — not the first, and not just one. A command that turns on shell tracing
|
|
369
|
+
* produces more than one (the shell echoes the epilogue's own source, marker and all, before running
|
|
370
|
+
* it), and under a one-pair rule the FIRST pair was that echo, whose payload is the unexpanded
|
|
371
|
+
* `' "$(pwd)" '`; a `cd` that plainly worked was then dropped while the real record stayed in the stderr
|
|
372
|
+
* a person reads. An opener with no close is NOT ours to eat — the command's own text is left exactly
|
|
373
|
+
* as it arrived.
|
|
374
|
+
*
|
|
375
|
+
* TWO CALLERS, ONE RULE, which is why the marker is optional. The foreground result path KNOWS the
|
|
376
|
+
* marker it minted and passes it (exact, unambiguous). A backgrounded command's spool is assembled by a
|
|
377
|
+
* different lane entirely — the shell row outlives the run that launched it and never had the marker —
|
|
378
|
+
* so it passes none and the marker is recovered per span from the sentinel plus its hex suffix. Before
|
|
379
|
+
* this was shared, only the foreground path stripped, and the completion notification handed a person
|
|
380
|
+
* the raw internal marker with the directory inside it.
|
|
381
|
+
*/
|
|
382
|
+
export declare function stripCwdSentinel(stderr: string, marker?: string): {
|
|
383
|
+
stderr: string;
|
|
384
|
+
cwd: string | undefined;
|
|
385
|
+
};
|
|
364
386
|
/** Convert a model-supplied millisecond timeout to our internal seconds, clamped. Exported for the
|
|
365
387
|
* cc-parity unit (model sees ms, internal stays seconds — no ×1000 error).
|
|
366
388
|
* ⚠️ This returns the EFFECTIVE budget, not the request — capping at a call site destroys the
|
|
@@ -247,6 +247,36 @@ export function shellRecoveryHint(path, readOnly) {
|
|
|
247
247
|
}
|
|
248
248
|
export const FILE_STATE_TRAILER = " (file state is current in your context — no need to Read it back)";
|
|
249
249
|
export const CWD_SENTINEL = "__cc_cwd_9f2c1b__";
|
|
250
|
+
const CWD_SENTINEL_SUFFIX_CHARS = 16;
|
|
251
|
+
function cwdMarkerAt(text, open) {
|
|
252
|
+
const after = open + CWD_SENTINEL.length;
|
|
253
|
+
const suffix = /^[0-9a-f]{16}/.exec(text.slice(after, after + CWD_SENTINEL_SUFFIX_CHARS));
|
|
254
|
+
return suffix === null ? undefined : CWD_SENTINEL + suffix[0];
|
|
255
|
+
}
|
|
256
|
+
export function stripCwdSentinel(stderr, marker) {
|
|
257
|
+
let out = "";
|
|
258
|
+
let rest = stderr;
|
|
259
|
+
let cwd;
|
|
260
|
+
let from = 0;
|
|
261
|
+
for (;;) {
|
|
262
|
+
const open = rest.indexOf(marker ?? CWD_SENTINEL, from);
|
|
263
|
+
if (open === -1)
|
|
264
|
+
break;
|
|
265
|
+
const span = marker ?? cwdMarkerAt(rest, open);
|
|
266
|
+
if (span === undefined) {
|
|
267
|
+
from = open + CWD_SENTINEL.length;
|
|
268
|
+
continue;
|
|
269
|
+
}
|
|
270
|
+
const close = rest.indexOf(span, open + span.length);
|
|
271
|
+
if (close === -1)
|
|
272
|
+
break;
|
|
273
|
+
out += rest.slice(0, open);
|
|
274
|
+
cwd = rest.slice(open + span.length, close);
|
|
275
|
+
rest = rest.slice(close + span.length);
|
|
276
|
+
from = 0;
|
|
277
|
+
}
|
|
278
|
+
return { stderr: out + rest, cwd };
|
|
279
|
+
}
|
|
250
280
|
export function msTimeoutToSec(timeoutMs, caps = resolveBashTimeoutCaps()) {
|
|
251
281
|
const { defaultSec, maxSec } = bashTimeoutCapsSec(caps);
|
|
252
282
|
if (timeoutMs === undefined || !Number.isFinite(timeoutMs))
|
package/dist/tools/fs/index.d.ts
CHANGED
|
@@ -12,7 +12,7 @@ export * from "./bash-readonly-classifier.js";
|
|
|
12
12
|
export * from "./fs-bash.js";
|
|
13
13
|
export * from "./read-deny.js";
|
|
14
14
|
import { type BashReadonlyRootBoundary } from "./bash-readonly-classifier.js";
|
|
15
|
-
export {
|
|
15
|
+
export { BASH_CLASSIFY_EXTRA_ALLOW, bashClassifyDefaultAllow } from "./bash-readonly-classifier.js";
|
|
16
16
|
import { type ReadDenyEntry } from "./read-deny.js";
|
|
17
17
|
import { type ContainmentFace } from "./containment-face.js";
|
|
18
18
|
export * from "./containment-face.js";
|
package/dist/tools/fs/index.js
CHANGED
|
@@ -12,7 +12,7 @@ export * from "./bash-readonly-classifier.js";
|
|
|
12
12
|
export * from "./fs-bash.js";
|
|
13
13
|
export * from "./read-deny.js";
|
|
14
14
|
import { BASH_READONLY_DEFAULT_ALLOW, } from "./bash-readonly-classifier.js";
|
|
15
|
-
export {
|
|
15
|
+
export { BASH_CLASSIFY_EXTRA_ALLOW, bashClassifyDefaultAllow } from "./bash-readonly-classifier.js";
|
|
16
16
|
import { compileReadDeny } from "./read-deny.js";
|
|
17
17
|
import { deploymentFaceClampNotice, resolveContainmentFace } from "./containment-face.js";
|
|
18
18
|
export * from "./containment-face.js";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sema-agent/core",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.20.1",
|
|
4
4
|
"description": "Stateless, task-oriented AI agent core",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "BUSL-1.1",
|
|
@@ -84,6 +84,7 @@
|
|
|
84
84
|
"gate:tool-names": "node scripts/verify-tool-name-tables.mjs",
|
|
85
85
|
"gate:tool-docs": "node scripts/gen-tool-spec-fields.mjs --check",
|
|
86
86
|
"gate:backlog-ledger": "node scripts/verify-backlog-ledger.mjs",
|
|
87
|
+
"gate:child-clamp-seats": "node scripts/verify-child-clamp-seats.mjs",
|
|
87
88
|
"gate:docs-tool-names": "node scripts/verify-docs-tool-names.mjs",
|
|
88
89
|
"gate:comment-ratio": "vitest run test/comment-ratio-ratchet.test.ts",
|
|
89
90
|
"gate:negative-controls": "vitest run test/gate-negative-controls.test.ts",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"_comment": "design/87 L3 — frozen public export surface of src/index.ts (name -> kind). DO NOT edit by hand to silence a red test. A removed/changed entry = a SemVer-BREAKING change; bump MAJOR and update this fixture in the SAME commit (design/87 §4.2 / §5.2). Regenerate via REGEN in test/export-surface.test.ts.",
|
|
3
3
|
"_tierComment": "#435 v1 — machine-readable layering of the public surface: stable = demonstrated by README.md / src/examples; internal = an `Internal`-marked name or a runner/engine deep-subtree declaration (the model seam src/engine/llm is excluded — it is the BYOM contract, not an engine internal); advanced = a supported export the front door does not walk you through. THIS IS AN INITIAL HEURISTIC, derived mechanically and expected to be refined ticket by ticket: no human reviewed these 1700+ entries one by one, and nothing here claims otherwise. Known bias: a short or English-word export name (ok, err, Result, Usage) can match ordinary prose in README.md and land `stable` on a coincidence. Every export MUST carry a tier — a new export with no row fails the gate in export-surface.test.ts.",
|
|
4
|
-
"count":
|
|
4
|
+
"count": 2389,
|
|
5
5
|
"exports": {
|
|
6
6
|
"A2ATaskState": "type",
|
|
7
7
|
"A2ATaskStateReversal": "type",
|
|
@@ -270,6 +270,7 @@
|
|
|
270
270
|
"CheckpointToken": "type",
|
|
271
271
|
"CircuitBreakerOptions": "interface",
|
|
272
272
|
"ClassifierDenyCause": "type",
|
|
273
|
+
"ClassifierSeat": "type",
|
|
273
274
|
"CleanArmLeakFinding": "interface",
|
|
274
275
|
"CleanArmLeakVerdict": "interface",
|
|
275
276
|
"CleanMemoryIndexRow": "interface",
|
|
@@ -748,6 +749,7 @@
|
|
|
748
749
|
"MemoryNoteRecord": "interface",
|
|
749
750
|
"MemoryNoteType": "type",
|
|
750
751
|
"MemoryOriginCause": "type",
|
|
752
|
+
"MemoryProjectionError": "class",
|
|
751
753
|
"MemoryPromptArtifactStore": "class",
|
|
752
754
|
"MemoryPromptSourceStateStore": "class",
|
|
753
755
|
"MemoryReadDetails": "type",
|
|
@@ -1051,7 +1053,6 @@
|
|
|
1051
1053
|
"REAL_APPROVAL_CHECKPOINT_VERSION": "variable",
|
|
1052
1054
|
"REASONING_BUDGET_SHARE": "variable",
|
|
1053
1055
|
"RECALL_CAVEAT": "variable",
|
|
1054
|
-
"RECOMMENDED_SENSITIVE_ASK_PATTERNS": "variable",
|
|
1055
1056
|
"RECOMMENDED_SENSITIVE_PATTERNS": "variable",
|
|
1056
1057
|
"REMOTE_HARVEST_PER_FILE_BYTES": "variable",
|
|
1057
1058
|
"REMOTE_MASS_DELETION_FUSE_RATIO": "variable",
|
|
@@ -1539,7 +1540,9 @@
|
|
|
1539
1540
|
"WORKFLOW_SUBAGENT_PROMPT": "variable",
|
|
1540
1541
|
"WORKFLOW_SUBAGENT_PROMPT_SCHEMA": "variable",
|
|
1541
1542
|
"WORKTREE_PARENT": "variable",
|
|
1543
|
+
"WRITE_EXEMPT_DIR_COVERS_ROOT_CODE": "variable",
|
|
1542
1544
|
"WRITE_PROTECTED_DEFAULT_TABLE": "variable",
|
|
1545
|
+
"WRITE_PROTECTION_TARGET_VIEWS": "variable",
|
|
1543
1546
|
"WebFetchConfig": "interface",
|
|
1544
1547
|
"WebSearchConfig": "interface",
|
|
1545
1548
|
"Win32NamespaceRefusal": "type",
|
|
@@ -1601,7 +1604,13 @@
|
|
|
1601
1604
|
"WriteProtectedHit": "interface",
|
|
1602
1605
|
"WriteProtectedKind": "type",
|
|
1603
1606
|
"WriteProtectedRow": "interface",
|
|
1607
|
+
"WriteProtectionCheck": "type",
|
|
1608
|
+
"WriteProtectionCompileOptions": "interface",
|
|
1609
|
+
"WriteProtectionJudgeContext": "interface",
|
|
1604
1610
|
"WriteProtectionMatcher": "interface",
|
|
1611
|
+
"WriteProtectionMount": "interface",
|
|
1612
|
+
"WriteProtectionTargetView": "type",
|
|
1613
|
+
"WriteProtectionVerdict": "type",
|
|
1605
1614
|
"WriteReceipt": "interface",
|
|
1606
1615
|
"XARGS_READ_ONLY_TARGETS": "variable",
|
|
1607
1616
|
"ackAdoptionConfig": "function",
|
|
@@ -1682,6 +1691,7 @@
|
|
|
1682
1691
|
"callKeyOrdinal": "function",
|
|
1683
1692
|
"canAccessAgentRecord": "function",
|
|
1684
1693
|
"canAccessWorkflowRun": "function",
|
|
1694
|
+
"canonicalPathIsAuthoritative": "function",
|
|
1685
1695
|
"canonicalPeerDisplayName": "function",
|
|
1686
1696
|
"canonicalWorkflowName": "function",
|
|
1687
1697
|
"capAggregateMediaBytes": "function",
|
|
@@ -1704,6 +1714,7 @@
|
|
|
1704
1714
|
"clampHopChain": "function",
|
|
1705
1715
|
"classifierMayAnswer": "function",
|
|
1706
1716
|
"classifierParseFailureDenyMessage": "function",
|
|
1717
|
+
"classifierSeatModel": "function",
|
|
1707
1718
|
"classifierUnavailableDenyMessage": "function",
|
|
1708
1719
|
"classifyCompoundReadonly": "function",
|
|
1709
1720
|
"classifyCompoundReadonlyDetailed": "function",
|
|
@@ -2650,6 +2661,7 @@
|
|
|
2650
2661
|
"CheckpointToken": "stable",
|
|
2651
2662
|
"CircuitBreakerOptions": "advanced",
|
|
2652
2663
|
"ClassifierDenyCause": "advanced",
|
|
2664
|
+
"ClassifierSeat": "internal",
|
|
2653
2665
|
"CleanArmLeakFinding": "advanced",
|
|
2654
2666
|
"CleanArmLeakVerdict": "advanced",
|
|
2655
2667
|
"CleanMemoryIndexRow": "advanced",
|
|
@@ -3128,6 +3140,7 @@
|
|
|
3128
3140
|
"MemoryNoteRecord": "stable",
|
|
3129
3141
|
"MemoryNoteType": "advanced",
|
|
3130
3142
|
"MemoryOriginCause": "advanced",
|
|
3143
|
+
"MemoryProjectionError": "advanced",
|
|
3131
3144
|
"MemoryPromptArtifactStore": "advanced",
|
|
3132
3145
|
"MemoryPromptSourceStateStore": "advanced",
|
|
3133
3146
|
"MemoryReadDetails": "advanced",
|
|
@@ -3431,7 +3444,6 @@
|
|
|
3431
3444
|
"REAL_APPROVAL_CHECKPOINT_VERSION": "advanced",
|
|
3432
3445
|
"REASONING_BUDGET_SHARE": "advanced",
|
|
3433
3446
|
"RECALL_CAVEAT": "advanced",
|
|
3434
|
-
"RECOMMENDED_SENSITIVE_ASK_PATTERNS": "advanced",
|
|
3435
3447
|
"RECOMMENDED_SENSITIVE_PATTERNS": "advanced",
|
|
3436
3448
|
"REMOTE_HARVEST_PER_FILE_BYTES": "advanced",
|
|
3437
3449
|
"REMOTE_MASS_DELETION_FUSE_RATIO": "advanced",
|
|
@@ -3919,7 +3931,9 @@
|
|
|
3919
3931
|
"WORKFLOW_SUBAGENT_PROMPT": "advanced",
|
|
3920
3932
|
"WORKFLOW_SUBAGENT_PROMPT_SCHEMA": "advanced",
|
|
3921
3933
|
"WORKTREE_PARENT": "advanced",
|
|
3934
|
+
"WRITE_EXEMPT_DIR_COVERS_ROOT_CODE": "advanced",
|
|
3922
3935
|
"WRITE_PROTECTED_DEFAULT_TABLE": "advanced",
|
|
3936
|
+
"WRITE_PROTECTION_TARGET_VIEWS": "advanced",
|
|
3923
3937
|
"WebFetchConfig": "advanced",
|
|
3924
3938
|
"WebSearchConfig": "advanced",
|
|
3925
3939
|
"Win32NamespaceRefusal": "advanced",
|
|
@@ -3981,7 +3995,13 @@
|
|
|
3981
3995
|
"WriteProtectedHit": "advanced",
|
|
3982
3996
|
"WriteProtectedKind": "advanced",
|
|
3983
3997
|
"WriteProtectedRow": "advanced",
|
|
3998
|
+
"WriteProtectionCheck": "advanced",
|
|
3999
|
+
"WriteProtectionCompileOptions": "advanced",
|
|
4000
|
+
"WriteProtectionJudgeContext": "advanced",
|
|
3984
4001
|
"WriteProtectionMatcher": "advanced",
|
|
4002
|
+
"WriteProtectionMount": "advanced",
|
|
4003
|
+
"WriteProtectionTargetView": "advanced",
|
|
4004
|
+
"WriteProtectionVerdict": "advanced",
|
|
3985
4005
|
"WriteReceipt": "internal",
|
|
3986
4006
|
"XARGS_READ_ONLY_TARGETS": "advanced",
|
|
3987
4007
|
"ackAdoptionConfig": "advanced",
|
|
@@ -4062,6 +4082,7 @@
|
|
|
4062
4082
|
"callKeyOrdinal": "advanced",
|
|
4063
4083
|
"canAccessAgentRecord": "advanced",
|
|
4064
4084
|
"canAccessWorkflowRun": "advanced",
|
|
4085
|
+
"canonicalPathIsAuthoritative": "advanced",
|
|
4065
4086
|
"canonicalPeerDisplayName": "advanced",
|
|
4066
4087
|
"canonicalWorkflowName": "advanced",
|
|
4067
4088
|
"capAggregateMediaBytes": "advanced",
|
|
@@ -4084,6 +4105,7 @@
|
|
|
4084
4105
|
"clampHopChain": "advanced",
|
|
4085
4106
|
"classifierMayAnswer": "advanced",
|
|
4086
4107
|
"classifierParseFailureDenyMessage": "advanced",
|
|
4108
|
+
"classifierSeatModel": "internal",
|
|
4087
4109
|
"classifierUnavailableDenyMessage": "advanced",
|
|
4088
4110
|
"classifyCompoundReadonly": "advanced",
|
|
4089
4111
|
"classifyCompoundReadonlyDetailed": "advanced",
|