mirror of
https://github.com/callstack/agent-device.git
synced 2026-09-14 20:06:34 +08:00
bcaa106845
* refactor: extract snapshot and replay identity semantics * refactor: move pure rect primitives from contracts to kernel/rect containsPoint, pickLargestRect, and isRectVisibleInViewport are raw rectangle arithmetic with no snapshot awareness, so they belong beside rectContains/rectArea in @agent-device/kernel/rect rather than in the snapshot-semantics vocabulary. The node-aware resolveViewportRect folds into contracts/snapshot-visibility.ts, retiring snapshot-geometry.ts; after this split, everything behavioral in @agent-device/contracts/snapshot is policy that interprets the snapshot model. * refactor: restore ADR-0012 rationale docs and dedupe replay identity shapes The #1478/#1581 extraction moved the identity/structural helpers but compressed their invariant documentation to one-liners; the deliberate no-ancestry-exclusion rule on idMatchCountInTree, the fail-closed guard comparison, and the who-throws/who-detects contracts on the two divergence reason markers now travel with their definitions again. LocalIdentity and NodeStructuralDenotation move to contracts/target-annotation.ts (beside TargetAncestryEntry, which WaitLandmarkMismatchEvidence now references directly), so the guard shapes in contracts/replay.ts are nominal instead of hand-rolled structural twins; ad-script re-exports the vocabulary beside the readers that produce it. Also inlines the demoteNonUniqueId pass-through wrapper in session-target-evidence.ts. * style: fix oxfmt formatting in snapshot-visibility * refactor: move findSnapshotAncestor into contracts/snapshot-tree The last root value import from src/selectors: predicates.ts reached src/snapshot/snapshot-processing.ts for the ancestor walker. The walker is index-based tree traversal with no presentation policy, so it joins buildSnapshotNodeMap in contracts/snapshot-tree.ts; both consumers repoint to the façade and the non-contiguous-index/cycle coverage moves to the package test. src/selectors now has zero value imports from root src in production files.
73 lines
2.0 KiB
JSON
73 lines
2.0 KiB
JSON
{
|
|
"name": "@agent-device/contracts",
|
|
"version": "0.0.0",
|
|
"private": true,
|
|
"type": "module",
|
|
"description": "Shared agent-device command, snapshot, provider, and platform vocabulary. Internal workspace package bundled into the published agent-device artifact.",
|
|
"dependencies": {
|
|
"@agent-device/kernel": "workspace:*"
|
|
},
|
|
"exports": {
|
|
"./client": {
|
|
"types": "./src/facades/client.ts",
|
|
"default": "./src/facades/client.ts"
|
|
},
|
|
"./command": {
|
|
"types": "./src/facades/command.ts",
|
|
"default": "./src/facades/command.ts"
|
|
},
|
|
"./device": {
|
|
"types": "./src/facades/device.ts",
|
|
"default": "./src/facades/device.ts"
|
|
},
|
|
"./interaction": {
|
|
"types": "./src/facades/interaction.ts",
|
|
"default": "./src/facades/interaction.ts"
|
|
},
|
|
"./capture": {
|
|
"types": "./src/facades/capture.ts",
|
|
"default": "./src/facades/capture.ts"
|
|
},
|
|
"./platform": {
|
|
"types": "./src/facades/platform.ts",
|
|
"default": "./src/facades/platform.ts"
|
|
},
|
|
"./settings": {
|
|
"types": "./src/settings.ts",
|
|
"default": "./src/settings.ts"
|
|
},
|
|
"./session": {
|
|
"types": "./src/facades/session.ts",
|
|
"default": "./src/facades/session.ts"
|
|
},
|
|
"./recording": {
|
|
"types": "./src/facades/recording.ts",
|
|
"default": "./src/facades/recording.ts"
|
|
},
|
|
"./observability": {
|
|
"types": "./src/facades/observability.ts",
|
|
"default": "./src/facades/observability.ts"
|
|
},
|
|
"./remote": {
|
|
"types": "./src/facades/remote.ts",
|
|
"default": "./src/facades/remote.ts"
|
|
},
|
|
"./replay": {
|
|
"types": "./src/facades/replay.ts",
|
|
"default": "./src/facades/replay.ts"
|
|
},
|
|
"./snapshot": {
|
|
"types": "./src/facades/snapshot.ts",
|
|
"default": "./src/facades/snapshot.ts"
|
|
},
|
|
"./divergence": {
|
|
"types": "./src/facades/divergence.ts",
|
|
"default": "./src/facades/divergence.ts"
|
|
},
|
|
"./progress": {
|
|
"types": "./src/facades/progress.ts",
|
|
"default": "./src/facades/progress.ts"
|
|
}
|
|
}
|
|
}
|