codex-chatgpt-control 0.5.1-alpha.2 → 0.5.1-alpha.4
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 +42 -0
- package/README.md +43 -0
- package/contracts/v1/fixtures/backend-capabilities.json +40 -1
- package/contracts/v1/fixtures/backend-compatibility.json +21 -0
- package/contracts/v1/fixtures/backend-version.json +6 -1
- package/contracts/v1/fixtures/download-blocked-by-browser.json +22 -0
- package/contracts/v1/fixtures/download-receipt-failed.json +22 -0
- package/contracts/v1/fixtures/download-receipt-timeout.json +22 -0
- package/contracts/v1/fixtures/journal-rpc-indeterminate.json +32 -0
- package/contracts/v1/fixtures/journal-rpc-unsupported-platform.json +32 -0
- package/contracts/v1/fixtures/journal-runtime-unavailable.json +32 -0
- package/contracts/v1/fixtures/operation-action-prepared-event.json +42 -0
- package/contracts/v1/fixtures/operation-action.json +13 -0
- package/contracts/v1/fixtures/operation-artifact-receipt.json +14 -0
- package/contracts/v1/fixtures/operation-artifact-transfer-intent-event.json +24 -0
- package/contracts/v1/fixtures/operation-artifact-transfer-receipt-event.json +26 -0
- package/contracts/v1/fixtures/operation-artifact-transfer-state.json +178 -0
- package/contracts/v1/fixtures/operation-blocker.json +10 -0
- package/contracts/v1/fixtures/operation-collect-request.json +17 -0
- package/contracts/v1/fixtures/operation-collect-result.json +42 -0
- package/contracts/v1/fixtures/operation-control-receipt.json +13 -0
- package/contracts/v1/fixtures/operation-control-request.json +18 -0
- package/contracts/v1/fixtures/operation-control-result.json +31 -0
- package/contracts/v1/fixtures/operation-event.json +18 -0
- package/contracts/v1/fixtures/operation-handle.json +10 -0
- package/contracts/v1/fixtures/operation-inspect-request.json +13 -0
- package/contracts/v1/fixtures/operation-inspect-result.json +205 -0
- package/contracts/v1/fixtures/operation-ownership-baseline-event.json +34 -0
- package/contracts/v1/fixtures/operation-receipt.json +32 -0
- package/contracts/v1/fixtures/operation-recovery-decision.json +7 -0
- package/contracts/v1/fixtures/operation-recovery-observation.json +12 -0
- package/contracts/v1/fixtures/operation-request.json +33 -0
- package/contracts/v1/fixtures/operation-state.json +144 -0
- package/contracts/v1/fixtures/operation-submission-witness-event.json +20 -0
- package/contracts/v1/fixtures/operation-submission-witness.json +11 -0
- package/contracts/v1/fixtures/operation-submit-result.json +16 -0
- package/contracts/v1/fixtures/operation-target-established-event.json +21 -0
- package/contracts/v1/manifest.json +185 -1
- package/contracts/v1/parity-suite.json +106 -8
- package/contracts/v1/schemas/backend-compatibility.schema.json +65 -0
- package/contracts/v1/schemas/backend-request.schema.json +8 -2
- package/contracts/v1/schemas/capabilities.schema.json +81 -1
- package/contracts/v1/schemas/manifest.schema.json +57 -0
- package/contracts/v1/schemas/operation-action.schema.json +155 -0
- package/contracts/v1/schemas/operation-artifact-receipt.schema.json +89 -0
- package/contracts/v1/schemas/operation-blocker.schema.json +70 -0
- package/contracts/v1/schemas/operation-collect-request.schema.json +46 -0
- package/contracts/v1/schemas/operation-collect-result.schema.json +74 -0
- package/contracts/v1/schemas/operation-control-receipt.schema.json +108 -0
- package/contracts/v1/schemas/operation-control-request.schema.json +111 -0
- package/contracts/v1/schemas/operation-control-result.schema.json +112 -0
- package/contracts/v1/schemas/operation-event.schema.json +756 -0
- package/contracts/v1/schemas/operation-handle.schema.json +55 -0
- package/contracts/v1/schemas/operation-inspect-request.schema.json +42 -0
- package/contracts/v1/schemas/operation-inspect-result.schema.json +1662 -0
- package/contracts/v1/schemas/operation-receipt.schema.json +153 -0
- package/contracts/v1/schemas/operation-recovery.schema.json +314 -0
- package/contracts/v1/schemas/operation-request.schema.json +158 -0
- package/contracts/v1/schemas/operation-state.schema.json +691 -0
- package/contracts/v1/schemas/operation-submission-witness.schema.json +48 -0
- package/contracts/v1/schemas/operation-submit-result.schema.json +94 -0
- package/contracts/v1/surface-drift-policy.json +50 -0
- package/contracts/v1/vectors/operation-request-digest-v1.json +43 -0
- package/dist/codex-chatgpt-control-backend.mjs +45882 -9361
- package/dist/codex-chatgpt-control-journal.mjs +5547 -0
- package/dist/codex-chatgpt-control-live-smoke.bundle.mjs +51677 -0
- package/dist/codex-chatgpt-control-release-canary.bundle.mjs +52104 -0
- package/dist/codex-chatgpt-control.bundle.mjs +48392 -10260
- package/dist/src/backend/client.d.ts +103 -2
- package/dist/src/backend/client.js +1436 -97
- package/dist/src/backend/compatibility.d.ts +12 -0
- package/dist/src/backend/compatibility.js +208 -0
- package/dist/src/backend/protocol.d.ts +84 -1
- package/dist/src/backend/protocol.js +31 -5
- package/dist/src/backend/runtime-identity.d.ts +10 -0
- package/dist/src/backend/runtime-identity.js +141 -0
- package/dist/src/backend/session.d.ts +10 -2
- package/dist/src/backend/session.js +478 -7
- package/dist/src/backend/stdio-server.d.ts +4 -1
- package/dist/src/backend/stdio-server.js +240 -28
- package/dist/src/browser/active-composer-file-input.d.ts +9 -0
- package/dist/src/browser/active-composer-file-input.js +33 -0
- package/dist/src/browser/attach.d.ts +4 -1
- package/dist/src/browser/attach.js +136 -28
- package/dist/src/browser/chatgpt-url.d.ts +2 -0
- package/dist/src/browser/chatgpt-url.js +9 -0
- package/dist/src/browser/downloads.d.ts +17 -1
- package/dist/src/browser/downloads.js +150 -28
- package/dist/src/browser/page-state.js +6 -0
- package/dist/src/client.d.ts +43 -0
- package/dist/src/client.js +1279 -59
- package/dist/src/commands/artifacts.js +6 -4
- package/dist/src/commands/chat-popover.d.ts +37 -0
- package/dist/src/commands/chat-popover.js +537 -0
- package/dist/src/commands/configuration.d.ts +5 -0
- package/dist/src/commands/configuration.js +134 -21
- package/dist/src/commands/context.js +10 -3
- package/dist/src/commands/doctor.d.ts +1 -1
- package/dist/src/commands/doctor.js +27 -4
- package/dist/src/commands/experience.d.ts +5 -0
- package/dist/src/commands/experience.js +104 -21
- package/dist/src/commands/files.js +14 -33
- package/dist/src/commands/modes.js +85 -21
- package/dist/src/commands/power-discovery.d.ts +130 -0
- package/dist/src/commands/power-discovery.js +669 -0
- package/dist/src/commands/project-sources.js +325 -31
- package/dist/src/commands/sequence.js +59 -32
- package/dist/src/commands/session.js +19 -6
- package/dist/src/commands/work.js +31 -0
- package/dist/src/dom/composer-text.d.ts +6 -0
- package/dist/src/dom/composer-text.js +85 -0
- package/dist/src/errors.d.ts +9 -0
- package/dist/src/errors.js +22 -0
- package/dist/src/index.d.ts +6 -0
- package/dist/src/index.js +9 -0
- package/dist/src/operations/artifact-output.d.ts +69 -0
- package/dist/src/operations/artifact-output.js +1748 -0
- package/dist/src/operations/artifact-stream.d.ts +19 -0
- package/dist/src/operations/artifact-stream.js +35 -0
- package/dist/src/operations/artifact-transfer.d.ts +149 -0
- package/dist/src/operations/artifact-transfer.js +1312 -0
- package/dist/src/operations/browser-adapter.d.ts +167 -0
- package/dist/src/operations/browser-adapter.js +2103 -0
- package/dist/src/operations/browser-observation.d.ts +110 -0
- package/dist/src/operations/browser-observation.js +1256 -0
- package/dist/src/operations/browser-target.d.ts +105 -0
- package/dist/src/operations/browser-target.js +531 -0
- package/dist/src/operations/canonical.d.ts +4 -0
- package/dist/src/operations/canonical.js +412 -0
- package/dist/src/operations/chatgpt-runtime.d.ts +72 -0
- package/dist/src/operations/chatgpt-runtime.js +1232 -0
- package/dist/src/operations/client.d.ts +138 -0
- package/dist/src/operations/client.js +1145 -0
- package/dist/src/operations/collector.d.ts +195 -0
- package/dist/src/operations/collector.js +1039 -0
- package/dist/src/operations/configuration-routing.d.ts +4 -0
- package/dist/src/operations/configuration-routing.js +14 -0
- package/dist/src/operations/control.d.ts +372 -0
- package/dist/src/operations/control.js +1498 -0
- package/dist/src/operations/file-identity.d.ts +33 -0
- package/dist/src/operations/file-identity.js +153 -0
- package/dist/src/operations/handle.d.ts +19 -0
- package/dist/src/operations/handle.js +727 -0
- package/dist/src/operations/index.d.ts +25 -0
- package/dist/src/operations/index.js +25 -0
- package/dist/src/operations/journal-authority.d.ts +12 -0
- package/dist/src/operations/journal-authority.js +1 -0
- package/dist/src/operations/journal-rpc-client.d.ts +12 -0
- package/dist/src/operations/journal-rpc-client.js +225 -0
- package/dist/src/operations/journal-rpc-protocol.d.ts +32 -0
- package/dist/src/operations/journal-rpc-protocol.js +214 -0
- package/dist/src/operations/journal-rpc-server.d.ts +15 -0
- package/dist/src/operations/journal-rpc-server.js +272 -0
- package/dist/src/operations/journal.d.ts +143 -0
- package/dist/src/operations/journal.js +1957 -0
- package/dist/src/operations/production-attachments.d.ts +118 -0
- package/dist/src/operations/production-attachments.js +1035 -0
- package/dist/src/operations/production-chatgpt-artifacts.d.ts +74 -0
- package/dist/src/operations/production-chatgpt-artifacts.js +1146 -0
- package/dist/src/operations/production-chatgpt-attachments.d.ts +80 -0
- package/dist/src/operations/production-chatgpt-attachments.js +1639 -0
- package/dist/src/operations/production-configuration.d.ts +42 -0
- package/dist/src/operations/production-configuration.js +1544 -0
- package/dist/src/operations/production-primitives.d.ts +53 -0
- package/dist/src/operations/production-primitives.js +856 -0
- package/dist/src/operations/production-work-steer.d.ts +203 -0
- package/dist/src/operations/production-work-steer.js +1218 -0
- package/dist/src/operations/recovery.d.ts +80 -0
- package/dist/src/operations/recovery.js +174 -0
- package/dist/src/operations/runtime-adapter.d.ts +126 -0
- package/dist/src/operations/runtime-adapter.js +802 -0
- package/dist/src/operations/send-once.d.ts +224 -0
- package/dist/src/operations/send-once.js +1081 -0
- package/dist/src/operations/service.d.ts +286 -0
- package/dist/src/operations/service.js +2831 -0
- package/dist/src/operations/staging.d.ts +136 -0
- package/dist/src/operations/staging.js +630 -0
- package/dist/src/operations/state-machine.d.ts +29 -0
- package/dist/src/operations/state-machine.js +2047 -0
- package/dist/src/operations/submission.d.ts +423 -0
- package/dist/src/operations/submission.js +1676 -0
- package/dist/src/operations/transactional-chat-power.d.ts +17 -0
- package/dist/src/operations/transactional-chat-power.js +212 -0
- package/dist/src/operations/turn-ownership.d.ts +202 -0
- package/dist/src/operations/turn-ownership.js +700 -0
- package/dist/src/operations/types.d.ts +454 -0
- package/dist/src/operations/types.js +20 -0
- package/dist/src/operations/wire-requests.d.ts +21 -0
- package/dist/src/operations/wire-requests.js +396 -0
- package/dist/src/operations/wire-results.d.ts +97 -0
- package/dist/src/operations/wire-results.js +818 -0
- package/dist/src/runner/responses.d.ts +3 -1
- package/dist/src/runner/responses.js +19 -1
- package/dist/src/runner/result.js +227 -55
- package/dist/src/runner/types.d.ts +12 -0
- package/dist/src/runtime/command-routing.d.ts +149 -0
- package/dist/src/runtime/command-routing.js +431 -0
- package/dist/src/runtime/coordinated-browser.d.ts +24 -0
- package/dist/src/runtime/coordinated-browser.js +315 -0
- package/dist/src/runtime/coordinated-page.d.ts +41 -0
- package/dist/src/runtime/coordinated-page.js +651 -0
- package/dist/src/runtime/operation-context.d.ts +142 -0
- package/dist/src/runtime/operation-context.js +410 -0
- package/dist/src/runtime/runtime-session.d.ts +95 -0
- package/dist/src/runtime/runtime-session.js +314 -0
- package/dist/src/runtime/tab-coordinator.d.ts +200 -0
- package/dist/src/runtime/tab-coordinator.js +1200 -0
- package/dist/src/runtime/value-boundaries.d.ts +18 -0
- package/dist/src/runtime/value-boundaries.js +49 -0
- package/dist/src/safety/blockers.js +8 -1
- package/dist/src/safety/untrusted-output.js +2 -1
- package/dist/src/scripts/backend-server.js +4 -1
- package/dist/src/scripts/capture-surface-profile.js +7 -2
- package/dist/src/scripts/journal-server.d.ts +2 -0
- package/dist/src/scripts/journal-server.js +37 -0
- package/dist/src/scripts/live-smoke/harness.js +79 -7
- package/dist/src/scripts/live-smoke/scenarios.d.ts +42 -1
- package/dist/src/scripts/live-smoke/scenarios.js +147 -30
- package/dist/src/scripts/live-smoke/transactional.d.ts +17 -0
- package/dist/src/scripts/live-smoke/transactional.js +254 -0
- package/dist/src/scripts/live-smoke/types.d.ts +3 -0
- package/dist/src/scripts/release-canary-module.js +17 -4
- package/dist/src/types.d.ts +38 -1
- package/package.json +8 -3
- package/references/2026-08-16-transactional-operations.md +459 -0
- package/references/2026-09-06-journal-service.md +140 -0
- package/references/agents-runner.md +34 -0
- package/references/backend-protocol.md +176 -0
- package/references/python-parity.md +137 -0
- package/references/responses-adapter.md +19 -0
- package/references/streaming.md +6 -0
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import type { PageLike } from "../types.js";
|
|
2
|
+
import { type OwnershipBaseline, type OwnershipSnapshot } from "./turn-ownership.js";
|
|
3
|
+
import { type CollectorTerminalObservation } from "./collector.js";
|
|
4
|
+
import type { OperationResponseFormatV1 } from "./types.js";
|
|
5
|
+
/**
|
|
6
|
+
* A read-only browser observation has deliberately fewer powers than the
|
|
7
|
+
* legacy page helpers. The page is passed by value to this boundary and is
|
|
8
|
+
* never obtained from (or written back to) RuntimeEnv.
|
|
9
|
+
*/
|
|
10
|
+
export type BrowserObservationDigest = (domain: string, material: unknown) => string | Promise<string>;
|
|
11
|
+
export type BrowserObservationTarget = Readonly<{
|
|
12
|
+
providerId: string;
|
|
13
|
+
browserId: string;
|
|
14
|
+
tabId: string;
|
|
15
|
+
coordinationScope: "process" | "provider";
|
|
16
|
+
authoritativeTabClaim?: string;
|
|
17
|
+
/**
|
|
18
|
+
* A new target is allowed to have no provider conversation identity before
|
|
19
|
+
* Send. The read-only page probe still has to prove a blank/new-task
|
|
20
|
+
* surface; this flag never permits a missing identity for a fixed target.
|
|
21
|
+
*/
|
|
22
|
+
targetLifecycle?: "fixed" | "new_pending" | "new_established";
|
|
23
|
+
expectedConversationId?: string;
|
|
24
|
+
expectedThreadId?: string;
|
|
25
|
+
}>;
|
|
26
|
+
export type BrowserObservationOptions = Readonly<{
|
|
27
|
+
operationId: string;
|
|
28
|
+
target: BrowserObservationTarget;
|
|
29
|
+
evidenceDigest: BrowserObservationDigest;
|
|
30
|
+
/** Metadata is the default; raw content requires an exact assistant ID. */
|
|
31
|
+
responseContent?: "include" | "metadata";
|
|
32
|
+
/** Immutable transactional response format; only semantic Markdown/text are supported. */
|
|
33
|
+
responseFormat?: OperationResponseFormatV1;
|
|
34
|
+
/** Exact terminal assistant turn to normalize for collector metadata. */
|
|
35
|
+
terminalAssistantTurnId?: string;
|
|
36
|
+
rawAssistantTurnId?: string;
|
|
37
|
+
/** A complete baseline enables exact post-Send delta evidence. */
|
|
38
|
+
baseline?: OwnershipBaseline;
|
|
39
|
+
maxTurns?: number;
|
|
40
|
+
maxTextChars?: number;
|
|
41
|
+
maxArtifactsPerTurn?: number;
|
|
42
|
+
}>;
|
|
43
|
+
export type BrowserObservationResult = Readonly<{
|
|
44
|
+
snapshot: OwnershipSnapshot;
|
|
45
|
+
terminal?: CollectorTerminalObservation;
|
|
46
|
+
/** Present only for a verified blank/new-task pre-Send observation. */
|
|
47
|
+
newTargetAnchor?: Readonly<{
|
|
48
|
+
anchorDigest: string;
|
|
49
|
+
blankTaskEvidenceDigest: string;
|
|
50
|
+
}>;
|
|
51
|
+
}>;
|
|
52
|
+
export type BrowserObservationErrorCode = "page_evaluation_unavailable" | "page_evaluation_failed" | "provider_shape_drift" | "missing_identity" | "duplicate_identity" | "unstable_identity" | "incomplete_dom" | "navigation_ambiguous" | "branch_ambiguous" | "bounded_limit_exceeded" | "evidence_digest_failed" | "raw_content_unavailable";
|
|
53
|
+
export declare class BrowserObservationError extends Error {
|
|
54
|
+
readonly code: BrowserObservationErrorCode;
|
|
55
|
+
constructor(code: BrowserObservationErrorCode);
|
|
56
|
+
}
|
|
57
|
+
type RawArtifact = Readonly<{
|
|
58
|
+
kind: "file" | "image" | "other";
|
|
59
|
+
identity: string;
|
|
60
|
+
contentDigest?: string;
|
|
61
|
+
bytes?: number;
|
|
62
|
+
mimeType?: string;
|
|
63
|
+
}>;
|
|
64
|
+
type RawTurn = Readonly<{
|
|
65
|
+
role: "user" | "assistant";
|
|
66
|
+
stableId: string;
|
|
67
|
+
parentStableId?: string;
|
|
68
|
+
branchStableId?: string;
|
|
69
|
+
ordinal: number;
|
|
70
|
+
text: string;
|
|
71
|
+
/** Bounded, transient innerHTML for the one exact requested assistant turn. */
|
|
72
|
+
contentHtml?: string;
|
|
73
|
+
structure: Readonly<{
|
|
74
|
+
tag: string;
|
|
75
|
+
childCount: number;
|
|
76
|
+
artifactCount: number;
|
|
77
|
+
}>;
|
|
78
|
+
state?: "generating" | "terminal";
|
|
79
|
+
finishReason?: string;
|
|
80
|
+
artifacts: readonly RawArtifact[];
|
|
81
|
+
}>;
|
|
82
|
+
type RawPageObservation = Readonly<{
|
|
83
|
+
canonicalUrl: string;
|
|
84
|
+
conversationId?: string;
|
|
85
|
+
threadId?: string;
|
|
86
|
+
turns: readonly RawTurn[];
|
|
87
|
+
completeness: "complete" | "truncated" | "incomplete" | "out_of_order";
|
|
88
|
+
terminalState: "idle" | "generating" | "terminal" | "unknown";
|
|
89
|
+
}>;
|
|
90
|
+
type RawEvaluateArguments = Readonly<{
|
|
91
|
+
maxTurns: number;
|
|
92
|
+
maxTextChars: number;
|
|
93
|
+
maxArtifactsPerTurn: number;
|
|
94
|
+
captureAssistantTurnId?: string;
|
|
95
|
+
allowBlankTask?: boolean;
|
|
96
|
+
}>;
|
|
97
|
+
/**
|
|
98
|
+
* Perform one bounded read-only page transaction and normalize its result.
|
|
99
|
+
* `page.evaluate` is the only browser call made by this adapter.
|
|
100
|
+
*/
|
|
101
|
+
export declare function observeBrowserPage(page: Readonly<PageLike>, options: BrowserObservationOptions): Promise<BrowserObservationResult>;
|
|
102
|
+
/**
|
|
103
|
+
* This function is intentionally self-contained because it is serialized into
|
|
104
|
+
* the browser evaluation boundary. It returns bounded, transient raw material;
|
|
105
|
+
* the outer adapter converts ownership material to HMAC evidence and never
|
|
106
|
+
* stores prompt/response text in the normalized snapshot. Exact response text
|
|
107
|
+
* is exposed only in the request-scoped terminal result when explicitly asked.
|
|
108
|
+
*/
|
|
109
|
+
export declare function readPageObservation(args: RawEvaluateArguments): RawPageObservation;
|
|
110
|
+
export {};
|