pi-agent-browser-native 0.9.4 → 0.9.6
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 +48 -0
- package/README.md +60 -812
- package/dist/extensions/agent-browser/index.js +2381 -1706
- package/dist/packaged/lib/browser-session-conversion.js +2810 -0
- package/dist/packaged/lib/config-policy.js +599 -0
- package/dist/packaged/lib/parsing.js +34 -0
- package/dist/packaged/lib/playbook.js +694 -0
- package/dist/packaged/lib/results/snapshot.js +2671 -0
- package/dist/packaged/lib/runtime.js +3027 -0
- package/docs/ARCHITECTURE.md +14 -3
- package/docs/CODE_QUALITY.md +39 -3
- package/docs/COMMAND_REFERENCE.md +22 -22
- package/docs/ELECTRON.md +24 -2
- package/docs/PERFORMANCE.md +243 -0
- package/docs/REFERENCE.md +869 -0
- package/docs/RELEASE.md +9 -9
- package/docs/REQUIREMENTS.md +1 -1
- package/docs/SESSION_STORAGE.md +11 -3
- package/docs/SUPPORT_MATRIX.md +16 -11
- package/docs/TOOL_CONTRACT.md +17 -13
- package/docs/performance/2026-10-12.json +7257 -0
- package/docs/platform-smoke.md +3 -3
- package/package.json +15 -3
- package/scripts/build.mjs +16 -5
- package/scripts/config.mjs +24 -20
- package/scripts/convert-browser-session.mjs +1 -1
- package/scripts/doctor.mjs +2 -2
- package/scripts/platform-smoke/lease-evidence.mjs +2 -4
- package/scripts/platform-smoke/linux-image/Dockerfile +8 -2
- package/scripts/platform-smoke/targets.mjs +1 -5
- package/dist/extensions/agent-browser/lib/argv-descriptor.js +0 -123
- package/dist/extensions/agent-browser/lib/argv-grammar.js +0 -320
- package/dist/extensions/agent-browser/lib/bash-guard.js +0 -193
- package/dist/extensions/agent-browser/lib/batch-lifecycle.js +0 -131
- package/dist/extensions/agent-browser/lib/browser-execution-claim-codec.js +0 -61
- package/dist/extensions/agent-browser/lib/browser-execution-claim-storage.js +0 -232
- package/dist/extensions/agent-browser/lib/browser-execution-claims.js +0 -202
- package/dist/extensions/agent-browser/lib/browser-execution-identity.js +0 -77
- package/dist/extensions/agent-browser/lib/browser-journal-branch.js +0 -98
- package/dist/extensions/agent-browser/lib/browser-journal-contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/browser-journal-projection.js +0 -221
- package/dist/extensions/agent-browser/lib/browser-journal-reader.js +0 -89
- package/dist/extensions/agent-browser/lib/browser-journal-replay.js +0 -246
- package/dist/extensions/agent-browser/lib/browser-journal.js +0 -148
- package/dist/extensions/agent-browser/lib/browser-legacy-pages.js +0 -220
- package/dist/extensions/agent-browser/lib/browser-legacy-projection.js +0 -282
- package/dist/extensions/agent-browser/lib/browser-legacy-types.js +0 -1
- package/dist/extensions/agent-browser/lib/browser-session-conversion-stream.js +0 -217
- package/dist/extensions/agent-browser/lib/browser-session-conversion.js +0 -126
- package/dist/extensions/agent-browser/lib/browser-transcript-contracts.js +0 -35
- package/dist/extensions/agent-browser/lib/browser-transcript-validation.js +0 -166
- package/dist/extensions/agent-browser/lib/browser-transcript.js +0 -189
- package/dist/extensions/agent-browser/lib/browser-value-parsing.js +0 -15
- package/dist/extensions/agent-browser/lib/command-capabilities.js +0 -340
- package/dist/extensions/agent-browser/lib/command-policy.js +0 -155
- package/dist/extensions/agent-browser/lib/command-taxonomy.js +0 -105
- package/dist/extensions/agent-browser/lib/config-policy.js +0 -450
- package/dist/extensions/agent-browser/lib/config-providers.js +0 -71
- package/dist/extensions/agent-browser/lib/config-validation.js +0 -218
- package/dist/extensions/agent-browser/lib/config.js +0 -69
- package/dist/extensions/agent-browser/lib/electron/cdp.js +0 -58
- package/dist/extensions/agent-browser/lib/electron/cleanup.js +0 -308
- package/dist/extensions/agent-browser/lib/electron/discovery-darwin.js +0 -109
- package/dist/extensions/agent-browser/lib/electron/discovery-desktop.js +0 -136
- package/dist/extensions/agent-browser/lib/electron/discovery-evidence.js +0 -89
- package/dist/extensions/agent-browser/lib/electron/discovery-linux.js +0 -93
- package/dist/extensions/agent-browser/lib/electron/discovery-packages.js +0 -162
- package/dist/extensions/agent-browser/lib/electron/discovery-types.js +0 -2
- package/dist/extensions/agent-browser/lib/electron/discovery.js +0 -217
- package/dist/extensions/agent-browser/lib/electron/launch-monitor.js +0 -102
- package/dist/extensions/agent-browser/lib/electron/launch-process.js +0 -209
- package/dist/extensions/agent-browser/lib/electron/launch-types.js +0 -2
- package/dist/extensions/agent-browser/lib/electron/launch.js +0 -329
- package/dist/extensions/agent-browser/lib/executable-path.js +0 -29
- package/dist/extensions/agent-browser/lib/execution-cwd.js +0 -67
- package/dist/extensions/agent-browser/lib/fs-utils.js +0 -18
- package/dist/extensions/agent-browser/lib/input-modes/electron.js +0 -201
- package/dist/extensions/agent-browser/lib/input-modes/job.js +0 -195
- package/dist/extensions/agent-browser/lib/input-modes/lookup-network-evidence.js +0 -104
- package/dist/extensions/agent-browser/lib/input-modes/lookup-plan.js +0 -132
- package/dist/extensions/agent-browser/lib/input-modes/lookup-redaction.js +0 -57
- package/dist/extensions/agent-browser/lib/input-modes/lookup-source-evidence.js +0 -151
- package/dist/extensions/agent-browser/lib/input-modes/lookup-workspace.js +0 -142
- package/dist/extensions/agent-browser/lib/input-modes/lookups.js +0 -83
- package/dist/extensions/agent-browser/lib/input-modes/params.js +0 -195
- package/dist/extensions/agent-browser/lib/input-modes/qa-analysis.js +0 -268
- package/dist/extensions/agent-browser/lib/input-modes/qa-presentation.js +0 -117
- package/dist/extensions/agent-browser/lib/input-modes/script-child.js +0 -396
- package/dist/extensions/agent-browser/lib/input-modes/script-protocol.js +0 -86
- package/dist/extensions/agent-browser/lib/input-modes/script-types.js +0 -1
- package/dist/extensions/agent-browser/lib/input-modes/script-validation.js +0 -60
- package/dist/extensions/agent-browser/lib/input-modes/script.js +0 -108
- package/dist/extensions/agent-browser/lib/input-modes/semantic-action.js +0 -243
- package/dist/extensions/agent-browser/lib/input-modes/shared.js +0 -48
- package/dist/extensions/agent-browser/lib/input-modes/types.js +0 -65
- package/dist/extensions/agent-browser/lib/json-schema.js +0 -65
- package/dist/extensions/agent-browser/lib/launch-scoped-flags.js +0 -212
- package/dist/extensions/agent-browser/lib/managed-session-policy-lock.js +0 -165
- package/dist/extensions/agent-browser/lib/managed-session-posix-storage.js +0 -58
- package/dist/extensions/agent-browser/lib/managed-session-project-identity.js +0 -244
- package/dist/extensions/agent-browser/lib/managed-session-restore-context.js +0 -84
- package/dist/extensions/agent-browser/lib/managed-session-restore-policy.js +0 -119
- package/dist/extensions/agent-browser/lib/managed-session-restore-state.js +0 -83
- package/dist/extensions/agent-browser/lib/managed-session-restore.js +0 -212
- package/dist/extensions/agent-browser/lib/managed-session-snapshot-records.js +0 -277
- package/dist/extensions/agent-browser/lib/managed-session-snapshots.js +0 -181
- package/dist/extensions/agent-browser/lib/managed-session-storage.js +0 -126
- package/dist/extensions/agent-browser/lib/native-confirmation.js +0 -140
- package/dist/extensions/agent-browser/lib/native-output.js +0 -81
- package/dist/extensions/agent-browser/lib/orchestration/batch-stdin.js +0 -182
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/artifact-merge.js +0 -30
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/artifact-paths.js +0 -188
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/browser-observation-result.js +0 -82
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/click-dispatch.js +0 -406
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/diagnostic-values.js +0 -31
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/diagnostics.js +0 -240
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/electron-observation.js +0 -202
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/electron-text-diagnostics.js +0 -109
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/fill-diagnostics.js +0 -119
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/final-result-action-recovery.js +0 -147
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/final-result-actions.js +0 -144
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/final-result-content.js +0 -123
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/final-result-contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/final-result-details.js +0 -156
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/final-result-electron.js +0 -179
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/final-result-evidence.js +0 -39
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/final-result-missing-binary.js +0 -89
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/final-result-recovery.js +0 -97
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/final-result-redaction.js +0 -106
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/final-result-timeout.js +0 -110
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/final-result.js +0 -53
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/index.js +0 -224
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/interaction-diagnostics.js +0 -290
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/managed-session-close.js +0 -167
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/managed-session-daemon-inspection.js +0 -108
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/managed-session-daemon-policy.js +0 -174
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/native-helper-observation.js +0 -65
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/observation-types.js +0 -1
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/overlay-diagnostics.js +0 -120
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare/network-page-filter.js +0 -192
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare/scroll-shims.js +0 -225
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare/snapshot-filter-data.js +0 -150
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare/snapshot-filter.js +0 -165
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare/snapshot-rendered-text.js +0 -147
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare/wait-timeouts.js +0 -145
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare-artifacts.js +0 -159
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare-command.js +0 -131
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare-contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare-daemon.js +0 -93
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare-failure.js +0 -42
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare-guards.js +0 -242
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare-input.js +0 -75
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare-observations.js +0 -92
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare-page-selection.js +0 -254
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare-page-state.js +0 -121
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare-refs.js +0 -130
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare-resources.js +0 -114
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare-semantic.js +0 -121
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare-session-plan.js +0 -222
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare-timeouts.js +0 -68
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prepare.js +0 -202
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-analysis.js +0 -191
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-confirmation.js +0 -152
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-diagnostics.js +0 -182
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-electron.js +0 -150
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-lifecycle-contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-lifecycle-phase-contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-lifecycle-phase.js +0 -115
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-lifecycle.js +0 -256
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-managed-contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-managed.js +0 -256
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-native-phase-contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-native-phase.js +0 -93
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-native.js +0 -113
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-navigation-contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-navigation.js +0 -316
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-ownership.js +0 -28
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-page-phase-contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-page-phase.js +0 -142
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-presentation-contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-presentation.js +0 -333
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-publication-phase-contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-publication-phase.js +0 -71
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-publication.js +0 -201
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-receipts.js +0 -183
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-refs.js +0 -200
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output-tabs.js +0 -142
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/process-output.js +0 -25
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/prompt-guards.js +0 -50
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/recording-receipt-reconciliation.js +0 -198
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/recording-recovery-contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/recording-recovery-presentation.js +0 -154
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/recording-recovery.js +0 -80
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/screenshot-capture.js +0 -14
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/screenshot-observation.js +0 -206
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/session-state-commands.js +0 -130
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/session-state-electron.js +0 -210
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/session-state-observations.js +0 -61
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/session-state-outcomes.js +0 -187
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/session-state-refs.js +0 -171
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/session-state-tabs.js +0 -228
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/session-state.js +0 -117
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/text-visibility-diagnostics.js +0 -182
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/timeout-diagnostics.js +0 -256
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/timeout-progress.js +0 -108
- package/dist/extensions/agent-browser/lib/orchestration/browser-run/types.js +0 -1
- package/dist/extensions/agent-browser/lib/orchestration/code-artifact-observation.js +0 -39
- package/dist/extensions/agent-browser/lib/orchestration/code-image-observation.js +0 -119
- package/dist/extensions/agent-browser/lib/orchestration/electron-host/branch.js +0 -92
- package/dist/extensions/agent-browser/lib/orchestration/electron-host/cleanup-result.js +0 -58
- package/dist/extensions/agent-browser/lib/orchestration/electron-host/cleanup.js +0 -78
- package/dist/extensions/agent-browser/lib/orchestration/electron-host/contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/orchestration/electron-host/discovery.js +0 -106
- package/dist/extensions/agent-browser/lib/orchestration/electron-host/index.js +0 -60
- package/dist/extensions/agent-browser/lib/orchestration/electron-host/policy.js +0 -86
- package/dist/extensions/agent-browser/lib/orchestration/electron-host/probe-collection.js +0 -69
- package/dist/extensions/agent-browser/lib/orchestration/electron-host/probe-data.js +0 -167
- package/dist/extensions/agent-browser/lib/orchestration/electron-host/probe-presentation.js +0 -164
- package/dist/extensions/agent-browser/lib/orchestration/electron-host/probe.js +0 -161
- package/dist/extensions/agent-browser/lib/orchestration/electron-host/status.js +0 -165
- package/dist/extensions/agent-browser/lib/orchestration/execution-queue.js +0 -98
- package/dist/extensions/agent-browser/lib/orchestration/extension-artifact-preflight.js +0 -211
- package/dist/extensions/agent-browser/lib/orchestration/extension-artifacts.js +0 -23
- package/dist/extensions/agent-browser/lib/orchestration/extension-attachment-replay.js +0 -99
- package/dist/extensions/agent-browser/lib/orchestration/extension-branch-restore.js +0 -275
- package/dist/extensions/agent-browser/lib/orchestration/extension-code.js +0 -280
- package/dist/extensions/agent-browser/lib/orchestration/extension-command-admission.js +0 -303
- package/dist/extensions/agent-browser/lib/orchestration/extension-command-output.js +0 -36
- package/dist/extensions/agent-browser/lib/orchestration/extension-command-result.js +0 -335
- package/dist/extensions/agent-browser/lib/orchestration/extension-command-run.js +0 -227
- package/dist/extensions/agent-browser/lib/orchestration/extension-command-state.js +0 -1
- package/dist/extensions/agent-browser/lib/orchestration/extension-electron-ownership.js +0 -204
- package/dist/extensions/agent-browser/lib/orchestration/extension-execution-locks.js +0 -139
- package/dist/extensions/agent-browser/lib/orchestration/extension-execution-queue.js +0 -24
- package/dist/extensions/agent-browser/lib/orchestration/extension-host-coordination.js +0 -98
- package/dist/extensions/agent-browser/lib/orchestration/extension-host-run.js +0 -295
- package/dist/extensions/agent-browser/lib/orchestration/extension-intent-replay.js +0 -41
- package/dist/extensions/agent-browser/lib/orchestration/extension-invocation.js +0 -7
- package/dist/extensions/agent-browser/lib/orchestration/extension-lifecycle.js +0 -102
- package/dist/extensions/agent-browser/lib/orchestration/extension-managed-ownership.js +0 -133
- package/dist/extensions/agent-browser/lib/orchestration/extension-observation.js +0 -120
- package/dist/extensions/agent-browser/lib/orchestration/extension-prompt.js +0 -180
- package/dist/extensions/agent-browser/lib/orchestration/extension-recording.js +0 -290
- package/dist/extensions/agent-browser/lib/orchestration/extension-resource-contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/orchestration/extension-resource-replay.js +0 -269
- package/dist/extensions/agent-browser/lib/orchestration/extension-result-state.js +0 -113
- package/dist/extensions/agent-browser/lib/orchestration/extension-runtime.js +0 -146
- package/dist/extensions/agent-browser/lib/orchestration/extension-script-leases.js +0 -58
- package/dist/extensions/agent-browser/lib/orchestration/extension-tool-boundary.js +0 -62
- package/dist/extensions/agent-browser/lib/orchestration/extension-version-check.js +0 -54
- package/dist/extensions/agent-browser/lib/orchestration/input-plan-types.js +0 -1
- package/dist/extensions/agent-browser/lib/orchestration/input-plan.js +0 -313
- package/dist/extensions/agent-browser/lib/orchestration/input-redaction.js +0 -62
- package/dist/extensions/agent-browser/lib/orchestration/native-config.js +0 -144
- package/dist/extensions/agent-browser/lib/orchestration/native-root-launch.js +0 -77
- package/dist/extensions/agent-browser/lib/orchestration/native-session-defaults.js +0 -231
- package/dist/extensions/agent-browser/lib/orchestration/operation-paths.js +0 -142
- package/dist/extensions/agent-browser/lib/orchestration/output-file.js +0 -276
- package/dist/extensions/agent-browser/lib/orchestration/script-mode.js +0 -220
- package/dist/extensions/agent-browser/lib/owned-managed-session-context.js +0 -55
- package/dist/extensions/agent-browser/lib/page-target-batch.js +0 -118
- package/dist/extensions/agent-browser/lib/page-target-guards.js +0 -50
- package/dist/extensions/agent-browser/lib/page-target-navigation.js +0 -104
- package/dist/extensions/agent-browser/lib/page-target-validation.js +0 -90
- package/dist/extensions/agent-browser/lib/parsing.js +0 -30
- package/dist/extensions/agent-browser/lib/pi-tool-rendering.js +0 -343
- package/dist/extensions/agent-browser/lib/playbook.js +0 -146
- package/dist/extensions/agent-browser/lib/process-child.js +0 -284
- package/dist/extensions/agent-browser/lib/process-environment.js +0 -48
- package/dist/extensions/agent-browser/lib/process-errors.js +0 -23
- package/dist/extensions/agent-browser/lib/process-identity.js +0 -127
- package/dist/extensions/agent-browser/lib/process-socket-storage.js +0 -256
- package/dist/extensions/agent-browser/lib/process-stdout.js +0 -74
- package/dist/extensions/agent-browser/lib/process.js +0 -216
- package/dist/extensions/agent-browser/lib/prompt-artifacts.js +0 -287
- package/dist/extensions/agent-browser/lib/prompt-policy.js +0 -54
- package/dist/extensions/agent-browser/lib/read-command.js +0 -41
- package/dist/extensions/agent-browser/lib/read-confirmation.js +0 -162
- package/dist/extensions/agent-browser/lib/recording-reservations.js +0 -208
- package/dist/extensions/agent-browser/lib/redaction-fields.js +0 -75
- package/dist/extensions/agent-browser/lib/redaction-json.js +0 -149
- package/dist/extensions/agent-browser/lib/redaction-url.js +0 -88
- package/dist/extensions/agent-browser/lib/results/action-contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/results/action-recommendations.js +0 -38
- package/dist/extensions/agent-browser/lib/results/artifact-contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/results/artifact-manifest-validation.js +0 -133
- package/dist/extensions/agent-browser/lib/results/artifact-manifest.js +0 -173
- package/dist/extensions/agent-browser/lib/results/artifact-recommendations.js +0 -73
- package/dist/extensions/agent-browser/lib/results/categories.js +0 -152
- package/dist/extensions/agent-browser/lib/results/confirmation.js +0 -75
- package/dist/extensions/agent-browser/lib/results/contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/results/editable-ref-evidence.js +0 -99
- package/dist/extensions/agent-browser/lib/results/electron-recommendations.js +0 -83
- package/dist/extensions/agent-browser/lib/results/envelope-decoding.js +0 -48
- package/dist/extensions/agent-browser/lib/results/envelope.js +0 -198
- package/dist/extensions/agent-browser/lib/results/evidence-contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/results/failure-recommendations.js +0 -180
- package/dist/extensions/agent-browser/lib/results/network-routes.js +0 -133
- package/dist/extensions/agent-browser/lib/results/network.js +0 -89
- package/dist/extensions/agent-browser/lib/results/next-actions.js +0 -111
- package/dist/extensions/agent-browser/lib/results/presentation/artifact-files.js +0 -320
- package/dist/extensions/agent-browser/lib/results/presentation/artifact-format.js +0 -138
- package/dist/extensions/agent-browser/lib/results/presentation/artifact-images.js +0 -113
- package/dist/extensions/agent-browser/lib/results/presentation/artifact-verification.js +0 -145
- package/dist/extensions/agent-browser/lib/results/presentation/artifacts.js +0 -165
- package/dist/extensions/agent-browser/lib/results/presentation/batch-contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/results/presentation/batch-recording.js +0 -118
- package/dist/extensions/agent-browser/lib/results/presentation/batch-redaction.js +0 -68
- package/dist/extensions/agent-browser/lib/results/presentation/batch-rendering.js +0 -135
- package/dist/extensions/agent-browser/lib/results/presentation/batch-step.js +0 -227
- package/dist/extensions/agent-browser/lib/results/presentation/batch-summary.js +0 -91
- package/dist/extensions/agent-browser/lib/results/presentation/batch.js +0 -123
- package/dist/extensions/agent-browser/lib/results/presentation/browser-profile-recovery.js +0 -54
- package/dist/extensions/agent-browser/lib/results/presentation/command-presenters.js +0 -216
- package/dist/extensions/agent-browser/lib/results/presentation/common.js +0 -81
- package/dist/extensions/agent-browser/lib/results/presentation/content.js +0 -119
- package/dist/extensions/agent-browser/lib/results/presentation/diagnostic-a11y.js +0 -67
- package/dist/extensions/agent-browser/lib/results/presentation/diagnostic-health.js +0 -79
- package/dist/extensions/agent-browser/lib/results/presentation/diagnostic-identity.js +0 -199
- package/dist/extensions/agent-browser/lib/results/presentation/diagnostic-logs.js +0 -75
- package/dist/extensions/agent-browser/lib/results/presentation/diagnostic-network-actions.js +0 -216
- package/dist/extensions/agent-browser/lib/results/presentation/diagnostic-network.js +0 -124
- package/dist/extensions/agent-browser/lib/results/presentation/diagnostic-redaction.js +0 -64
- package/dist/extensions/agent-browser/lib/results/presentation/diagnostic-storage.js +0 -209
- package/dist/extensions/agent-browser/lib/results/presentation/diagnostic-stream.js +0 -69
- package/dist/extensions/agent-browser/lib/results/presentation/diagnostic-summary.js +0 -222
- package/dist/extensions/agent-browser/lib/results/presentation/diagnostics.js +0 -124
- package/dist/extensions/agent-browser/lib/results/presentation/early-result.js +0 -70
- package/dist/extensions/agent-browser/lib/results/presentation/errors.js +0 -285
- package/dist/extensions/agent-browser/lib/results/presentation/input-contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/results/presentation/large-output.js +0 -117
- package/dist/extensions/agent-browser/lib/results/presentation/navigation.js +0 -231
- package/dist/extensions/agent-browser/lib/results/presentation/notices.js +0 -75
- package/dist/extensions/agent-browser/lib/results/presentation/observation-contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/results/presentation/observation-rendering.js +0 -127
- package/dist/extensions/agent-browser/lib/results/presentation/outcomes.js +0 -120
- package/dist/extensions/agent-browser/lib/results/presentation/output-completion.js +0 -77
- package/dist/extensions/agent-browser/lib/results/presentation/output-spill.js +0 -51
- package/dist/extensions/agent-browser/lib/results/presentation/registry.js +0 -145
- package/dist/extensions/agent-browser/lib/results/presentation/semantic-action.js +0 -104
- package/dist/extensions/agent-browser/lib/results/presentation/skills.js +0 -178
- package/dist/extensions/agent-browser/lib/results/presentation/source.js +0 -109
- package/dist/extensions/agent-browser/lib/results/presentation.js +0 -19
- package/dist/extensions/agent-browser/lib/results/recommendation-contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/results/recording.js +0 -88
- package/dist/extensions/agent-browser/lib/results/recovery-actions.js +0 -118
- package/dist/extensions/agent-browser/lib/results/recovery-next-actions.js +0 -60
- package/dist/extensions/agent-browser/lib/results/selector-recovery-target.js +0 -83
- package/dist/extensions/agent-browser/lib/results/selector-recovery.js +0 -261
- package/dist/extensions/agent-browser/lib/results/snapshot-compact.js +0 -266
- package/dist/extensions/agent-browser/lib/results/snapshot-content.js +0 -32
- package/dist/extensions/agent-browser/lib/results/snapshot-high-value-controls.js +0 -240
- package/dist/extensions/agent-browser/lib/results/snapshot-refs.js +0 -103
- package/dist/extensions/agent-browser/lib/results/snapshot-segments.js +0 -383
- package/dist/extensions/agent-browser/lib/results/snapshot-spill.js +0 -53
- package/dist/extensions/agent-browser/lib/results/snapshot.js +0 -44
- package/dist/extensions/agent-browser/lib/results/text.js +0 -44
- package/dist/extensions/agent-browser/lib/runtime-args-validation.js +0 -133
- package/dist/extensions/agent-browser/lib/runtime-compatibility.js +0 -81
- package/dist/extensions/agent-browser/lib/runtime-contracts.js +0 -1
- package/dist/extensions/agent-browser/lib/runtime-redaction.js +0 -118
- package/dist/extensions/agent-browser/lib/runtime-replay-events.js +0 -144
- package/dist/extensions/agent-browser/lib/runtime-session-identity.js +0 -76
- package/dist/extensions/agent-browser/lib/runtime-session-plan.js +0 -114
- package/dist/extensions/agent-browser/lib/runtime-session-replay.js +0 -123
- package/dist/extensions/agent-browser/lib/runtime-tab-correction.js +0 -65
- package/dist/extensions/agent-browser/lib/runtime-timeouts.js +0 -28
- package/dist/extensions/agent-browser/lib/runtime.js +0 -163
- package/dist/extensions/agent-browser/lib/session-identity.js +0 -51
- package/dist/extensions/agent-browser/lib/session-page-observation.js +0 -357
- package/dist/extensions/agent-browser/lib/session-page-state.js +0 -353
- package/dist/extensions/agent-browser/lib/session-page-types.js +0 -1
- package/dist/extensions/agent-browser/lib/string-enum-schema.js +0 -8
- package/dist/extensions/agent-browser/lib/temp-artifact-budget.js +0 -78
- package/dist/extensions/agent-browser/lib/temp-mutation-queue.js +0 -7
- package/dist/extensions/agent-browser/lib/temp-root-ownership.js +0 -234
- package/dist/extensions/agent-browser/lib/temp-root.js +0 -207
- package/dist/extensions/agent-browser/lib/temp.js +0 -91
- package/dist/extensions/agent-browser/lib/tool-surface.js +0 -239
- package/dist/extensions/agent-browser/lib/upstream-version.js +0 -15
- package/dist/extensions/agent-browser/lib/web-search-providers.js +0 -229
- package/dist/extensions/agent-browser/lib/web-search-request.js +0 -108
- package/dist/extensions/agent-browser/lib/web-search-results.js +0 -281
- package/dist/extensions/agent-browser/lib/web-search-schema.js +0 -82
- package/dist/extensions/agent-browser/lib/web-search.js +0 -149
- package/dist/extensions/agent-browser/lib/webmcp-observation.js +0 -35
- package/dist/extensions/agent-browser/lib/windows-stock-launcher.js +0 -96
- package/dist/scripts/agent-browser-target.mjs +0 -23
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
# Performance
|
|
2
|
+
|
|
3
|
+
The extension avoids redundant work while preserving native browser capabilities,
|
|
4
|
+
validation, redaction, page-target checks, transcript integrity, and cleanup
|
|
5
|
+
ownership. The largest improvements are in large-result processing and offline
|
|
6
|
+
journal conversion. Browser navigation and model latency remain outside those
|
|
7
|
+
CPU measurements.
|
|
8
|
+
|
|
9
|
+
## Captured baseline and integrated result
|
|
10
|
+
|
|
11
|
+
The [retained measurement record](performance/2026-10-12.json) compares baseline
|
|
12
|
+
`41467b70d255c06f5ec5e226a1adec420f8bcf4b` with the integrated runtime, identified by
|
|
13
|
+
source and compiled-tree hashes. Measurements used Node 24.21.0 on macOS arm64,
|
|
14
|
+
Apple M5 Pro, 18 logical CPUs, and 64 GiB RAM. This was a shared host: recorded load
|
|
15
|
+
varied substantially. Paired order was baseline / optimized / optimized / baseline.
|
|
16
|
+
|
|
17
|
+
### Fixed compiled-owner workloads
|
|
18
|
+
|
|
19
|
+
Each side has 14 measured samples per workload, after two warmups in each run.
|
|
20
|
+
Values are pooled medians in milliseconds; CPU is process user + system time.
|
|
21
|
+
Outputs, recovery metadata, ordering, UTF-8, discarded JSON grammar, and recording
|
|
22
|
+
replacement controls passed on both revisions.
|
|
23
|
+
|
|
24
|
+
| Workload | Wall before → after | CPU before → after | CPU reduction |
|
|
25
|
+
| ------------------------------------------------- | ------------------: | -----------------: | ------------: |
|
|
26
|
+
| Redact 1 MiB prose with embedded credentials | 33.05 → 20.43 | 37.82 → 23.82 | 37.0% |
|
|
27
|
+
| Summarize 20,000 snapshot refs | 8.49 → 1.23 | 12.68 → 2.74 | 78.4% |
|
|
28
|
+
| Project batch metadata with 10,000 discarded rows | 22.10 → 0.14 | 26.73 → 0.18 | 99.3% |
|
|
29
|
+
| Merge 10,000 artifact entries | 591.48 → 3.46 | 609.91 → 6.37 | 99.0% |
|
|
30
|
+
| Project 1,000 small journal records | 47.58 → 13.42 | 101.96 → 27.34 | 73.2% |
|
|
31
|
+
|
|
32
|
+
These are deliberate scaling fixtures, not estimates of every ordinary call.
|
|
33
|
+
For example, batch projection's median transient heap delta fell from 59.24 MiB to
|
|
34
|
+
0.064 MiB, but that delta is not a retained-memory or allocation-total measurement.
|
|
35
|
+
Automatic GC and scheduling still produced wall-time outliers; the record retains
|
|
36
|
+
all samples rather than trimming them.
|
|
37
|
+
|
|
38
|
+
### Actual native browser calls
|
|
39
|
+
|
|
40
|
+
The registered extension tools also ran against real agent-browser **0.38.1** and
|
|
41
|
+
headless Chrome for Testing **151.0.7922.77**, using deterministic loopback pages,
|
|
42
|
+
automatic per-root sessions, two warmups, and 30 measured calls per workload on
|
|
43
|
+
each revision. These source-loaded harness calls include native/browser subprocess
|
|
44
|
+
latency; they do not include Pi's model/provider turn or external-site latency.
|
|
45
|
+
|
|
46
|
+
| Warm native workload | Median wall ms before → after |
|
|
47
|
+
| ---------------------------- | ----------------------------: |
|
|
48
|
+
| Title read with current refs | 156.14 → 127.19 |
|
|
49
|
+
| Selector text read | 188.21 → 158.55 |
|
|
50
|
+
| Interactive snapshot | 229.03 → 211.23 |
|
|
51
|
+
| Two-row native getter batch | 187.07 → 157.04 |
|
|
52
|
+
| One-getter browser code cell | 185.03 → 154.88 |
|
|
53
|
+
|
|
54
|
+
Host noise matters: one snapshot run was slower, 239.08 versus 229.25 ms;
|
|
55
|
+
its other pair improved. These samples do not establish a universal browser
|
|
56
|
+
speedup. Instrumented fake-native controls provide stronger work-count evidence:
|
|
57
|
+
qualifying title/batch calls drop from four subprocesses to three; snapshot and
|
|
58
|
+
eval drop from six to five; ref text/fill drop from five to four. No-ref and
|
|
59
|
+
unrelated explicit-session controls keep their existing three subprocesses.
|
|
60
|
+
Within-revision run medians varied by up to about 40 ms, so differences beyond
|
|
61
|
+
the eliminated subprocess are not causally attributed here.
|
|
62
|
+
|
|
63
|
+
Fifteen fresh import/factory samples on each revision remained below the existing
|
|
64
|
+
250 ms budget: baseline 54.91–57.14 ms, optimized 55.29–58.44 ms. Ranges overlap,
|
|
65
|
+
so no startup improvement is claimed. Both sides included optional search-tool
|
|
66
|
+
registration without a search call. This diagnostic uses the locked development
|
|
67
|
+
SDK snapshot; latest official/fork host qualification is a separate delivery gate.
|
|
68
|
+
|
|
69
|
+
### Additional owner-boundary evidence
|
|
70
|
+
|
|
71
|
+
Independent timeout-artifact checks remove cumulative retry waits: 1,000 missing
|
|
72
|
+
paths took a median 50,700.11 → 59.54 ms, while one path stayed 50.58 → 50.66 ms.
|
|
73
|
+
Across three 1,000-path runs, median process-wide sampled peaks were 19.19 MB
|
|
74
|
+
heapUsed and 89.33 MB RSS, compared with 13.92 MB / 82.30 MB before (1 ms sampling). This exchanges modest linear transient memory for
|
|
75
|
+
overlapping independent timers; it does not infer completed native steps.
|
|
76
|
+
|
|
77
|
+
The distinct-session conversion comparison isolates branch retention: its
|
|
78
|
+
pre-retention converter has the baseline retention logic **with the new tokenizer**,
|
|
79
|
+
not the unchanged baseline commit. At 2,000 identities, median process-wide sampled
|
|
80
|
+
peak heapUsed fell from 96.16 to 31.35 MB (1 ms sampling). At 4,000 identities,
|
|
81
|
+
that pre-retention converter aborted with heap exhaustion (exit 134); the optimized
|
|
82
|
+
converter completed with exact source/checksum checks. Both used `--max-old-space-size=128`; the actual total V8 heap limit was
|
|
83
|
+
335,544,320 bytes, not a 128 MiB process-memory cap.
|
|
84
|
+
The separate integrated compiled >1 GiB proof converted 1,612,280,613 source
|
|
85
|
+
bytes to 1,078,631,285 bytes, verifying 34,683 refs, 100 receipts, three branches,
|
|
86
|
+
and 4,001 distinct sessions. Its actual V8 heap limit was 335,544,320 bytes and
|
|
87
|
+
peak RSS was 375,568 KiB. This correctness proof is separate from the smaller
|
|
88
|
+
scaling comparison.
|
|
89
|
+
|
|
90
|
+
Synthetic macOS discovery fixtures removed 360 unnecessary payload filesystem
|
|
91
|
+
requests (601 → 241), with median CPU 19.86 → 10.27 ms. The strict quality-prefix
|
|
92
|
+
fixture reduced duplicate policy passes from three to one, with median wall time
|
|
93
|
+
6,085.27 → 3,665.97 ms. That is the prefix, not the entire quality workflow. Raw
|
|
94
|
+
owner measurements and their fixture protocols are retained alongside the final
|
|
95
|
+
integrated profiles.
|
|
96
|
+
|
|
97
|
+
## Reproduce the warm-path profile
|
|
98
|
+
|
|
99
|
+
Use the repository's Node and npm versions, install its locked dependencies, and
|
|
100
|
+
build the target first:
|
|
101
|
+
|
|
102
|
+
```sh
|
|
103
|
+
npm ci --ignore-scripts
|
|
104
|
+
npm run build
|
|
105
|
+
npm run performance-profile -- --samples 7 > performance.json
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
The profiler imports compiled production owners and checks independently specified
|
|
109
|
+
outputs. It runs two warmups and records every measured sample for five fixed
|
|
110
|
+
workloads: 1 MiB prose redaction, a 20,000-ref snapshot summary, metadata projection
|
|
111
|
+
of a batch containing 10,000 data rows, a 10,000-entry artifact manifest, and 1,000
|
|
112
|
+
small journal projections. It does not launch a browser, Pi, npm, or a subprocess.
|
|
113
|
+
|
|
114
|
+
To compare revisions, build each in its own worktree and use the **same profiler**
|
|
115
|
+
against both compiled trees. Alternate the order to reduce host-load bias:
|
|
116
|
+
|
|
117
|
+
```sh
|
|
118
|
+
node --expose-gc scripts/profile-performance.mjs --root ../baseline --samples 7 > baseline-a.json
|
|
119
|
+
node --expose-gc scripts/profile-performance.mjs --root . --samples 7 > optimized-a.json
|
|
120
|
+
node --expose-gc scripts/profile-performance.mjs --root . --samples 7 > optimized-b.json
|
|
121
|
+
node --expose-gc scripts/profile-performance.mjs --root ../baseline --samples 7 > baseline-b.json
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
Keep Node, fixtures, configuration, and hardware constant. Do not run broad tests
|
|
125
|
+
or builds alongside timing samples. Source, compiled-tree, lockfile, fixture, and
|
|
126
|
+
profiler hashes identify the actual inputs; a package version alone is not a
|
|
127
|
+
revision identifier.
|
|
128
|
+
|
|
129
|
+
Wall time excludes imports, fixture construction, explicit pre-sample GC, and
|
|
130
|
+
output assertions. CPU includes process user and system time during that interval.
|
|
131
|
+
Heap deltas are transient `heapUsed` differences with the output still alive—not
|
|
132
|
+
allocation totals, retained memory, or peaks. RSS is process-wide; the reported
|
|
133
|
+
high-water mark also includes setup. Shared-host load and automatic GC remain
|
|
134
|
+
sources of variation. There are no warm-path timing thresholds.
|
|
135
|
+
|
|
136
|
+
Entrypoint startup has a separate fresh-process profiler and its existing 250 ms
|
|
137
|
+
budget:
|
|
138
|
+
|
|
139
|
+
```sh
|
|
140
|
+
npm run verify -- startup-profile --samples 3
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
That measurement is extension import/factory time, not full Pi startup or browser
|
|
144
|
+
launch time. See [the proof contract](REFERENCE.md#proof-and-verification).
|
|
145
|
+
|
|
146
|
+
## What changed
|
|
147
|
+
|
|
148
|
+
### Results and command planning
|
|
149
|
+
|
|
150
|
+
- Embedded-JSON redaction searches for structured-value openers and copies ordinary
|
|
151
|
+
prose in slices rather than appending every character. Balanced-value parsing,
|
|
152
|
+
malformed-input handling, credential redaction, and unchanged output survive.
|
|
153
|
+
- Snapshot summaries count the existing refs without constructing and sorting a
|
|
154
|
+
complete ref list that the summary never uses.
|
|
155
|
+
- Compact batch metadata excludes `data` and `stdout` before recursive projection
|
|
156
|
+
and redaction. Required metadata, warnings, and exact recovery actions remain;
|
|
157
|
+
full result and replay ownership do not move into the compact observation.
|
|
158
|
+
- Artifact-manifest merging materializes recording candidates only when the entry
|
|
159
|
+
can supersede a recording. Ordinary image entries no longer copy a growing map
|
|
160
|
+
for a check that immediately returns empty. Recording identity and ordering stay
|
|
161
|
+
unchanged.
|
|
162
|
+
- Argv descriptors reuse their already-cleaned command tokens. Launch-flag checks
|
|
163
|
+
discover command position only for the special `wait --state` distinction;
|
|
164
|
+
native boolean and restore flag semantics remain intact.
|
|
165
|
+
|
|
166
|
+
### Journal and artifact storage
|
|
167
|
+
|
|
168
|
+
Journal projection uses the installed streaming parser's raw tokenizer instead of
|
|
169
|
+
building a Node stream pipeline for each record. Fatal incremental UTF-8 decoding,
|
|
170
|
+
full JSON validation—including discarded values—and an explicit end-of-input
|
|
171
|
+
flush remain required. The parser is still loaded lazily.
|
|
172
|
+
|
|
173
|
+
Both offline converters retain a branch projection only until its last source
|
|
174
|
+
child consumes it. Linear histories no longer retain every historical state map;
|
|
175
|
+
real forks keep the independent state they need. Conversion still verifies the
|
|
176
|
+
unchanged source and publishes an exclusive separate copy, never rewriting the
|
|
177
|
+
original journal. The large-journal proof includes an individual string above
|
|
178
|
+
Node's string ceiling and 4,000 distinct session identities:
|
|
179
|
+
|
|
180
|
+
```sh
|
|
181
|
+
npm run build
|
|
182
|
+
node --max-old-space-size=128 test/helpers/large-browser-journal.mjs
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
The `128` setting limits V8 old space, not total V8 heap or process RSS. Report
|
|
186
|
+
those separately. See [session storage](SESSION_STORAGE.md#verification).
|
|
187
|
+
|
|
188
|
+
Artifact-retention scans overlap four independent file stats at a time, preserving
|
|
189
|
+
scan order before eviction. This does not change the secure socket-directory
|
|
190
|
+
traversal or its validation/error order.
|
|
191
|
+
|
|
192
|
+
### Browser execution and timeout recovery
|
|
193
|
+
|
|
194
|
+
A daemon observation may be reused only within one locked call, for its exact
|
|
195
|
+
socket/namespace/session identity, before any intervening browser helper. It is
|
|
196
|
+
not a cross-call cache. Replacement and unknown-generation checks remain
|
|
197
|
+
fail-closed; capture still obtains its distinct post-operation generation receipt.
|
|
198
|
+
Calls with no redundant observation keep their existing probes.
|
|
199
|
+
|
|
200
|
+
Independent timeout-artifact retry windows now overlap. Each declared path still
|
|
201
|
+
gets up to three checks, 25 ms apart; results retain native plan order and page
|
|
202
|
+
inspection starts afterward. A file finishing after **its own** window may remain
|
|
203
|
+
missing. Existing files and recovered URLs remain current-state evidence, never
|
|
204
|
+
proof that a timed-out step executed. See
|
|
205
|
+
[the timeout contract](TOOL_CONTRACT.md#details).
|
|
206
|
+
|
|
207
|
+
### Discovery, verification, and packages
|
|
208
|
+
|
|
209
|
+
macOS Electron discovery stops after a missing framework instead of also probing
|
|
210
|
+
its payload. Positive app verification and discovery order are unchanged.
|
|
211
|
+
|
|
212
|
+
The quality facade runs scope and suppression-policy validation once through
|
|
213
|
+
`lint`, rather than also repeating those checks as standalone steps. The same
|
|
214
|
+
strict checker, compiler, formatting, tests, mutation probes, and document checks
|
|
215
|
+
remain required.
|
|
216
|
+
|
|
217
|
+
The build retains the complete emitted checkout tree. npm selects the bundled
|
|
218
|
+
extension, unchanged permissioned code worker, and standalone helper bundles under
|
|
219
|
+
`dist/packaged/lib/`. Package-only helpers do not overwrite raw checkout modules:
|
|
220
|
+
that would split shared async-local process context and temporary-resource owners.
|
|
221
|
+
Pi peers stay external and host-provided; source installs keep the existing
|
|
222
|
+
`prepare` build. The package consumer checks execute config, offline conversion,
|
|
223
|
+
the permissioned worker, and real Pi SDK/CLI loading without optional host peers
|
|
224
|
+
installed in the consumer.
|
|
225
|
+
|
|
226
|
+
## Preserved boundaries and rejected approaches
|
|
227
|
+
|
|
228
|
+
No cross-call config/secret/DOM cache, pooled JavaScript worker, new recipe layer,
|
|
229
|
+
or weaker validation gate was introduced. Fresh code globals, ordered secrets,
|
|
230
|
+
rate spacing, cancellation, shared locks, live page checks, redaction, and
|
|
231
|
+
branch-visible replay retain their existing owners.
|
|
232
|
+
|
|
233
|
+
Parallel socket-directory traversal was not adopted: candidate traversal and
|
|
234
|
+
native unknown-Dirent fallback behavior did not preserve the baseline's integrity
|
|
235
|
+
and failure-order controls. The original traversal remains. Helper bundles that
|
|
236
|
+
overwrite emitted checkout modules were also rejected and replaced with separate
|
|
237
|
+
package-only outputs. Smaller whitespace-only bundles did not demonstrate a
|
|
238
|
+
startup improvement beyond host noise.
|
|
239
|
+
|
|
240
|
+
These decisions bound the performance claims. Synthetic CPU/scaling improvements
|
|
241
|
+
are not an equivalent speedup for arbitrary browser workflows, external sites,
|
|
242
|
+
model responses, or installation time. Windows qualification remains subject to
|
|
243
|
+
the explicit owner waiver in [release guidance](RELEASE.md#current-0616-rollout-waiver).
|