opensteer 0.9.5 → 0.9.7

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.
Files changed (35) hide show
  1. package/dist/{chunk-7LQL5YUR.js → chunk-3OHKIPBD.js} +571 -738
  2. package/dist/chunk-3OHKIPBD.js.map +1 -0
  3. package/dist/chunk-52UNH5UW.js +458 -0
  4. package/dist/chunk-52UNH5UW.js.map +1 -0
  5. package/dist/{chunk-GSCQQKZZ.js → chunk-PJXN7HED.js} +334 -18
  6. package/dist/chunk-PJXN7HED.js.map +1 -0
  7. package/dist/{chunk-ZRF7WMS3.js → chunk-R33BXCMQ.js} +16 -7
  8. package/dist/chunk-R33BXCMQ.js.map +1 -0
  9. package/dist/{chunk-T5P2QGZ3.js → chunk-U4BUCIZ4.js} +153 -12
  10. package/dist/chunk-U4BUCIZ4.js.map +1 -0
  11. package/dist/cli/bin.cjs +1421 -824
  12. package/dist/cli/bin.cjs.map +1 -1
  13. package/dist/cli/bin.js +286 -129
  14. package/dist/cli/bin.js.map +1 -1
  15. package/dist/index.cjs +1117 -703
  16. package/dist/index.cjs.map +1 -1
  17. package/dist/index.d.cts +58 -53
  18. package/dist/index.d.ts +58 -53
  19. package/dist/index.js +4 -4
  20. package/dist/local-view/public/assets/app.js +10 -1
  21. package/dist/local-view/serve-entry.cjs +6815 -1272
  22. package/dist/local-view/serve-entry.cjs.map +1 -1
  23. package/dist/local-view/serve-entry.js +2 -2
  24. package/dist/opensteer-CY2QUJEG.js +6 -0
  25. package/dist/{opensteer-T2JENADR.js.map → opensteer-CY2QUJEG.js.map} +1 -1
  26. package/dist/{session-control-M3JD7ZKA.js → session-control-FIP6ZJLH.js} +4 -4
  27. package/dist/{session-control-M3JD7ZKA.js.map → session-control-FIP6ZJLH.js.map} +1 -1
  28. package/package.json +7 -7
  29. package/dist/chunk-7D45QUZ3.js +0 -332
  30. package/dist/chunk-7D45QUZ3.js.map +0 -1
  31. package/dist/chunk-7LQL5YUR.js.map +0 -1
  32. package/dist/chunk-GSCQQKZZ.js.map +0 -1
  33. package/dist/chunk-T5P2QGZ3.js.map +0 -1
  34. package/dist/chunk-ZRF7WMS3.js.map +0 -1
  35. package/dist/opensteer-T2JENADR.js +0 -6
package/dist/index.d.cts CHANGED
@@ -398,6 +398,7 @@ interface BrowserCapabilities {
398
398
  }
399
399
 
400
400
  interface PostLoadTrackerSnapshot {
401
+ readonly lastMutationAt: number;
401
402
  readonly lastTrackedNetworkActivityAt: number;
402
403
  readonly trackedPendingFetches: number;
403
404
  readonly trackedPendingXhrs: number;
@@ -415,6 +416,8 @@ interface ActionBoundaryOutcome {
415
416
  readonly trigger: ActionBoundarySettleTrigger;
416
417
  readonly crossDocument: boolean;
417
418
  readonly bootstrapSettled: boolean;
419
+ readonly observedMutationQuietMs?: number;
420
+ readonly postLoadHandled?: boolean;
418
421
  readonly timedOutPhase?: ActionBoundaryTimedOutPhase;
419
422
  }
420
423
 
@@ -745,6 +748,7 @@ interface BrowserInspector {
745
748
  readonly pageRef: PageRef;
746
749
  readonly timeoutMs?: number;
747
750
  readonly settleMs?: number;
751
+ readonly initialQuietMs?: number;
748
752
  readonly scope?: VisualStabilityScope;
749
753
  }): Promise<void>;
