UNPKG

@sema-agent/core

Version:

Stateless, task-oriented AI agent core

696 lines (695 loc) • 15.5 kB
{ "repo": "core", "version": "7.26.0", "from": "f8936c81b87604636d2e202cd3e3d8ed7738610b", "to": "v7.26.0", "added": [ { "name": "ApproverPosture", "kind": "type", "tier": "advanced", "at": [ "src/core/task-spec.ts:53", "src/core/types.ts:23", "src/index.ts:3335" ], "criteriaCovered": false, "breaking": false }, { "name": "McpProbeResult", "kind": "interface", "tier": "advanced", "at": [ "src/core/mcp-probe.ts:60", "src/index.ts:349" ], "criteriaCovered": false, "breaking": false }, { "name": "PermissionRuleWriteContractHooks", "kind": "interface", "tier": "advanced", "at": [ "src/core/store-contracts/permission-rule-write-contract.ts:19", "src/index.ts:2737" ], "criteriaCovered": false, "breaking": false }, { "name": "READ_ROOT_CANDIDATE_DIR_MAX", "kind": "variable", "tier": "advanced", "at": [ "src/core/read-root-candidate.ts:9", "src/index.ts:2812" ], "criteriaCovered": false, "breaking": false }, { "name": "REMOVAL_LIVENESS_WORDS", "kind": "variable", "tier": "advanced", "at": [ "src/core/permission-rule-store.ts:1004", "src/index.ts:2811" ], "criteriaCovered": false, "breaking": false }, { "name": "RULE_WRITE_COMMITTED_WORDS", "kind": "variable", "tier": "advanced", "at": [ "src/core/permission-rule-store.ts:1021", "src/index.ts:2811" ], "criteriaCovered": false, "breaking": false }, { "name": "RemovalLiveness", "kind": "type", "tier": "advanced", "at": [ "src/core/permission-rule-store.ts:1005", "src/index.ts:2811" ], "criteriaCovered": false, "breaking": false }, { "name": "RuleWriteCommitted", "kind": "type", "tier": "advanced", "at": [ "src/core/permission-rule-store.ts:1022", "src/index.ts:2811" ], "criteriaCovered": false, "breaking": false }, { "name": "TASK_OUTPUT_REPLAY_KINDS", "kind": "variable", "tier": "advanced", "at": [ "src/core/task-registry-shared.ts:762", "src/index.ts:2810" ], "criteriaCovered": false, "breaking": false }, { "name": "TaskOutputReplay", "kind": "type", "tier": "advanced", "at": [ "src/core/task-registry-shared.ts:763", "src/index.ts:2810" ], "criteriaCovered": false, "breaking": false }, { "name": "deriveShadowedSet", "kind": "function", "tier": "advanced", "at": [ "src/core/memory-engine/index.ts:210", "src/core/memory-engine/shadowing.ts:71", "src/index.ts:2010" ], "criteriaCovered": false, "breaking": false }, { "name": "normalizeReadRootCandidate", "kind": "function", "tier": "advanced", "at": [ "src/core/read-root-candidate.ts:19", "src/index.ts:2812" ], "criteriaCovered": false, "breaking": false }, { "name": "permissionRuleWriteContract", "kind": "function", "tier": "advanced", "at": [ "src/core/store-contracts/permission-rule-write-contract.ts:53", "src/index.ts:2737" ], "criteriaCovered": false, "breaking": false }, { "name": "probeMcpServers", "kind": "function", "tier": "advanced", "at": [ "src/core/mcp-probe.ts:231", "src/index.ts:349" ], "criteriaCovered": false, "breaking": false } ], "removed": [], "changed": [], "narrowed": [ { "id": "F4", "source": "behaviorFlips.summary", "text": "NARROWING (#863 slice 2a, P2, memory): the shadowing carrier must stand on the seat's own default face — a memory product that keeps its subject name and supersedes H leaves only P in the index (`shadowedHidden` 1 / `supersededHidden` 1, search returns P alone); a tombstoned H lets O back into the injection index; a challenged H keeps O on all three faces; an org-layer same-name entry is shadowed like any other (org is not exempt) while a different-name entry stays." }, { "id": "F7", "source": "behaviorFlips.summary", "text": "NARROWING (#1001, P2, store contract): a `RuleWriteDelta.kind` outside the closed set is REFUSED identically by both bundled backends (exhaustive switch + `never` arm + one shared error); the file backend no longer treats an unknown kind carrying a tombstone as a delete. The `permissionRuleWriteContract` kit (+2 exports) pins it for any backend." } ], "closedSetMembers": [ { "set": "APPROVER_POSTURES", "at": [ "src/core/auto-mode-directive.ts:47" ], "newSet": true, "added": [ "bypass" ], "removed": [], "breaking": false, "criteriaCovered": false }, { "set": "ApproverPosture", "at": [ "src/core/task-spec.ts:53" ], "newSet": true, "added": [ "bypass" ], "removed": [], "breaking": false, "criteriaCovered": false }, { "set": "ENGINE_NOTICE_CODES", "at": [ "src/core/governance-codes.ts:315" ], "newSet": false, "added": [ "memory.project_scope_absent" ], "removed": [], "breaking": false, "criteriaCovered": false }, { "set": "MEMORY_PROJECT_KEY_ABSENT_REASONS", "at": [ "src/core/memory.ts:1091" ], "newSet": true, "added": [ "bare", "not_git", "unreadable" ], "removed": [], "breaking": false, "criteriaCovered": false }, { "set": "MemoryProjectKeyAbsentReason", "at": [ "src/core/memory.ts:1092" ], "newSet": true, "added": [ "bare", "not_git", "unreadable" ], "removed": [], "breaking": false, "criteriaCovered": false }, { "set": "RULE_WRITE_COMMITTED_WORDS", "at": [ "src/core/permission-rule-store.ts:1021" ], "newSet": true, "added": [ "no", "unknown" ], "removed": [], "breaking": false, "criteriaCovered": false }, { "set": "RuleWriteCommitted", "at": [ "src/core/permission-rule-store.ts:1022", "src/index.ts:2811" ], "newSet": true, "added": [ "no", "unknown" ], "removed": [], "breaking": false, "criteriaCovered": false } ], "closedSetsUnreadable": [], "typeKeys": [ { "type": "AddResult", "at": [ "src/core/permission-rule-store.ts:1361" ], "added": [ "committed" ], "removed": [], "breaking": false, "criteriaCovered": true }, { "type": "AskCarry", "at": [ "src/core/hooks.ts:2151" ], "added": [ "mandated" ], "removed": [], "breaking": false, "criteriaCovered": false }, { "type": "AskRequest", "at": [ "src/core/tool-policy.ts:2622" ], "added": [ "mandated" ], "removed": [], "breaking": false, "criteriaCovered": true }, { "type": "CleanMemoryIndexRow", "at": [ "src/core/memory-engine/tools.ts:275" ], "added": [ "shadowedBy" ], "removed": [], "breaking": false, "criteriaCovered": false }, { "type": "CleanMemorySearchHit", "at": [ "src/core/memory-engine/tools.ts:178" ], "added": [ "shadowedBy" ], "removed": [], "breaking": false, "criteriaCovered": false }, { "type": "EffectiveMemoryScopes", "at": [ "src/core/task-result.ts:127" ], "added": [ "projectKey" ], "removed": [], "breaking": false, "criteriaCovered": false }, { "type": "ExposedMemoryIndexRow", "at": [ "src/core/memory-engine/tools.ts:293" ], "added": [ "shadowedBy" ], "removed": [], "breaking": false, "criteriaCovered": false }, { "type": "ExposedMemorySearchHit", "at": [ "src/core/memory-engine/tools.ts:204" ], "added": [ "shadowedBy" ], "removed": [], "breaking": false, "criteriaCovered": false }, { "type": "MaybeCompactOptions", "at": [ "src/core/auto-compaction.ts:331" ], "added": [ "postureRestate" ], "removed": [], "breaking": false, "criteriaCovered": false }, { "type": "MemoryGetDetails", "at": [ "src/core/memory-engine/tools.ts:235" ], "added": [ "shadowedBy" ], "removed": [], "breaking": false, "criteriaCovered": false }, { "type": "MemoryIndexDetails", "at": [ "src/core/memory-engine/tools.ts:308" ], "added": [ "shadowedHidden" ], "removed": [], "breaking": false, "criteriaCovered": true }, { "type": "MemorySessionHandle", "at": [ "src/core/memory-engine/types.ts:401" ], "added": [ "shadowNames", "shadowedByScope" ], "removed": [], "breaking": false, "criteriaCovered": false }, { "type": "MemorySpecInput", "at": [ "src/core/memory.ts:1109" ], "added": [ "projectKey" ], "removed": [], "breaking": false, "criteriaCovered": false }, { "type": "NormalizedMemorySpec", "at": [ "src/core/memory.ts:1038" ], "added": [ "projectKey" ], "removed": [], "breaking": false, "criteriaCovered": false }, { "type": "PermissionResult", "at": [ "src/core/tool-policy.ts:447" ], "added": [ "mandated" ], "removed": [], "breaking": false, "criteriaCovered": false }, { "type": "PreToolUseResult", "at": [ "src/core/hooks.ts:1163" ], "added": [ "mandated" ], "removed": [], "breaking": false, "criteriaCovered": false }, { "type": "RemoveResult", "at": [ "src/core/permission-rule-store.ts:1081" ], "added": [ "committed" ], "removed": [], "breaking": false, "criteriaCovered": false }, { "type": "TaskSpec", "at": [ "src/core/task-spec.ts:55" ], "added": [ "approverPosture" ], "removed": [], "breaking": false, "criteriaCovered": true } ], "declarationMoves": [ { "name": "READ_ROOT_CANDIDATE_DIR_MAX", "kind": "variable", "onSurface": true, "from": [ "src/core/read-root-candidate.ts" ], "to": [ "src/core/read-root-candidate.ts", "src/index.ts" ] }, { "name": "REMOVAL_LIVENESS_WORDS", "kind": "variable", "onSurface": true, "from": [ "src/core/permission-rule-store.ts" ], "to": [ "src/core/permission-rule-store.ts", "src/index.ts" ] }, { "name": "RemovalLiveness", "kind": "type", "onSurface": true, "from": [ "src/core/permission-rule-store.ts" ], "to": [ "src/core/permission-rule-store.ts", "src/index.ts" ] }, { "name": "TASK_OUTPUT_REPLAY_KINDS", "kind": "variable", "onSurface": true, "from": [ "src/core/task-registry-shared.ts" ], "to": [ "src/core/task-registry-shared.ts", "src/index.ts" ] }, { "name": "TaskOutputReplay", "kind": "type", "onSurface": true, "from": [ "src/core/task-registry-shared.ts" ], "to": [ "src/core/task-registry-shared.ts", "src/index.ts" ] }, { "name": "normalizeReadRootCandidate", "kind": "function", "onSurface": true, "from": [ "src/core/read-root-candidate.ts" ], "to": [ "src/core/read-root-candidate.ts", "src/index.ts" ] } ], "mintMoves": [], "criteriaObserves": [ { "kind": "taskEventField", "name": "wiring_manifest.manifest", "assertions": [ "G1.a", "G1.b" ] }, { "kind": "typeMember", "name": "AddResult.committed", "assertions": [ "G5.a" ] }, { "kind": "typeMember", "name": "AskRequest.mandated", "assertions": [ "G7.a" ] }, { "kind": "typeMember", "name": "Checkpoint.pendingAction", "assertions": [ "G8.a" ] }, { "kind": "typeMember", "name": "MemoryIndexDetails.shadowedHidden", "assertions": [ "G3.a" ] }, { "kind": "typeMember", "name": "ReadRootGrantCandidate.dir", "assertions": [ "G4.a" ] }, { "kind": "typeMember", "name": "RuleTightenAddDelta.kind", "assertions": [ "G6.a" ] }, { "kind": "typeMember", "name": "TaskSpec.approverPosture", "assertions": [ "G2.b" ] }, { "kind": "typeMember", "name": "TaskSpec.autoModeRequested", "assertions": [ "G2.a", "G9.a" ] } ], "consumersHint": { "cli": [ "AddResult", "AskCarry", "AskRequest", "ENGINE_NOTICE_CODES", "MemorySessionHandle", "PermissionResult", "PreToolUseResult", "REMOVAL_LIVENESS_WORDS", "RemovalLiveness", "TASK_OUTPUT_REPLAY_KINDS", "TaskOutputReplay", "TaskSpec", "normalizeReadRootCandidate" ], "server": [ "AddResult", "AskCarry", "AskRequest", "CleanMemoryIndexRow", "CleanMemorySearchHit", "ENGINE_NOTICE_CODES", "EffectiveMemoryScopes", "ExposedMemoryIndexRow", "ExposedMemorySearchHit", "MaybeCompactOptions", "MemoryGetDetails", "MemoryIndexDetails", "MemorySessionHandle", "MemorySpecInput", "NormalizedMemorySpec", "PermissionResult", "PreToolUseResult", "READ_ROOT_CANDIDATE_DIR_MAX", "RemovalLiveness", "RemoveResult", "TaskSpec", "normalizeReadRootCandidate" ], "sdk": [ "AddResult", "AskRequest", "ENGINE_NOTICE_CODES", "MemorySpecInput", "PermissionResult", "PreToolUseResult", "RemovalLiveness", "TaskSpec" ], "note": "scanned cli@edad148c server@20cfa4b3 sdk@6d6c486 — a name listed is MENTIONED there today, which is evidence of consumption, not proof of it" }, "breakingCount": 0, "breakingItems": [], "toResolvedAt": "61065a191d4d2a863c54cb46db9ec5903d6c5ab9" }