750
754
  waitForPostLoadQuiet(input: {
@@ -1339,6 +1343,20 @@ interface OpensteerError {
1339
1343
  readonly capability?: OpensteerCapability;
1340
1344
  readonly details?: Readonly<Record<string, unknown>>;
1341
1345
  }
1346
+ interface OpensteerErrorOptions {
1347
+ readonly cause?: unknown;
1348
+ readonly retriable?: boolean;
1349
+ readonly capability?: OpensteerCapability;
1350
+ readonly details?: Readonly<Record<string, unknown>>;
1351
+ }
1352
+ declare class OpensteerProtocolError extends Error {
1353
+ readonly code: OpensteerErrorCode;
1354
+ readonly retriable: boolean;
1355
+ readonly capability: OpensteerCapability | undefined;
1356
+ readonly details: Readonly<Record<string, unknown>> | undefined;
1357
+ constructor(code: OpensteerErrorCode, message: string, options?: OpensteerErrorOptions);
1358
+ }
1359
+ declare function isOpensteerProtocolError(value: unknown): value is OpensteerProtocolError;
1342
1360
 
1343
1361
  type OpensteerArtifactKind = "screenshot" | "html-snapshot" | "dom-snapshot" | "cookies" | "storage-snapshot" | "script-source";
1344
1362
  type ArtifactRelation = "result" | "before" | "after" | "capture" | "evidence" | "snapshot";
@@ -1614,27 +1632,11 @@ interface OpensteerStealthProfileInput {
1614
1632
  readonly locale?: string;
1615
1633
  readonly timezoneId?: string;
1616
1634
  }
1617
- interface OpensteerResolvedTarget {
1618
- readonly pageRef: PageRef;
1619
- readonly frameRef: FrameRef;
1620
- readonly documentRef: DocumentRef;
1621
- readonly documentEpoch: DocumentEpoch;
1622
- readonly nodeRef: NodeRef;
1635
+ interface OpensteerActionResult {
1623
1636
  readonly tagName: string;
1624
- readonly pathHint: string;
1625
1637
  readonly persist?: string;
1626
- readonly selectorUsed?: string;
1627
- }
1628
- interface OpensteerActionResult {
1629
- readonly target: OpensteerResolvedTarget;
1630
- readonly point?: {
1631
- readonly x: number;
1632
- readonly y: number;
1633
- };
1634
1638
  }
1635
- interface OpensteerSessionState {
1636
- readonly sessionRef: SessionRef;
1637
- readonly pageRef: PageRef;
1639
+ interface OpensteerNavigationSummary {
1638
1640
  readonly url: string;
1639
1641
  readonly title: string;
1640
1642
  }
@@ -1645,7 +1647,7 @@ interface OpensteerOpenInput {
1645
1647
  readonly launch?: OpensteerBrowserLaunchOptions;
1646
1648
  readonly context?: OpensteerBrowserContextOptions;
1647
1649
  }
1648
- interface OpensteerOpenOutput extends OpensteerSessionState {
1650
+ interface OpensteerOpenOutput extends OpensteerNavigationSummary {
1649
1651
  }
1650
1652
  interface OpensteerPageListInput {
1651
1653
  }
@@ -1657,12 +1659,13 @@ interface OpensteerPageNewInput {
1657
1659
  readonly url?: string;
1658
1660
  readonly openerPageRef?: PageRef;
1659
1661
  }
1660
- interface OpensteerPageNewOutput extends OpensteerSessionState {
1662
+ interface OpensteerPageNewOutput extends OpensteerNavigationSummary {
1663
+ readonly pageRef: PageRef;
1661
1664
  }
1662
1665
  interface OpensteerPageActivateInput {
1663
1666
  readonly pageRef: PageRef;
1664
1667
  }
1665
- interface OpensteerPageActivateOutput extends OpensteerSessionState {
1668
+ interface OpensteerPageActivateOutput extends OpensteerNavigationSummary {
1666
1669
  }
1667
1670
  interface OpensteerPageCloseInput {
1668
1671
  readonly pageRef?: PageRef;
@@ -1676,7 +1679,7 @@ interface OpensteerPageGotoInput {
1676
1679
  readonly url: string;
1677
1680
  readonly captureNetwork?: string;
1678
1681
  }
1679
- interface OpensteerPageGotoOutput extends OpensteerSessionState {
1682
+ interface OpensteerPageGotoOutput extends OpensteerNavigationSummary {
1680
1683
  }
1681
1684
  interface OpensteerPageEvaluateInput {
1682
1685
  readonly script: string;
@@ -1752,39 +1755,22 @@ interface OpensteerComputerScreenshotOptions {
1752
1755
  readonly includeCursor?: boolean;
1753
1756
  readonly disableAnnotations?: readonly OpensteerComputerAnnotation[];
1754
1757
  }
1758
+ interface OpensteerScreenshotSummary {
1759
+ readonly payload: ExternalBinaryLocation;
1760
+ readonly format: "png" | "jpeg" | "webp";
1761
+ readonly size: Size;
1762
+ readonly coordinateSpace: CoordinateSpace;
1763
+ readonly clip?: Rect;
1764
+ }
1755
1765
  interface OpensteerComputerExecuteInput {
1756
1766
  readonly action: OpensteerComputerAction;
1757
1767
  readonly screenshot?: OpensteerComputerScreenshotOptions;
1758
1768
  readonly captureNetwork?: string;
1759
1769
  }
1760
- interface OpensteerComputerDisplayScale {
1761
- readonly x: number;
1762
- readonly y: number;
1763
- }
1764
- interface OpensteerComputerTracePoint {
1765
- readonly role: "point" | "start" | "end";
1766
- readonly point: Point;
1767
- readonly hitTest?: HitTestResult;
1768
- readonly target?: OpensteerResolvedTarget;
1769
- }
1770
- interface OpensteerComputerTraceEnrichment {
1771
- readonly points: readonly OpensteerComputerTracePoint[];
1772
- }
1773
- interface OpensteerComputerExecuteTiming {
1774
- readonly actionMs: number;
1775
- readonly waitMs: number;
1776
- readonly totalMs: number;
1777
- }
1778
1770
  interface OpensteerComputerExecuteOutput {
1779
- readonly action: OpensteerComputerAction;
1780
- readonly pageRef: PageRef;
1781
- readonly screenshot: ScreenshotArtifact;
1782
- readonly displayViewport: ViewportMetrics;
1783
- readonly nativeViewport: ViewportMetrics;
1784
- readonly displayScale: OpensteerComputerDisplayScale;
1785
- readonly events: readonly StepEvent[];
1786
- readonly timing: OpensteerComputerExecuteTiming;
1787
- readonly trace?: OpensteerComputerTraceEnrichment;
1771
+ readonly url: string;
1772
+ readonly title: string;
1773
+ readonly screenshot: OpensteerScreenshotSummary;
1788
1774
  }
1789
1775
  declare const opensteerSemanticOperationNames: readonly ["session.open", "page.list", "page.new", "page.activate", "page.close", "page.goto", "page.evaluate", "page.add-init-script", "page.snapshot", "dom.click", "dom.hover", "dom.input", "dom.scroll", "dom.extract", "network.query", "network.detail", "interaction.capture", "interaction.get", "interaction.diff", "interaction.replay", "artifact.read", "session.cookies", "session.storage", "session.state", "session.fetch", "scripts.capture", "scripts.beautify", "scripts.deobfuscate", "scripts.sandbox", "captcha.solve", "computer.execute", "session.close"];
1790
1776
  type OpensteerSemanticOperationName = (typeof opensteerSemanticOperationNames)[number];
@@ -1871,7 +1857,11 @@ interface PositionMatchClause {
1871
1857
  readonly kind: "position";
1872
1858
  readonly axis: "nthOfType" | "nthChild";
1873
1859
  }
1874
- type MatchClause = AttributeMatchClause | PositionMatchClause;
1860
+ interface TextMatchClause {
1861
+ readonly kind: "text";
1862
+ readonly value: string;
1863
+ }
1864
+ type MatchClause = AttributeMatchClause | PositionMatchClause | TextMatchClause;
1875
1865
  interface PathNodePosition {
1876
1866
  readonly nthChild: number;
1877
1867
  readonly nthOfType: number;
@@ -1921,18 +1911,22 @@ interface DomActionSettleOptions {
1921
1911
  readonly snapshot?: ActionBoundarySnapshot;
1922
1912
  readonly signal: AbortSignal;
1923
1913
  remainingMs(): number | undefined;
1924
- policySettle(pageRef: PageRef, trigger: ActionBoundarySettleTrigger): Promise<void>;
1914
+ policySettle(pageRef: PageRef, trigger: ActionBoundarySettleTrigger, boundary?: ActionBoundaryOutcome): Promise<void>;
1925
1915
  }
1926
1916
  type DomPointerHitRelation = "self" | "descendant" | "ancestor" | "same-owner" | "outside" | "unknown";
1927
1917
  interface DomPointerHitAssessment {
1928
1918
  readonly relation: DomPointerHitRelation;
1929
1919
  readonly blocking: boolean;
1930
1920
  readonly ambiguous?: boolean;
1921
+ readonly blockingDescription?: string;
1931
1922
  readonly canonicalTarget?: NodeLocator;
1932
1923
  readonly hitOwner?: NodeLocator;
1933
1924
  }
1925
+ interface BuildReplayPathOptions {
1926
+ readonly enableTextMatch?: boolean;
1927
+ }
1934
1928
  interface DomActionBridge {
1935
- buildReplayPath(locator: NodeLocator): Promise<ReplayElementPath>;
1929
+ buildReplayPath(locator: NodeLocator, options?: BuildReplayPathOptions): Promise<ReplayElementPath>;
1936
1930
  inspectActionTarget(locator: NodeLocator): Promise<DomActionTargetInspection>;
1937
1931
  canonicalizePointerTarget(locator: NodeLocator): Promise<NodeLocator>;
1938
1932
  classifyPointerHit(input: {
@@ -2327,6 +2321,8 @@ interface SettleContext extends SettleDelayInput {
2327
2321
  readonly pageRef: PageRef;
2328
2322
  readonly signal: AbortSignal;
2329
2323
  readonly remainingMs: number | undefined;
2324
+ readonly observedMutationQuietMs?: number;
2325
+ readonly postLoadHandled?: boolean;
2330
2326
  }
2331
2327
  interface SettleObserver {
2332
2328
  settle(input: SettleContext): Promise<boolean>;
@@ -2436,6 +2432,7 @@ interface ResolvedDomTarget {
2436
2432
  }
2437
2433
  interface DomBuildPathInput {
2438
2434
  readonly locator: NodeLocator;
2435
+ readonly enableTextMatch?: boolean;
2439
2436
  }
2440
2437
  interface DomResolveTargetInput {
2441
2438
  readonly pageRef: PageRef;
@@ -2692,6 +2689,7 @@ interface WorkspaceBrowserManifest {
2692
2689
  }
2693
2690
  interface WorkspaceLiveBrowserRecord {
2694
2691
  readonly mode: "persistent";
2692
+ readonly ownership: "owned" | "attached";
2695
2693
  readonly engine: OpensteerEngineName;
2696
2694
  readonly endpoint?: string;
2697
2695
  readonly baseUrl?: string;
@@ -3035,6 +3033,12 @@ interface OpensteerCloudSessionDescriptor {
3035
3033
  }
3036
3034
  interface OpensteerCloudSessionState {
3037
3035
  readonly status?: string;
3036
+ readonly runtimeWorkerId?: string;
3037
+ readonly registryDesiredRevision?: number;
3038
+ readonly registryLoadedRevision?: number;
3039
+ readonly idleTimeoutMs?: number;
3040
+ readonly absoluteTtlMs?: number;
3041
+ readonly expiresAt?: number;
3038
3042
  }
3039
3043
  interface CloudRequestOptions {
3040
3044
  readonly signal?: AbortSignal | undefined;
@@ -3084,6 +3088,7 @@ interface PersistedSessionRecordBase {
3084
3088
  interface PersistedLocalBrowserSessionRecord extends PersistedSessionRecordBase {
3085
3089
  readonly provider: "local";
3086
3090
  readonly engine: "playwright" | "abp";
3091
+ readonly ownership?: Exclude<OpensteerSessionOwnership, "managed">;
3087
3092
  readonly endpoint?: string;
3088
3093
  readonly baseUrl?: string;
3089
3094
  readonly remoteDebuggingUrl?: string;
@@ -3143,4 +3148,4 @@ declare function discoverLocalCdpBrowsers(input?: {
3143
3148
  readonly timeoutMs?: number;
3144
3149
  }): Promise<readonly LocalCdpBrowserCandidate[]>;
3145
3150
 
3146
- export { type AnchorTargetRef, type AppendTraceEntryInput, type ArtifactManifest, type ArtifactPayloadType, type ArtifactScope, type BrowserProfileArchiveFormat, type BrowserProfileCreateRequest, type BrowserProfileDescriptor, type BrowserProfileImportCreateRequest, type BrowserProfileImportCreateResponse, type BrowserProfileImportDescriptor, type BrowserProfileImportStatus, type BrowserProfileListResponse, type BrowserProfileStatus, type CloudBrowserContextConfig, type CloudBrowserExtensionConfig, type CloudBrowserLaunchConfig, type CloudBrowserProfileLaunchPreference, type CloudBrowserProfilePreference, type CloudFingerprintMode, type CloudFingerprintPreference, type CloudGeolocation, type CloudProxyMode, type CloudProxyPreference, type CloudProxyProtocol, type CloudRegistryImportEntry, type CloudRegistryImportRequest, type CloudRegistryImportResponse, type CloudRequestPlanImportEntry, type CloudRequestPlanImportRequest, type CloudSessionLaunchConfig, type CloudSessionSourceType, type CloudSessionStatus, type CloudSessionSummary, type CloudSessionVisibilityScope, type CloudViewport, type ContextHop, type CreateFilesystemOpensteerWorkspaceOptions, type CreateTraceRunInput, DEFAULT_OPENSTEER_ENGINE, DEFERRED_MATCH_ATTR_KEYS, type DescriptorRecord, type DescriptorRegistryStore, type DomActionBridge, type DomActionBridgeProvider, type DomActionOutcome, type DomActionPolicyOperation, type DomActionScrollAlignment, type DomActionScrollOptions, type DomActionSettleOptions, type DomActionTargetInspection, type DomArrayFieldSelector, type DomArrayRowMetadata, type DomArraySelector, type DomBuildPathInput, type DomClickInput, type DomDescriptorPayload, type DomDescriptorRecord, type DomDescriptorStore, type DomExtractArrayRowsInput, type DomExtractFieldSelector, type DomExtractFieldsInput, type DomExtractedArrayRow, type DomHoverInput, type DomInputInput, type DomPath, type DomReadDescriptorInput, type DomResolveTargetInput, type DomRuntime, type DomScrollInput, type DomTargetRef, type DomWriteDescriptorInput, type ElementPath, ElementPathError, type FallbackDecision, type FallbackEvaluationInput, type FallbackPolicy, FilesystemArtifactStore, type FilesystemObservationStore, type FilesystemOpensteerWorkspace, type InspectedCdpEndpoint, type InteractionTraceRecord, type InteractionTraceRegistryStore, type JsonArray, type JsonObject, type JsonPrimitive, type JsonValue, type ListObservationArtifactsInput, type ListObservationEventsInput, type LocalCdpBrowserCandidate, type LocalChromeProfileDescriptor, MATCH_ATTRIBUTE_PRIORITY, type MatchClause, OPENSTEER_DOM_ACTION_BRIDGE_SYMBOL, OPENSTEER_ENGINE_NAMES, OPENSTEER_FILESYSTEM_WORKSPACE_LAYOUT, OPENSTEER_FILESYSTEM_WORKSPACE_VERSION, Opensteer, type OpensteerAddInitScriptOptions, type OpensteerArtifactStore, OpensteerAttachAmbiguousError, type OpensteerBrowserCloneOptions, type OpensteerBrowserController, OpensteerBrowserManager, type OpensteerBrowserManagerOptions, type OpensteerBrowserState, type OpensteerBrowserStatus, type OpensteerClickOptions, OpensteerCloudClient, type OpensteerCloudConfig, type OpensteerCloudProviderOptions, type OpensteerCloudSessionCreateInput, type OpensteerCloudSessionDescriptor, type OpensteerComputerExecuteOptions, type OpensteerCookieJar, type OpensteerDomController, type OpensteerEngineName, type OpensteerExtractOptions, type OpensteerExtractionDescriptorPayload, type OpensteerExtractionDescriptorRecord, type OpensteerExtractionDescriptorStore, type OpensteerFetchOptions, type OpensteerFetchedRouteResponse, type OpensteerGotoOptions, type OpensteerInputOptions, type OpensteerInterceptScriptOptions, type OpensteerLiveSessionProvider, type OpensteerLocalProviderOptions, type OpensteerNetworkController, type OpensteerNetworkDetailResult, type OpensteerNetworkQueryOptions, type OpensteerNetworkQueryResult, type OpensteerOptions, type OpensteerPolicy, type OpensteerProviderMode, type OpensteerProviderOptions, type OpensteerProviderSource, type OpensteerResolvedProvider, type OpensteerRouteHandlerResult, type OpensteerRouteOptions, type OpensteerRouteRegistration, type OpensteerRuntimeOptions, type OpensteerScrollOptions, type OpensteerSessionRuntimeOptions, type OpensteerStorageMap, type OpensteerTargetOptions, type OpensteerTraceStore, type OpensteerWaitForPageOptions, type OpensteerWorkspaceManifest, type PathNode, type PersistedCloudSessionRecord, type PersistedLocalBrowserSessionRecord, type PersistedSessionRecord, type ProtocolArtifactDelivery, type RegistryProvenance, type RegistryRecord, type ReplayElementPath, type RequestPlanRecord, type RequestPlanRegistryStore, type ResolveRegistryRecordInput, type ResolvedDomTarget, type RetryDecision, type RetryEvaluationInput, type RetryPolicy, STABLE_PRIMARY_ATTR_KEYS, type SavedNetworkQueryInput, type SavedNetworkStore, type SettleContext, type SettleDelayInput, type SettleObserver, type SettlePolicy, type SettleTrigger, type StoredArtifactPayload, type StoredArtifactRecord, type StructuralElementAnchor, type StructuredArtifactKind, type SyncBrowserProfileCookiesInput, type TimeoutExecutionContext, type TimeoutPolicy, type TimeoutResolutionInput, type TraceEntryRecord, type TraceRunManifest, type UpdateRequestPlanFreshnessInput, type WorkspaceBrowserBootstrap, type WorkspaceBrowserManifest, type WorkspaceLiveBrowserRecord, type WriteBinaryArtifactInput, type WriteDescriptorInput, type WriteInteractionTraceInput, type WriteRequestPlanInput, type WriteStructuredArtifactInput, assertProviderSupportsEngine, buildArrayFieldPathCandidates, buildDomDescriptorKey, buildDomDescriptorPayload, buildDomDescriptorVersion, buildPathCandidates, buildPathSelectorHint, buildSegmentSelector, clearPersistedSessionRecord, cloneElementPath, cloneReplayElementPath, cloneStructuralElementAnchor, createArtifactStore, createDomDescriptorStore, createDomRuntime, createFilesystemOpensteerWorkspace, createObservationStore, createOpensteerExtractionDescriptorStore, defaultFallbackPolicy, defaultPolicy, defaultRetryPolicy, defaultSettlePolicy, defaultTimeoutPolicy, delayWithSignal, discoverLocalCdpBrowsers, hashDomDescriptorPersist, inspectCdpEndpoint, isCurrentUrlField, isValidCssAttributeKey, listLocalChromeProfiles, manifestToExternalBinaryLocation, normalizeExtractedValue, normalizeObservabilityConfig, normalizeOpensteerEngineName, normalizeOpensteerProviderMode, normalizeWorkspaceId, parseDomDescriptorRecord, parseExtractionDescriptorRecord, readPersistedCloudSessionRecord, readPersistedLocalBrowserSessionRecord, readPersistedSessionRecord, resolveCloudConfig, resolveCloudSessionRecordPath, resolveDomActionBridge, resolveExtractedValueInContext, resolveFilesystemWorkspacePath, resolveLiveSessionRecordPath, resolveLocalSessionRecordPath, resolveOpensteerEngineName, resolveOpensteerProvider, resolveOpensteerRuntimeConfig, runWithPolicyTimeout, sanitizeElementPath, sanitizeReplayElementPath, sanitizeStructuralElementAnchor, settleWithPolicy, shouldKeepAttributeForPath, writePersistedSessionRecord };
3151
+ export { type AnchorTargetRef, type AppendTraceEntryInput, type ArtifactManifest, type ArtifactPayloadType, type ArtifactScope, type BrowserProfileArchiveFormat, type BrowserProfileCreateRequest, type BrowserProfileDescriptor, type BrowserProfileImportCreateRequest, type BrowserProfileImportCreateResponse, type BrowserProfileImportDescriptor, type BrowserProfileImportStatus, type BrowserProfileListResponse, type BrowserProfileStatus, type CloudBrowserContextConfig, type CloudBrowserExtensionConfig, type CloudBrowserLaunchConfig, type CloudBrowserProfileLaunchPreference, type CloudBrowserProfilePreference, type CloudFingerprintMode, type CloudFingerprintPreference, type CloudGeolocation, type CloudProxyMode, type CloudProxyPreference, type CloudProxyProtocol, type CloudRegistryImportEntry, type CloudRegistryImportRequest, type CloudRegistryImportResponse, type CloudRequestPlanImportEntry, type CloudRequestPlanImportRequest, type CloudSessionLaunchConfig, type CloudSessionSourceType, type CloudSessionStatus, type CloudSessionSummary, type CloudSessionVisibilityScope, type CloudViewport, type ContextHop, type CreateFilesystemOpensteerWorkspaceOptions, type CreateTraceRunInput, DEFAULT_OPENSTEER_ENGINE, DEFERRED_MATCH_ATTR_KEYS, type DescriptorRecord, type DescriptorRegistryStore, type DomActionBridge, type DomActionBridgeProvider, type DomActionOutcome, type DomActionPolicyOperation, type DomActionScrollAlignment, type DomActionScrollOptions, type DomActionSettleOptions, type DomActionTargetInspection, type DomArrayFieldSelector, type DomArrayRowMetadata, type DomArraySelector, type DomBuildPathInput, type DomClickInput, type DomDescriptorPayload, type DomDescriptorRecord, type DomDescriptorStore, type DomExtractArrayRowsInput, type DomExtractFieldSelector, type DomExtractFieldsInput, type DomExtractedArrayRow, type DomHoverInput, type DomInputInput, type DomPath, type DomReadDescriptorInput, type DomResolveTargetInput, type DomRuntime, type DomScrollInput, type DomTargetRef, type DomWriteDescriptorInput, type ElementPath, ElementPathError, type FallbackDecision, type FallbackEvaluationInput, type FallbackPolicy, FilesystemArtifactStore, type FilesystemObservationStore, type FilesystemOpensteerWorkspace, type InspectedCdpEndpoint, type InteractionTraceRecord, type InteractionTraceRegistryStore, type JsonArray, type JsonObject, type JsonPrimitive, type JsonValue, type ListObservationArtifactsInput, type ListObservationEventsInput, type LocalCdpBrowserCandidate, type LocalChromeProfileDescriptor, MATCH_ATTRIBUTE_PRIORITY, type MatchClause, OPENSTEER_DOM_ACTION_BRIDGE_SYMBOL, OPENSTEER_ENGINE_NAMES, OPENSTEER_FILESYSTEM_WORKSPACE_LAYOUT, OPENSTEER_FILESYSTEM_WORKSPACE_VERSION, Opensteer, type OpensteerAddInitScriptOptions, type OpensteerArtifactStore, OpensteerAttachAmbiguousError, type OpensteerBrowserCloneOptions, type OpensteerBrowserController, OpensteerBrowserManager, type OpensteerBrowserManagerOptions, type OpensteerBrowserState, type OpensteerBrowserStatus, type OpensteerClickOptions, OpensteerCloudClient, type OpensteerCloudConfig, type OpensteerCloudProviderOptions, type OpensteerCloudSessionCreateInput, type OpensteerCloudSessionDescriptor, type OpensteerComputerExecuteOptions, type OpensteerCookieJar, type OpensteerDomController, type OpensteerEngineName, type OpensteerError, type OpensteerErrorCode, type OpensteerExtractOptions, type OpensteerExtractionDescriptorPayload, type OpensteerExtractionDescriptorRecord, type OpensteerExtractionDescriptorStore, type OpensteerFetchOptions, type OpensteerFetchedRouteResponse, type OpensteerGotoOptions, type OpensteerInputOptions, type OpensteerInterceptScriptOptions, type OpensteerLiveSessionProvider, type OpensteerLocalProviderOptions, type OpensteerNetworkController, type OpensteerNetworkDetailResult, type OpensteerNetworkQueryOptions, type OpensteerNetworkQueryResult, type OpensteerOptions, type OpensteerPolicy, OpensteerProtocolError, type OpensteerProviderMode, type OpensteerProviderOptions, type OpensteerProviderSource, type OpensteerResolvedProvider, type OpensteerRouteHandlerResult, type OpensteerRouteOptions, type OpensteerRouteRegistration, type OpensteerRuntimeOptions, type OpensteerScrollOptions, type OpensteerSessionRuntimeOptions, type OpensteerStorageMap, type OpensteerTargetOptions, type OpensteerTraceStore, type OpensteerWaitForPageOptions, type OpensteerWorkspaceManifest, type PathNode, type PersistedCloudSessionRecord, type PersistedLocalBrowserSessionRecord, type PersistedSessionRecord, type ProtocolArtifactDelivery, type RegistryProvenance, type RegistryRecord, type ReplayElementPath, type RequestPlanRecord, type RequestPlanRegistryStore, type ResolveRegistryRecordInput, type ResolvedDomTarget, type RetryDecision, type RetryEvaluationInput, type RetryPolicy, STABLE_PRIMARY_ATTR_KEYS, type SavedNetworkQueryInput, type SavedNetworkStore, type SettleContext, type SettleDelayInput, type SettleObserver, type SettlePolicy, type SettleTrigger, type StoredArtifactPayload, type StoredArtifactRecord, type StructuralElementAnchor, type StructuredArtifactKind, type SyncBrowserProfileCookiesInput, type TimeoutExecutionContext, type TimeoutPolicy, type TimeoutResolutionInput, type TraceEntryRecord, type TraceRunManifest, type UpdateRequestPlanFreshnessInput, type WorkspaceBrowserBootstrap, type WorkspaceBrowserManifest, type WorkspaceLiveBrowserRecord, type WriteBinaryArtifactInput, type WriteDescriptorInput, type WriteInteractionTraceInput, type WriteRequestPlanInput, type WriteStructuredArtifactInput, assertProviderSupportsEngine, buildArrayFieldPathCandidates, buildDomDescriptorKey, buildDomDescriptorPayload, buildDomDescriptorVersion, buildPathCandidates, buildPathSelectorHint, buildSegmentSelector, clearPersistedSessionRecord, cloneElementPath, cloneReplayElementPath, cloneStructuralElementAnchor, createArtifactStore, createDomDescriptorStore, createDomRuntime, createFilesystemOpensteerWorkspace, createObservationStore, createOpensteerExtractionDescriptorStore, defaultFallbackPolicy, defaultPolicy, defaultRetryPolicy, defaultSettlePolicy, defaultTimeoutPolicy, delayWithSignal, discoverLocalCdpBrowsers, hashDomDescriptorPersist, inspectCdpEndpoint, isCurrentUrlField, isOpensteerProtocolError, isValidCssAttributeKey, listLocalChromeProfiles, manifestToExternalBinaryLocation, normalizeExtractedValue, normalizeObservabilityConfig, normalizeOpensteerEngineName, normalizeOpensteerProviderMode, normalizeWorkspaceId, opensteerErrorCodes, parseDomDescriptorRecord, parseExtractionDescriptorRecord, readPersistedCloudSessionRecord, readPersistedLocalBrowserSessionRecord, readPersistedSessionRecord, resolveCloudConfig, resolveCloudSessionRecordPath, resolveDomActionBridge, resolveExtractedValueInContext, resolveFilesystemWorkspacePath, resolveLiveSessionRecordPath, resolveLocalSessionRecordPath, resolveOpensteerEngineName, resolveOpensteerProvider, resolveOpensteerRuntimeConfig, runWithPolicyTimeout, sanitizeElementPath, sanitizeReplayElementPath, sanitizeStructuralElementAnchor, settleWithPolicy, shouldKeepAttributeForPath, writePersistedSessionRecord };
package/dist/index.d.ts CHANGED
@@ -398,6 +398,7 @@ interface BrowserCapabilities {
398
398
  }
399
399
 
400
400
  interface PostLoadTrackerSnapshot {
401
+ readonly lastMutationAt: number;
401
402
  readonly lastTrackedNetworkActivityAt: number;
402
403
  readonly trackedPendingFetches: number;
403
404
  readonly trackedPendingXhrs: number;
@@ -415,6 +416,8 @@ interface ActionBoundaryOutcome {
415
416
  readonly trigger: ActionBoundarySettleTrigger;
416
417
  readonly crossDocument: boolean;
417
418
  readonly bootstrapSettled: boolean;
419
+ readonly observedMutationQuietMs?: number;
420
+ readonly postLoadHandled?: boolean;
418
421
  readonly timedOutPhase?: ActionBoundaryTimedOutPhase;
419
422
  }
420
423
 
@@ -745,6 +748,7 @@ interface BrowserInspector {
745
748
  readonly pageRef: PageRef;
746
749
  readonly timeoutMs?: number;
747
750
  readonly settleMs?: number;
751
+ readonly initialQuietMs?: number;
748
752
  readonly scope?: VisualStabilityScope;
749
753
  }): Promise<void>;
750
754
  waitForPostLoadQuiet(input: {
@@ -1339,6 +1343,20 @@ interface OpensteerError {
1339
1343
  readonly capability?: OpensteerCapability;
1340
1344
  readonly details?: Readonly<Record<string, unknown>>;
1341
1345
  }
1346
+ interface OpensteerErrorOptions {
1347
+ readonly cause?: unknown;
1348
+ readonly retriable?: boolean;
1349
+ readonly capability?: OpensteerCapability;
1350
+ readonly details?: Readonly<Record<string, unknown>>;
1351
+ }
1352
+ declare class OpensteerProtocolError extends Error {
1353
+ readonly code: OpensteerErrorCode;
1354
+ readonly retriable: boolean;
1355
+ readonly capability: OpensteerCapability | undefined;
1356
+ readonly details: Readonly<Record<string, unknown>> | undefined;
1357
+ constructor(code: OpensteerErrorCode, message: string, options?: OpensteerErrorOptions);
1358
+ }
1359
+ declare function isOpensteerProtocolError(value: unknown): value is OpensteerProtocolError;
1342
1360
 
1343
1361
  type OpensteerArtifactKind = "screenshot" | "html-snapshot" | "dom-snapshot" | "cookies" | "storage-snapshot" | "script-source";
1344
1362
  type ArtifactRelation = "result" | "before" | "after" | "capture" | "evidence" | "snapshot";
@@ -1614,27 +1632,11 @@ interface OpensteerStealthProfileInput {
1614
1632
  readonly locale?: string;
1615
1633
  readonly timezoneId?: string;
1616
1634
  }
1617
- interface OpensteerResolvedTarget {
1618
- readonly pageRef: PageRef;
1619
- readonly frameRef: FrameRef;
1620
- readonly documentRef: DocumentRef;
1621
- readonly documentEpoch: DocumentEpoch;
1622
- readonly nodeRef: NodeRef;
1635
+ interface OpensteerActionResult {
1623
1636
  readonly tagName: string;
1624
- readonly pathHint: string;
1625
1637
  readonly persist?: string;
1626
- readonly selectorUsed?: string;
1627
- }
1628
- interface OpensteerActionResult {
1629
- readonly target: OpensteerResolvedTarget;
1630
- readonly point?: {
1631
- readonly x: number;
1632
- readonly y: number;
1633
- };
1634
1638
  }
1635
- interface OpensteerSessionState {
1636
- readonly sessionRef: SessionRef;
1637
- readonly pageRef: PageRef;
1639
+ interface OpensteerNavigationSummary {
1638
1640
  readonly url: string;
1639
1641
  readonly title: string;
1640
1642
  }
@@ -1645,7 +1647,7 @@ interface OpensteerOpenInput {
1645
1647
  readonly launch?: OpensteerBrowserLaunchOptions;
1646
1648
  readonly context?: OpensteerBrowserContextOptions;
1647
1649
  }
1648
- interface OpensteerOpenOutput extends OpensteerSessionState {
1650
+ interface OpensteerOpenOutput extends OpensteerNavigationSummary {
1649
1651
  }
1650
1652
  interface OpensteerPageListInput {
1651
1653
  }
@@ -1657,12 +1659,13 @@ interface OpensteerPageNewInput {
1657
1659
  readonly url?: string;
1658
1660
  readonly openerPageRef?: PageRef;
1659
1661
  }
1660
- interface OpensteerPageNewOutput extends OpensteerSessionState {
1662
+ interface OpensteerPageNewOutput extends OpensteerNavigationSummary {
1663
+ readonly pageRef: PageRef;
1661
1664
  }
1662
1665
  interface OpensteerPageActivateInput {
1663
1666
  readonly pageRef: PageRef;
1664
1667
  }
1665
- interface OpensteerPageActivateOutput extends OpensteerSessionState {
1668
+ interface OpensteerPageActivateOutput extends OpensteerNavigationSummary {
1666
1669
  }
1667
1670
  interface OpensteerPageCloseInput {
1668
1671
  readonly pageRef?: PageRef;
@@ -1676,7 +1679,7 @@ interface OpensteerPageGotoInput {
1676
1679
  readonly url: string;
1677
1680
  readonly captureNetwork?: string;
1678
1681
  }
1679
- interface OpensteerPageGotoOutput extends OpensteerSessionState {
1682
+ interface OpensteerPageGotoOutput extends OpensteerNavigationSummary {
1680
1683
  }
1681
1684
  interface OpensteerPageEvaluateInput {
1682
1685
  readonly script: string;
@@ -1752,39 +1755,22 @@ interface OpensteerComputerScreenshotOptions {
1752
1755
  readonly includeCursor?: boolean;
1753
1756
  readonly disableAnnotations?: readonly OpensteerComputerAnnotation[];
1754
1757
  }
1758
+ interface OpensteerScreenshotSummary {
1759
+ readonly payload: ExternalBinaryLocation;
1760
+ readonly format: "png" | "jpeg" | "webp";
1761
+ readonly size: Size;
1762
+ readonly coordinateSpace: CoordinateSpace;
1763
+ readonly clip?: Rect;
1764
+ }
1755
1765
  interface OpensteerComputerExecuteInput {
1756
1766
  readonly action: OpensteerComputerAction;
1757
1767
  readonly screenshot?: OpensteerComputerScreenshotOptions;
1758
1768
  readonly captureNetwork?: string;
1759
1769
  }
1760
- interface OpensteerComputerDisplayScale {
1761
- readonly x: number;
1762
- readonly y: number;
1763
- }
1764
- interface OpensteerComputerTracePoint {
1765
- readonly role: "point" | "start" | "end";
1766
- readonly point: Point;
1767
- readonly hitTest?: HitTestResult;
1768
- readonly target?: OpensteerResolvedTarget;
1769
- }
1770
- interface OpensteerComputerTraceEnrichment {
1771
- readonly points: readonly OpensteerComputerTracePoint[];
1772
- }
1773
- interface OpensteerComputerExecuteTiming {
1774
- readonly actionMs: number;
1775
- readonly waitMs: number;
1776
- readonly totalMs: number;
1777
- }
1778
1770
  interface OpensteerComputerExecuteOutput {
1779
- readonly action: OpensteerComputerAction;
1780
- readonly pageRef: PageRef;
1781
- readonly screenshot: ScreenshotArtifact;
1782
- readonly displayViewport: ViewportMetrics;
1783
- readonly nativeViewport: ViewportMetrics;
1784
- readonly displayScale: OpensteerComputerDisplayScale;
1785
- readonly events: readonly StepEvent[];
1786
- readonly timing: OpensteerComputerExecuteTiming;
1787
- readonly trace?: OpensteerComputerTraceEnrichment;
1771
+ readonly url: string;
1772
+ readonly title: string;
1773
+ readonly screenshot: OpensteerScreenshotSummary;
1788
1774
  }
1789
1775
  declare const opensteerSemanticOperationNames: readonly ["session.open", "page.list", "page.new", "page.activate", "page.close", "page.goto", "page.evaluate", "page.add-init-script", "page.snapshot", "dom.click", "dom.hover", "dom.input", "dom.scroll", "dom.extract", "network.query", "network.detail", "interaction.capture", "interaction.get", "interaction.diff", "interaction.replay", "artifact.read", "session.cookies", "session.storage", "session.state", "session.fetch", "scripts.capture", "scripts.beautify", "scripts.deobfuscate", "scripts.sandbox", "captcha.solve", "computer.execute", "session.close"];
1790
1776
  type OpensteerSemanticOperationName = (typeof opensteerSemanticOperationNames)[number];
@@ -1871,7 +1857,11 @@ interface PositionMatchClause {
1871
1857
  readonly kind: "position";
1872
1858
  readonly axis: "nthOfType" | "nthChild";
1873
1859
  }
1874
- type MatchClause = AttributeMatchClause | PositionMatchClause;
1860
+ interface TextMatchClause {
1861
+ readonly kind: "text";
1862
+ readonly value: string;
1863
+ }
1864
+ type MatchClause = AttributeMatchClause | PositionMatchClause | TextMatchClause;
1875
1865
  interface PathNodePosition {
1876
1866
  readonly nthChild: number;
1877
1867
  readonly nthOfType: number;
@@ -1921,18 +1911,22 @@ interface DomActionSettleOptions {
1921
1911
  readonly snapshot?: ActionBoundarySnapshot;
1922
1912
  readonly signal: AbortSignal;
1923
1913
  remainingMs(): number | undefined;
1924
- policySettle(pageRef: PageRef, trigger: ActionBoundarySettleTrigger): Promise<void>;
1914
+ policySettle(pageRef: PageRef, trigger: ActionBoundarySettleTrigger, boundary?: ActionBoundaryOutcome): Promise<void>;
1925
1915
  }
1926
1916
  type DomPointerHitRelation = "self" | "descendant" | "ancestor" | "same-owner" | "outside" | "unknown";
1927
1917
  interface DomPointerHitAssessment {
1928
1918
  readonly relation: DomPointerHitRelation;
1929
1919
  readonly blocking: boolean;
1930
1920
  readonly ambiguous?: boolean;
1921
+ readonly blockingDescription?: string;
1931
1922
  readonly canonicalTarget?: NodeLocator;
1932
1923
  readonly hitOwner?: NodeLocator;
1933
1924
  }
1925
+ interface BuildReplayPathOptions {
1926
+ readonly enableTextMatch?: boolean;
1927
+ }
1934
1928
  interface DomActionBridge {
1935
- buildReplayPath(locator: NodeLocator): Promise<ReplayElementPath>;
1929
+ buildReplayPath(locator: NodeLocator, options?: BuildReplayPathOptions): Promise<ReplayElementPath>;
1936
1930
  inspectActionTarget(locator: NodeLocator): Promise<DomActionTargetInspection>;
1937
1931
  canonicalizePointerTarget(locator: NodeLocator): Promise<NodeLocator>;
1938
1932
  classifyPointerHit(input: {
@@ -2327,6 +2321,8 @@ interface SettleContext extends SettleDelayInput {
2327
2321
  readonly pageRef: PageRef;
2328
2322
  readonly signal: AbortSignal;
2329
2323
  readonly remainingMs: number | undefined;
2324
+ readonly observedMutationQuietMs?: number;
2325
+ readonly postLoadHandled?: boolean;
2330
2326
  }
2331
2327
  interface SettleObserver {
2332
2328
  settle(input: SettleContext): Promise<boolean>;
@@ -2436,6 +2432,7 @@ interface ResolvedDomTarget {
2436
2432
  }
2437
2433
  interface DomBuildPathInput {
2438
2434
  readonly locator: NodeLocator;
2435
+ readonly enableTextMatch?: boolean;
2439
2436
  }
2440
2437
  interface DomResolveTargetInput {
2441
2438
  readonly pageRef: PageRef;
@@ -2692,6 +2689,7 @@ interface WorkspaceBrowserManifest {
2692
2689
  }
2693
2690
  interface WorkspaceLiveBrowserRecord {
2694
2691
  readonly mode: "persistent";
2692
+ readonly ownership: "owned" | "attached";
2695
2693
  readonly engine: OpensteerEngineName;
2696
2694
  readonly endpoint?: string;
2697
2695
  readonly baseUrl?: string;
@@ -3035,6 +3033,12 @@ interface OpensteerCloudSessionDescriptor {
3035
3033
  }
3036
3034
  interface OpensteerCloudSessionState {
3037
3035
  readonly status?: string;
3036
+ readonly runtimeWorkerId?: string;
3037
+ readonly registryDesiredRevision?: number;
3038
+ readonly registryLoadedRevision?: number;
3039
+ readonly idleTimeoutMs?: number;
3040
+ readonly absoluteTtlMs?: number;
3041
+ readonly expiresAt?: number;
3038
3042
  }
3039
3043
  interface CloudRequestOptions {
3040
3044
  readonly signal?: AbortSignal | undefined;
@@ -3084,6 +3088,7 @@ interface PersistedSessionRecordBase {
3084
3088
  interface PersistedLocalBrowserSessionRecord extends PersistedSessionRecordBase {
3085
3089
  readonly provider: "local";
3086
3090
  readonly engine: "playwright" | "abp";
3091
+ readonly ownership?: Exclude<OpensteerSessionOwnership, "managed">;
3087
3092
  readonly endpoint?: string;
3088
3093
  readonly baseUrl?: string;
3089
3094
  readonly remoteDebuggingUrl?: string;
@@ -3143,4 +3148,4 @@ declare function discoverLocalCdpBrowsers(input?: {
3143
3148
  readonly timeoutMs?: number;
3144
3149
  }): Promise<readonly LocalCdpBrowserCandidate[]>;
3145
3150
 
3146
- export { type AnchorTargetRef, type AppendTraceEntryInput, type ArtifactManifest, type ArtifactPayloadType, type ArtifactScope, type BrowserProfileArchiveFormat, type BrowserProfileCreateRequest, type BrowserProfileDescriptor, type BrowserProfileImportCreateRequest, type BrowserProfileImportCreateResponse, type BrowserProfileImportDescriptor, type BrowserProfileImportStatus, type BrowserProfileListResponse, type BrowserProfileStatus, type CloudBrowserContextConfig, type CloudBrowserExtensionConfig, type CloudBrowserLaunchConfig, type CloudBrowserProfileLaunchPreference, type CloudBrowserProfilePreference, type CloudFingerprintMode, type CloudFingerprintPreference, type CloudGeolocation, type CloudProxyMode, type CloudProxyPreference, type CloudProxyProtocol, type CloudRegistryImportEntry, type CloudRegistryImportRequest, type CloudRegistryImportResponse, type CloudRequestPlanImportEntry, type CloudRequestPlanImportRequest, type CloudSessionLaunchConfig, type CloudSessionSourceType, type CloudSessionStatus, type CloudSessionSummary, type CloudSessionVisibilityScope, type CloudViewport, type ContextHop, type CreateFilesystemOpensteerWorkspaceOptions, type CreateTraceRunInput, DEFAULT_OPENSTEER_ENGINE, DEFERRED_MATCH_ATTR_KEYS, type DescriptorRecord, type DescriptorRegistryStore, type DomActionBridge, type DomActionBridgeProvider, type DomActionOutcome, type DomActionPolicyOperation, type DomActionScrollAlignment, type DomActionScrollOptions, type DomActionSettleOptions, type DomActionTargetInspection, type DomArrayFieldSelector, type DomArrayRowMetadata, type DomArraySelector, type DomBuildPathInput, type DomClickInput, type DomDescriptorPayload, type DomDescriptorRecord, type DomDescriptorStore, type DomExtractArrayRowsInput, type DomExtractFieldSelector, type DomExtractFieldsInput, type DomExtractedArrayRow, type DomHoverInput, type DomInputInput, type DomPath, type DomReadDescriptorInput, type DomResolveTargetInput, type DomRuntime, type DomScrollInput, type DomTargetRef, type DomWriteDescriptorInput, type ElementPath, ElementPathError, type FallbackDecision, type FallbackEvaluationInput, type FallbackPolicy, FilesystemArtifactStore, type FilesystemObservationStore, type FilesystemOpensteerWorkspace, type InspectedCdpEndpoint, type InteractionTraceRecord, type InteractionTraceRegistryStore, type JsonArray, type JsonObject, type JsonPrimitive, type JsonValue, type ListObservationArtifactsInput, type ListObservationEventsInput, type LocalCdpBrowserCandidate, type LocalChromeProfileDescriptor, MATCH_ATTRIBUTE_PRIORITY, type MatchClause, OPENSTEER_DOM_ACTION_BRIDGE_SYMBOL, OPENSTEER_ENGINE_NAMES, OPENSTEER_FILESYSTEM_WORKSPACE_LAYOUT, OPENSTEER_FILESYSTEM_WORKSPACE_VERSION, Opensteer, type OpensteerAddInitScriptOptions, type OpensteerArtifactStore, OpensteerAttachAmbiguousError, type OpensteerBrowserCloneOptions, type OpensteerBrowserController, OpensteerBrowserManager, type OpensteerBrowserManagerOptions, type OpensteerBrowserState, type OpensteerBrowserStatus, type OpensteerClickOptions, OpensteerCloudClient, type OpensteerCloudConfig, type OpensteerCloudProviderOptions, type OpensteerCloudSessionCreateInput, type OpensteerCloudSessionDescriptor, type OpensteerComputerExecuteOptions, type OpensteerCookieJar, type OpensteerDomController, type OpensteerEngineName, type OpensteerExtractOptions, type OpensteerExtractionDescriptorPayload, type OpensteerExtractionDescriptorRecord, type OpensteerExtractionDescriptorStore, type OpensteerFetchOptions, type OpensteerFetchedRouteResponse, type OpensteerGotoOptions, type OpensteerInputOptions, type OpensteerInterceptScriptOptions, type OpensteerLiveSessionProvider, type OpensteerLocalProviderOptions, type OpensteerNetworkController, type OpensteerNetworkDetailResult, type OpensteerNetworkQueryOptions, type OpensteerNetworkQueryResult, type OpensteerOptions, type OpensteerPolicy, type OpensteerProviderMode, type OpensteerProviderOptions, type OpensteerProviderSource, type OpensteerResolvedProvider, type OpensteerRouteHandlerResult, type OpensteerRouteOptions, type OpensteerRouteRegistration, type OpensteerRuntimeOptions, type OpensteerScrollOptions, type OpensteerSessionRuntimeOptions, type OpensteerStorageMap, type OpensteerTargetOptions, type OpensteerTraceStore, type OpensteerWaitForPageOptions, type OpensteerWorkspaceManifest, type PathNode, type PersistedCloudSessionRecord, type PersistedLocalBrowserSessionRecord, type PersistedSessionRecord, type ProtocolArtifactDelivery, type RegistryProvenance, type RegistryRecord, type ReplayElementPath, type RequestPlanRecord, type RequestPlanRegistryStore, type ResolveRegistryRecordInput, type ResolvedDomTarget, type RetryDecision, type RetryEvaluationInput, type RetryPolicy, STABLE_PRIMARY_ATTR_KEYS, type SavedNetworkQueryInput, type SavedNetworkStore, type SettleContext, type SettleDelayInput, type SettleObserver, type SettlePolicy, type SettleTrigger, type StoredArtifactPayload, type StoredArtifactRecord, type StructuralElementAnchor, type StructuredArtifactKind, type SyncBrowserProfileCookiesInput, type TimeoutExecutionContext, type TimeoutPolicy, type TimeoutResolutionInput, type TraceEntryRecord, type TraceRunManifest, type UpdateRequestPlanFreshnessInput, type WorkspaceBrowserBootstrap, type WorkspaceBrowserManifest, type WorkspaceLiveBrowserRecord, type WriteBinaryArtifactInput, type WriteDescriptorInput, type WriteInteractionTraceInput, type WriteRequestPlanInput, type WriteStructuredArtifactInput, assertProviderSupportsEngine, buildArrayFieldPathCandidates, buildDomDescriptorKey, buildDomDescriptorPayload, buildDomDescriptorVersion, buildPathCandidates, buildPathSelectorHint, buildSegmentSelector, clearPersistedSessionRecord, cloneElementPath, cloneReplayElementPath, cloneStructuralElementAnchor, createArtifactStore, createDomDescriptorStore, createDomRuntime, createFilesystemOpensteerWorkspace, createObservationStore, createOpensteerExtractionDescriptorStore, defaultFallbackPolicy, defaultPolicy, defaultRetryPolicy, defaultSettlePolicy, defaultTimeoutPolicy, delayWithSignal, discoverLocalCdpBrowsers, hashDomDescriptorPersist, inspectCdpEndpoint, isCurrentUrlField, isValidCssAttributeKey, listLocalChromeProfiles, manifestToExternalBinaryLocation, normalizeExtractedValue, normalizeObservabilityConfig, normalizeOpensteerEngineName, normalizeOpensteerProviderMode, normalizeWorkspaceId, parseDomDescriptorRecord, parseExtractionDescriptorRecord, readPersistedCloudSessionRecord, readPersistedLocalBrowserSessionRecord, readPersistedSessionRecord, resolveCloudConfig, resolveCloudSessionRecordPath, resolveDomActionBridge, resolveExtractedValueInContext, resolveFilesystemWorkspacePath, resolveLiveSessionRecordPath, resolveLocalSessionRecordPath, resolveOpensteerEngineName, resolveOpensteerProvider, resolveOpensteerRuntimeConfig, runWithPolicyTimeout, sanitizeElementPath, sanitizeReplayElementPath, sanitizeStructuralElementAnchor, settleWithPolicy, shouldKeepAttributeForPath, writePersistedSessionRecord };
3151
+ export { type AnchorTargetRef, type AppendTraceEntryInput, type ArtifactManifest, type ArtifactPayloadType, type ArtifactScope, type BrowserProfileArchiveFormat, type BrowserProfileCreateRequest, type BrowserProfileDescriptor, type BrowserProfileImportCreateRequest, type BrowserProfileImportCreateResponse, type BrowserProfileImportDescriptor, type BrowserProfileImportStatus, type BrowserProfileListResponse, type BrowserProfileStatus, type CloudBrowserContextConfig, type CloudBrowserExtensionConfig, type CloudBrowserLaunchConfig, type CloudBrowserProfileLaunchPreference, type CloudBrowserProfilePreference, type CloudFingerprintMode, type CloudFingerprintPreference, type CloudGeolocation, type CloudProxyMode, type CloudProxyPreference, type CloudProxyProtocol, type CloudRegistryImportEntry, type CloudRegistryImportRequest, type CloudRegistryImportResponse, type CloudRequestPlanImportEntry, type CloudRequestPlanImportRequest, type CloudSessionLaunchConfig, type CloudSessionSourceType, type CloudSessionStatus, type CloudSessionSummary, type CloudSessionVisibilityScope, type CloudViewport, type ContextHop, type CreateFilesystemOpensteerWorkspaceOptions, type CreateTraceRunInput, DEFAULT_OPENSTEER_ENGINE, DEFERRED_MATCH_ATTR_KEYS, type DescriptorRecord, type DescriptorRegistryStore, type DomActionBridge, type DomActionBridgeProvider, type DomActionOutcome, type DomActionPolicyOperation, type DomActionScrollAlignment, type DomActionScrollOptions, type DomActionSettleOptions, type DomActionTargetInspection, type DomArrayFieldSelector, type DomArrayRowMetadata, type DomArraySelector, type DomBuildPathInput, type DomClickInput, type DomDescriptorPayload, type DomDescriptorRecord, type DomDescriptorStore, type DomExtractArrayRowsInput, type DomExtractFieldSelector, type DomExtractFieldsInput, type DomExtractedArrayRow, type DomHoverInput, type DomInputInput, type DomPath, type DomReadDescriptorInput, type DomResolveTargetInput, type DomRuntime, type DomScrollInput, type DomTargetRef, type DomWriteDescriptorInput, type ElementPath, ElementPathError, type FallbackDecision, type FallbackEvaluationInput, type FallbackPolicy, FilesystemArtifactStore, type FilesystemObservationStore, type FilesystemOpensteerWorkspace, type InspectedCdpEndpoint, type InteractionTraceRecord, type InteractionTraceRegistryStore, type JsonArray, type JsonObject, type JsonPrimitive, type JsonValue, type ListObservationArtifactsInput, type ListObservationEventsInput, type LocalCdpBrowserCandidate, type LocalChromeProfileDescriptor, MATCH_ATTRIBUTE_PRIORITY, type MatchClause, OPENSTEER_DOM_ACTION_BRIDGE_SYMBOL, OPENSTEER_ENGINE_NAMES, OPENSTEER_FILESYSTEM_WORKSPACE_LAYOUT, OPENSTEER_FILESYSTEM_WORKSPACE_VERSION, Opensteer, type OpensteerAddInitScriptOptions, type OpensteerArtifactStore, OpensteerAttachAmbiguousError, type OpensteerBrowserCloneOptions, type OpensteerBrowserController, OpensteerBrowserManager, type OpensteerBrowserManagerOptions, type OpensteerBrowserState, type OpensteerBrowserStatus, type OpensteerClickOptions, OpensteerCloudClient, type OpensteerCloudConfig, type OpensteerCloudProviderOptions, type OpensteerCloudSessionCreateInput, type OpensteerCloudSessionDescriptor, type OpensteerComputerExecuteOptions, type OpensteerCookieJar, type OpensteerDomController, type OpensteerEngineName, type OpensteerError, type OpensteerErrorCode, type OpensteerExtractOptions, type OpensteerExtractionDescriptorPayload, type OpensteerExtractionDescriptorRecord, type OpensteerExtractionDescriptorStore, type OpensteerFetchOptions, type OpensteerFetchedRouteResponse, type OpensteerGotoOptions, type OpensteerInputOptions, type OpensteerInterceptScriptOptions, type OpensteerLiveSessionProvider, type OpensteerLocalProviderOptions, type OpensteerNetworkController, type OpensteerNetworkDetailResult, type OpensteerNetworkQueryOptions, type OpensteerNetworkQueryResult, type OpensteerOptions, type OpensteerPolicy, OpensteerProtocolError, type OpensteerProviderMode, type OpensteerProviderOptions, type OpensteerProviderSource, type OpensteerResolvedProvider, type OpensteerRouteHandlerResult, type OpensteerRouteOptions, type OpensteerRouteRegistration, type OpensteerRuntimeOptions, type OpensteerScrollOptions, type OpensteerSessionRuntimeOptions, type OpensteerStorageMap, type OpensteerTargetOptions, type OpensteerTraceStore, type OpensteerWaitForPageOptions, type OpensteerWorkspaceManifest, type PathNode, type PersistedCloudSessionRecord, type PersistedLocalBrowserSessionRecord, type PersistedSessionRecord, type ProtocolArtifactDelivery, type RegistryProvenance, type RegistryRecord, type ReplayElementPath, type RequestPlanRecord, type RequestPlanRegistryStore, type ResolveRegistryRecordInput, type ResolvedDomTarget, type RetryDecision, type RetryEvaluationInput, type RetryPolicy, STABLE_PRIMARY_ATTR_KEYS, type SavedNetworkQueryInput, type SavedNetworkStore, type SettleContext, type SettleDelayInput, type SettleObserver, type SettlePolicy, type SettleTrigger, type StoredArtifactPayload, type StoredArtifactRecord, type StructuralElementAnchor, type StructuredArtifactKind, type SyncBrowserProfileCookiesInput, type TimeoutExecutionContext, type TimeoutPolicy, type TimeoutResolutionInput, type TraceEntryRecord, type TraceRunManifest, type UpdateRequestPlanFreshnessInput, type WorkspaceBrowserBootstrap, type WorkspaceBrowserManifest, type WorkspaceLiveBrowserRecord, type WriteBinaryArtifactInput, type WriteDescriptorInput, type WriteInteractionTraceInput, type WriteRequestPlanInput, type WriteStructuredArtifactInput, assertProviderSupportsEngine, buildArrayFieldPathCandidates, buildDomDescriptorKey, buildDomDescriptorPayload, buildDomDescriptorVersion, buildPathCandidates, buildPathSelectorHint, buildSegmentSelector, clearPersistedSessionRecord, cloneElementPath, cloneReplayElementPath, cloneStructuralElementAnchor, createArtifactStore, createDomDescriptorStore, createDomRuntime, createFilesystemOpensteerWorkspace, createObservationStore, createOpensteerExtractionDescriptorStore, defaultFallbackPolicy, defaultPolicy, defaultRetryPolicy, defaultSettlePolicy, defaultTimeoutPolicy, delayWithSignal, discoverLocalCdpBrowsers, hashDomDescriptorPersist, inspectCdpEndpoint, isCurrentUrlField, isOpensteerProtocolError, isValidCssAttributeKey, listLocalChromeProfiles, manifestToExternalBinaryLocation, normalizeExtractedValue, normalizeObservabilityConfig, normalizeOpensteerEngineName, normalizeOpensteerProviderMode, normalizeWorkspaceId, opensteerErrorCodes, parseDomDescriptorRecord, parseExtractionDescriptorRecord, readPersistedCloudSessionRecord, readPersistedLocalBrowserSessionRecord, readPersistedSessionRecord, resolveCloudConfig, resolveCloudSessionRecordPath, resolveDomActionBridge, resolveExtractedValueInContext, resolveFilesystemWorkspacePath, resolveLiveSessionRecordPath, resolveLocalSessionRecordPath, resolveOpensteerEngineName, resolveOpensteerProvider, resolveOpensteerRuntimeConfig, runWithPolicyTimeout, sanitizeElementPath, sanitizeReplayElementPath, sanitizeStructuralElementAnchor, settleWithPolicy, shouldKeepAttributeForPath, writePersistedSessionRecord };
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
- export { Opensteer } from './chunk-7D45QUZ3.js';
2
- export { DEFERRED_MATCH_ATTR_KEYS, ElementPathError, MATCH_ATTRIBUTE_PRIORITY, OPENSTEER_DOM_ACTION_BRIDGE_SYMBOL, OpensteerCloudClient, STABLE_PRIMARY_ATTR_KEYS, assertProviderSupportsEngine, buildArrayFieldPathCandidates, buildDomDescriptorKey, buildDomDescriptorPayload, buildDomDescriptorVersion, buildPathCandidates, buildPathSelectorHint, buildSegmentSelector, cloneElementPath, cloneReplayElementPath, cloneStructuralElementAnchor, createDomDescriptorStore, createDomRuntime, createOpensteerExtractionDescriptorStore, defaultFallbackPolicy, defaultPolicy, defaultRetryPolicy, defaultSettlePolicy, defaultTimeoutPolicy, delayWithSignal, hashDomDescriptorPersist, isCurrentUrlField, isValidCssAttributeKey, normalizeExtractedValue, normalizeOpensteerProviderMode, parseDomDescriptorRecord, parseExtractionDescriptorRecord, resolveCloudConfig, resolveDomActionBridge, resolveExtractedValueInContext, resolveOpensteerProvider, resolveOpensteerRuntimeConfig, runWithPolicyTimeout, sanitizeElementPath, sanitizeReplayElementPath, sanitizeStructuralElementAnchor, settleWithPolicy, shouldKeepAttributeForPath } from './chunk-7LQL5YUR.js';
3
- export { DEFAULT_OPENSTEER_ENGINE, OPENSTEER_ENGINE_NAMES, OPENSTEER_FILESYSTEM_WORKSPACE_LAYOUT, OPENSTEER_FILESYSTEM_WORKSPACE_VERSION, OpensteerBrowserManager, createArtifactStore, createFilesystemOpensteerWorkspace, createObservationStore, manifestToExternalBinaryLocation, normalizeObservabilityConfig, normalizeOpensteerEngineName, normalizeWorkspaceId, resolveFilesystemWorkspacePath, resolveOpensteerEngineName } from './chunk-GSCQQKZZ.js';
4
- export { OpensteerAttachAmbiguousError, clearPersistedSessionRecord, discoverLocalCdpBrowsers, inspectCdpEndpoint, listLocalChromeProfiles, readPersistedCloudSessionRecord, readPersistedLocalBrowserSessionRecord, readPersistedSessionRecord, resolveCloudSessionRecordPath, resolveLiveSessionRecordPath, resolveLocalSessionRecordPath, writePersistedSessionRecord } from './chunk-T5P2QGZ3.js';
1
+ export { Opensteer } from './chunk-52UNH5UW.js';
2
+ export { DEFERRED_MATCH_ATTR_KEYS, ElementPathError, MATCH_ATTRIBUTE_PRIORITY, OPENSTEER_DOM_ACTION_BRIDGE_SYMBOL, OpensteerCloudClient, STABLE_PRIMARY_ATTR_KEYS, assertProviderSupportsEngine, buildArrayFieldPathCandidates, buildDomDescriptorKey, buildDomDescriptorPayload, buildDomDescriptorVersion, buildPathCandidates, buildPathSelectorHint, buildSegmentSelector, cloneElementPath, cloneReplayElementPath, cloneStructuralElementAnchor, createDomDescriptorStore, createDomRuntime, createOpensteerExtractionDescriptorStore, defaultFallbackPolicy, defaultPolicy, defaultRetryPolicy, defaultSettlePolicy, defaultTimeoutPolicy, delayWithSignal, hashDomDescriptorPersist, isCurrentUrlField, isValidCssAttributeKey, normalizeExtractedValue, normalizeOpensteerProviderMode, parseDomDescriptorRecord, parseExtractionDescriptorRecord, resolveCloudConfig, resolveDomActionBridge, resolveExtractedValueInContext, resolveOpensteerProvider, resolveOpensteerRuntimeConfig, runWithPolicyTimeout, sanitizeElementPath, sanitizeReplayElementPath, sanitizeStructuralElementAnchor, settleWithPolicy, shouldKeepAttributeForPath } from './chunk-3OHKIPBD.js';
3
+ export { DEFAULT_OPENSTEER_ENGINE, OPENSTEER_ENGINE_NAMES, OPENSTEER_FILESYSTEM_WORKSPACE_LAYOUT, OPENSTEER_FILESYSTEM_WORKSPACE_VERSION, OpensteerBrowserManager, OpensteerProtocolError, createArtifactStore, createFilesystemOpensteerWorkspace, createObservationStore, isOpensteerProtocolError, manifestToExternalBinaryLocation, normalizeObservabilityConfig, normalizeOpensteerEngineName, normalizeWorkspaceId, opensteerErrorCodes, resolveFilesystemWorkspacePath, resolveOpensteerEngineName } from './chunk-PJXN7HED.js';
4
+ export { OpensteerAttachAmbiguousError, clearPersistedSessionRecord, discoverLocalCdpBrowsers, inspectCdpEndpoint, listLocalChromeProfiles, readPersistedCloudSessionRecord, readPersistedLocalBrowserSessionRecord, readPersistedSessionRecord, resolveCloudSessionRecordPath, resolveLiveSessionRecordPath, resolveLocalSessionRecordPath, writePersistedSessionRecord } from './chunk-U4BUCIZ4.js';
5
5
  //# sourceMappingURL=index.js.map
6
6
  //# sourceMappingURL=index.js.map
@@ -1556,7 +1556,16 @@ class LocalViewApp {
1556
1556
 
1557
1557
  const meta = document.createElement("span");
1558
1558
  meta.className = "session-info";
1559
- meta.textContent = [session.workspace, `pid ${session.pid}`].filter(Boolean).join(" \u00b7 ");
1559
+ meta.textContent = [
1560
+ session.workspace,
1561
+ Number.isInteger(session.pid) && session.pid > 0
1562
+ ? `pid ${session.pid}`
1563
+ : session.ownership === "attached"
1564
+ ? "attached"
1565
+ : "",
1566
+ ]
1567
+ .filter(Boolean)
1568
+ .join(" \u00b7 ");
1560
1569
 
1561
1570
  row2.append(badge, meta);
1562
1571