codex-chatgpt-control 0.5.1-alpha.2 → 0.5.1-alpha.3
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 +15 -0
- package/README.md +27 -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/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 +155 -1
- package/contracts/v1/parity-suite.json +96 -1
- 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 +43897 -9094
- package/dist/codex-chatgpt-control.bundle.mjs +46360 -10262
- 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/downloads.d.ts +2 -0
- package/dist/src/client.d.ts +38 -0
- package/dist/src/client.js +1222 -59
- package/dist/src/commands/configuration.js +13 -7
- package/dist/src/commands/doctor.d.ts +1 -1
- package/dist/src/commands/doctor.js +26 -3
- package/dist/src/commands/experience.js +35 -0
- package/dist/src/commands/files.js +4 -27
- package/dist/src/commands/modes.js +49 -17
- package/dist/src/commands/power-discovery.d.ts +130 -0
- package/dist/src/commands/power-discovery.js +627 -0
- package/dist/src/commands/project-sources.js +325 -31
- package/dist/src/commands/sequence.js +59 -32
- package/dist/src/commands/session.js +7 -2
- package/dist/src/commands/work.js +31 -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 +161 -0
- package/dist/src/operations/browser-adapter.js +2023 -0
- package/dist/src/operations/browser-observation.d.ts +110 -0
- package/dist/src/operations/browser-observation.js +1208 -0
- package/dist/src/operations/browser-target.d.ts +103 -0
- package/dist/src/operations/browser-target.js +489 -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 +1150 -0
- package/dist/src/operations/client.d.ts +138 -0
- package/dist/src/operations/client.js +1143 -0
- package/dist/src/operations/collector.d.ts +195 -0
- package/dist/src/operations/collector.js +1039 -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 +22 -0
- package/dist/src/operations/index.js +22 -0
- package/dist/src/operations/journal.d.ts +142 -0
- package/dist/src/operations/journal.js +1931 -0
- package/dist/src/operations/production-attachments.d.ts +116 -0
- package/dist/src/operations/production-attachments.js +1018 -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 +71 -0
- package/dist/src/operations/production-chatgpt-attachments.js +1563 -0
- package/dist/src/operations/production-configuration.d.ts +42 -0
- package/dist/src/operations/production-configuration.js +1363 -0
- package/dist/src/operations/production-primitives.d.ts +53 -0
- package/dist/src/operations/production-primitives.js +1073 -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 +118 -0
- package/dist/src/operations/runtime-adapter.js +786 -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 +281 -0
- package/dist/src/operations/service.js +2810 -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/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 +39 -0
- package/dist/src/runtime/coordinated-page.js +634 -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/untrusted-output.js +2 -1
- package/dist/src/scripts/backend-server.js +4 -1
- package/dist/src/scripts/live-smoke/harness.js +79 -7
- package/dist/src/scripts/live-smoke/scenarios.d.ts +28 -0
- package/dist/src/scripts/live-smoke/scenarios.js +110 -18
- 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 +1 -1
- package/references/2026-08-16-transactional-operations.md +459 -0
- package/references/agents-runner.md +34 -0
- package/references/backend-protocol.md +73 -0
- package/references/python-parity.md +72 -0
- package/references/responses-adapter.md +19 -0
- package/references/streaming.md +6 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.5.1-alpha.3
|
|
4
|
+
|
|
5
|
+
- Adds the transactional `operations.submit`, `collect`, `inspect`, `control`,
|
|
6
|
+
and `run` surface with durable request identity, monotonic mutation
|
|
7
|
+
boundaries, exact ownership, non-repetition, and redacted recovery receipts.
|
|
8
|
+
- Adds capability-aware runtime identity, correlated multiplexed backend
|
|
9
|
+
traffic, process-scoped tab coordination, bounded DOM/file/artifact
|
|
10
|
+
observation, and deterministic configuration restoration.
|
|
11
|
+
- Hardens browser acquisition and attachment input scoping, acts-then-throws
|
|
12
|
+
settlement, late deadline behavior, output path validation, journal quotas,
|
|
13
|
+
lifecycle controls, and visible blocker classification.
|
|
14
|
+
- Extends release-canary coverage with exact per-scenario tab cleanup and
|
|
15
|
+
independent Chat/Work/configuration postconditions; refreshes all four plugin
|
|
16
|
+
runtime bundles from the qualified source.
|
|
17
|
+
|
|
3
18
|
## 0.5.1-alpha.2
|
|
4
19
|
|
|
5
20
|
- Adds confirmation-gated, fail-closed `messages.stop` lifecycle control with
|
package/README.md
CHANGED
|
@@ -29,6 +29,33 @@ const result = await chatgpt.runner.run(reviewer, {
|
|
|
29
29
|
});
|
|
30
30
|
```
|
|
31
31
|
|
|
32
|
+
## Transactional operation preview
|
|
33
|
+
|
|
34
|
+
Supported Chat, Work, Runner, and Responses workflows accept an optional
|
|
35
|
+
caller-owned canonical UUID `operationId`. Supplying it opts that invocation
|
|
36
|
+
into durable submit-once recovery and exact-turn collection; omitting it keeps
|
|
37
|
+
the compatibility path.
|
|
38
|
+
|
|
39
|
+
```ts
|
|
40
|
+
const result = await chatgpt.ask({
|
|
41
|
+
operationId: "123e4567-e89b-42d3-a456-426614174000",
|
|
42
|
+
prompt: "Summarize the visible thread.",
|
|
43
|
+
thread: { type: "conversationId", conversationId: "caller-owned-conversation-id" },
|
|
44
|
+
wait: false,
|
|
45
|
+
read: false
|
|
46
|
+
});
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
The direct `chatgpt.operations` surface exposes `submit`, `collect`, `inspect`,
|
|
50
|
+
`control`, and SDK-composed `run`. Persist and reuse the fresh returned handle
|
|
51
|
+
after partial or uncertain results; never retry the same logical Send under a
|
|
52
|
+
new ID. `operations.inspect` is browser-free. Browser-touching calls fail
|
|
53
|
+
closed when bridge access, target evidence, or a required provider primitive
|
|
54
|
+
is unavailable. See
|
|
55
|
+
[Transactional browser operations](references/2026-08-16-transactional-operations.md)
|
|
56
|
+
for request schemas, concurrency, recovery, privacy, transport bounds, and the
|
|
57
|
+
stricter transactional artifact-provider capability matrix.
|
|
58
|
+
|
|
32
59
|
Inspect the visible surface and apply verified configuration:
|
|
33
60
|
|
|
34
61
|
```ts
|
|
@@ -1,8 +1,16 @@
|
|
|
1
1
|
{
|
|
2
|
+
"backendSessionId": "fixture-backend-session",
|
|
3
|
+
"buildDigest": "unknown",
|
|
4
|
+
"cancellation": {
|
|
5
|
+
"requests": false,
|
|
6
|
+
"streams": false,
|
|
7
|
+
"supported": false
|
|
8
|
+
},
|
|
2
9
|
"commands": [
|
|
3
10
|
"backend.version",
|
|
4
11
|
"backend.health",
|
|
5
12
|
"backend.capabilities",
|
|
13
|
+
"backend.hello",
|
|
6
14
|
"runner.run",
|
|
7
15
|
"runner.plan",
|
|
8
16
|
"runner.stream",
|
|
@@ -58,15 +66,46 @@
|
|
|
58
66
|
"modes.set",
|
|
59
67
|
"modes.get",
|
|
60
68
|
"tools.select",
|
|
61
|
-
"response.copy"
|
|
69
|
+
"response.copy",
|
|
70
|
+
"operations.submit",
|
|
71
|
+
"operations.collect",
|
|
72
|
+
"operations.inspect",
|
|
73
|
+
"operations.control"
|
|
62
74
|
],
|
|
75
|
+
"multiplexing": {
|
|
76
|
+
"streams": true,
|
|
77
|
+
"unary": true
|
|
78
|
+
},
|
|
79
|
+
"packageName": "codex-chatgpt-control",
|
|
80
|
+
"packageVersion": "unknown",
|
|
63
81
|
"protocolVersion": "chatgpt.browser_control.backend_request.v1",
|
|
82
|
+
"requestIds": {
|
|
83
|
+
"required": true,
|
|
84
|
+
"scope": "connection"
|
|
85
|
+
},
|
|
86
|
+
"runtime": "node",
|
|
87
|
+
"runtimeVersion": "fixture-runtime",
|
|
64
88
|
"streaming": {
|
|
65
89
|
"modes": [
|
|
66
90
|
"ndjson"
|
|
67
91
|
],
|
|
68
92
|
"tokenDeltas": false
|
|
69
93
|
},
|
|
94
|
+
"supportedProtocolVersions": [
|
|
95
|
+
"chatgpt.browser_control.backend_request.v1"
|
|
96
|
+
],
|
|
97
|
+
"tabs": {
|
|
98
|
+
"authoritativeClaim": false,
|
|
99
|
+
"concurrent": false,
|
|
100
|
+
"concurrentTabs": false,
|
|
101
|
+
"coordination": false,
|
|
102
|
+
"coordinationScope": "none",
|
|
103
|
+
"fencing": false,
|
|
104
|
+
"stableBrowserIdentity": false,
|
|
105
|
+
"stableIdentity": false,
|
|
106
|
+
"stableProviderIdentity": false,
|
|
107
|
+
"stableTabIdentity": false
|
|
108
|
+
},
|
|
70
109
|
"transports": [
|
|
71
110
|
"stdio"
|
|
72
111
|
]
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "chatgpt.browser_control.backend_compatibility.v1",
|
|
3
|
+
"status": "warning",
|
|
4
|
+
"mode": "multiplexed",
|
|
5
|
+
"protocolVersion": "chatgpt.browser_control.backend_request.v1",
|
|
6
|
+
"backendSessionId": "fixture-backend-session",
|
|
7
|
+
"packageName": "codex-chatgpt-control",
|
|
8
|
+
"packageVersion": "0.5.1-alpha.2",
|
|
9
|
+
"runtime": "node",
|
|
10
|
+
"runtimeVersion": "v22.14.0",
|
|
11
|
+
"buildDigest": "sha256:backend-build",
|
|
12
|
+
"warnings": [
|
|
13
|
+
{
|
|
14
|
+
"code": "build_digest_mismatch",
|
|
15
|
+
"field": "buildDigest",
|
|
16
|
+
"expected": "sha256:expected-build",
|
|
17
|
+
"received": "sha256:backend-build",
|
|
18
|
+
"message": "Backend build digest differs from the expected runtime (sha256:expected-build versus sha256:backend-build)."
|
|
19
|
+
}
|
|
20
|
+
]
|
|
21
|
+
}
|
|
@@ -2,9 +2,14 @@
|
|
|
2
2
|
"ok": true,
|
|
3
3
|
"requestId": "req_backend_version",
|
|
4
4
|
"result": {
|
|
5
|
+
"backendSessionId": "fixture-backend-session",
|
|
6
|
+
"buildDigest": "unknown",
|
|
5
7
|
"name": "codex-chatgpt-control-backend",
|
|
8
|
+
"packageName": "codex-chatgpt-control",
|
|
9
|
+
"packageVersion": "unknown",
|
|
6
10
|
"protocolVersion": "chatgpt.browser_control.backend_request.v1",
|
|
7
|
-
"runtime": "node"
|
|
11
|
+
"runtime": "node",
|
|
12
|
+
"runtimeVersion": "fixture-runtime"
|
|
8
13
|
},
|
|
9
14
|
"schemaVersion": "chatgpt.browser_control.backend_response.v1"
|
|
10
15
|
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "chatgpt.browser_control.operation_event.v1",
|
|
3
|
+
"revision": 5,
|
|
4
|
+
"previousEventDigest": "hmac-sha256:3333333333333333333333333333333333333333333333333333333333333333",
|
|
5
|
+
"eventDigest": "hmac-sha256:4444444444444444444444444444444444444444444444444444444444444444",
|
|
6
|
+
"event": {
|
|
7
|
+
"type": "action_prepared",
|
|
8
|
+
"action": {
|
|
9
|
+
"actionId": "33333333-3333-4333-8333-333333333333",
|
|
10
|
+
"kind": "send",
|
|
11
|
+
"repeatPolicy": "observe_only_after_intent",
|
|
12
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
13
|
+
"targetDigest": "hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
|
|
14
|
+
},
|
|
15
|
+
"intentAt": "2026-08-16T00:00:01.000Z",
|
|
16
|
+
"baseline": {
|
|
17
|
+
"schemaVersion": "chatgpt.browser_control.operation_ownership_baseline.v1",
|
|
18
|
+
"operationId": "11111111-1111-4111-8111-111111111111",
|
|
19
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
20
|
+
"targetBindingDigest": "hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
|
|
21
|
+
"actionId": "33333333-3333-4333-8333-333333333333",
|
|
22
|
+
"baseline": {
|
|
23
|
+
"schemaVersion": "chatgpt.browser_control.turn_ownership.v1",
|
|
24
|
+
"snapshotDigest": "hmac-sha256:1212121212121212121212121212121212121212121212121212121212121212",
|
|
25
|
+
"target": {
|
|
26
|
+
"provider": { "status": "available", "value": "chrome" },
|
|
27
|
+
"browser": { "status": "available", "value": "browser-1" },
|
|
28
|
+
"tab": { "status": "available", "value": "tab-1" },
|
|
29
|
+
"thread": { "status": "available", "value": "conversation-1" },
|
|
30
|
+
"conversation": { "status": "available", "value": "conversation-1" },
|
|
31
|
+
"canonicalThreadUrl": { "status": "available", "value": "https://chatgpt.com/c/sanitized" },
|
|
32
|
+
"authoritativeTabClaim": { "status": "unavailable", "reason": "not_exposed" },
|
|
33
|
+
"coordinationScope": "process"
|
|
34
|
+
},
|
|
35
|
+
"userTurns": [],
|
|
36
|
+
"assistantTurns": [],
|
|
37
|
+
"completeness": "complete"
|
|
38
|
+
},
|
|
39
|
+
"observedAt": "2026-08-16T00:00:01.000Z"
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"actionId": "33333333-3333-4333-8333-333333333333",
|
|
3
|
+
"kind": "file_handoff",
|
|
4
|
+
"repeatPolicy": "observe_only_after_intent",
|
|
5
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
6
|
+
"targetDigest": "hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
|
|
7
|
+
"intentRevision": 4,
|
|
8
|
+
"intentAt": "2026-08-16T00:00:01.000Z",
|
|
9
|
+
"outcome": "satisfied",
|
|
10
|
+
"receiptRevision": 5,
|
|
11
|
+
"receiptAt": "2026-08-16T00:00:02.000Z",
|
|
12
|
+
"evidenceDigest": "hmac-sha256:cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc"
|
|
13
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "chatgpt.browser_control.operation_artifact_receipt.v1",
|
|
3
|
+
"operationId": "11111111-1111-4111-8111-111111111111",
|
|
4
|
+
"artifactKey": "artifact-0",
|
|
5
|
+
"assistantTurnId": "assistant-turn-1",
|
|
6
|
+
"sourceIdentityDigest": "hmac-sha256:abababababababababababababababababababababababababababababababab",
|
|
7
|
+
"kind": "file",
|
|
8
|
+
"ordinal": 0,
|
|
9
|
+
"outputKey": "operation-11111111-result.bin",
|
|
10
|
+
"mimeType": "application/octet-stream",
|
|
11
|
+
"bytes": 32,
|
|
12
|
+
"sha256": "dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd",
|
|
13
|
+
"status": "transferred"
|
|
14
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "chatgpt.browser_control.operation_event.v1",
|
|
3
|
+
"revision": 5,
|
|
4
|
+
"previousEventDigest": "hmac-sha256:3333333333333333333333333333333333333333333333333333333333333333",
|
|
5
|
+
"eventDigest": "hmac-sha256:4444444444444444444444444444444444444444444444444444444444444444",
|
|
6
|
+
"event": {
|
|
7
|
+
"type": "artifact_transfer_intent",
|
|
8
|
+
"intent": {
|
|
9
|
+
"schemaVersion": "chatgpt.browser_control.artifact_transfer_intent.v1",
|
|
10
|
+
"operationId": "11111111-1111-4111-8111-111111111111",
|
|
11
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
12
|
+
"targetBindingDigest": "hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
|
|
13
|
+
"assistantTurnId": "assistant-turn-1",
|
|
14
|
+
"sourceIdentityDigest": "hmac-sha256:cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
|
|
15
|
+
"kind": "file",
|
|
16
|
+
"ordinal": 0,
|
|
17
|
+
"transferActionId": "66666666-6666-4666-8666-666666666666",
|
|
18
|
+
"destinationIdentityDigest": "hmac-sha256:dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd",
|
|
19
|
+
"actionKind": "local_output_commit",
|
|
20
|
+
"repeatPolicy": "reconcile_local_effect",
|
|
21
|
+
"intentAt": "2026-08-16T00:00:03.000Z"
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "chatgpt.browser_control.operation_event.v1",
|
|
3
|
+
"revision": 6,
|
|
4
|
+
"previousEventDigest": "hmac-sha256:4444444444444444444444444444444444444444444444444444444444444444",
|
|
5
|
+
"eventDigest": "hmac-sha256:5555555555555555555555555555555555555555555555555555555555555555",
|
|
6
|
+
"event": {
|
|
7
|
+
"type": "artifact_transfer_receipt",
|
|
8
|
+
"receipt": {
|
|
9
|
+
"schemaVersion": "chatgpt.browser_control.artifact_transfer_receipt.v1",
|
|
10
|
+
"operationId": "11111111-1111-4111-8111-111111111111",
|
|
11
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
12
|
+
"targetBindingDigest": "hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
|
|
13
|
+
"assistantTurnId": "assistant-turn-1",
|
|
14
|
+
"sourceIdentityDigest": "hmac-sha256:cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
|
|
15
|
+
"kind": "file",
|
|
16
|
+
"ordinal": 0,
|
|
17
|
+
"transferActionId": "66666666-6666-4666-8666-666666666666",
|
|
18
|
+
"destinationIdentityDigest": "hmac-sha256:dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd",
|
|
19
|
+
"outputKey": "artifact-transfer-1",
|
|
20
|
+
"bytes": 12,
|
|
21
|
+
"sha256": "ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
|
|
22
|
+
"status": "transferred",
|
|
23
|
+
"observedAt": "2026-08-16T00:00:04.000Z"
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "chatgpt.browser_control.operation.v1",
|
|
3
|
+
"operationId": "11111111-1111-4111-8111-111111111111",
|
|
4
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
5
|
+
"surface": "chat",
|
|
6
|
+
"phase": "capturing",
|
|
7
|
+
"mutationBoundary": "send_may_have_occurred",
|
|
8
|
+
"revision": 6,
|
|
9
|
+
"createdAt": "2026-08-16T00:00:00.000Z",
|
|
10
|
+
"updatedAt": "2026-08-16T00:00:04.000Z",
|
|
11
|
+
"capturePolicy": {
|
|
12
|
+
"responseContent": "metadata",
|
|
13
|
+
"responseFormat": "markdown",
|
|
14
|
+
"artifacts": "transfer"
|
|
15
|
+
},
|
|
16
|
+
"responseFormat": "markdown",
|
|
17
|
+
"target": {
|
|
18
|
+
"providerId": "chrome",
|
|
19
|
+
"browserId": "browser-1",
|
|
20
|
+
"tabId": "tab-1",
|
|
21
|
+
"coordinationScope": "process",
|
|
22
|
+
"canonicalThreadUrl": "https://chatgpt.com/c/sanitized",
|
|
23
|
+
"conversationId": "conversation-1",
|
|
24
|
+
"evidenceProfile": {
|
|
25
|
+
"providerIdentity": "required",
|
|
26
|
+
"stableTabId": "required",
|
|
27
|
+
"stableConversationId": "required",
|
|
28
|
+
"stableUserTurnId": "required",
|
|
29
|
+
"authoritativeTabClaim": "unavailable",
|
|
30
|
+
"replacementTabRecovery": true
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
"actions": {
|
|
34
|
+
"33333333-3333-4333-8333-333333333333": {
|
|
35
|
+
"actionId": "33333333-3333-4333-8333-333333333333",
|
|
36
|
+
"kind": "send",
|
|
37
|
+
"repeatPolicy": "observe_only_after_intent",
|
|
38
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
39
|
+
"targetDigest": "hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
|
|
40
|
+
"intentRevision": 3,
|
|
41
|
+
"intentAt": "2026-08-16T00:00:01.000Z",
|
|
42
|
+
"outcome": "satisfied",
|
|
43
|
+
"receiptRevision": 4,
|
|
44
|
+
"receiptAt": "2026-08-16T00:00:02.000Z",
|
|
45
|
+
"evidenceDigest": "hmac-sha256:eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee"
|
|
46
|
+
},
|
|
47
|
+
"66666666-6666-4666-8666-666666666666": {
|
|
48
|
+
"actionId": "66666666-6666-4666-8666-666666666666",
|
|
49
|
+
"kind": "local_output_commit",
|
|
50
|
+
"repeatPolicy": "reconcile_local_effect",
|
|
51
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
52
|
+
"targetDigest": "hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
|
|
53
|
+
"intentRevision": 5,
|
|
54
|
+
"intentAt": "2026-08-16T00:00:03.000Z"
|
|
55
|
+
},
|
|
56
|
+
"77777777-7777-4777-8777-777777777777": {
|
|
57
|
+
"actionId": "77777777-7777-4777-8777-777777777777",
|
|
58
|
+
"kind": "local_output_commit",
|
|
59
|
+
"repeatPolicy": "reconcile_local_effect",
|
|
60
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
61
|
+
"targetDigest": "hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
|
|
62
|
+
"intentRevision": 6,
|
|
63
|
+
"intentAt": "2026-08-16T00:00:04.000Z"
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
"ownershipBaseline": {
|
|
67
|
+
"schemaVersion": "chatgpt.browser_control.operation_ownership_baseline.v1",
|
|
68
|
+
"operationId": "11111111-1111-4111-8111-111111111111",
|
|
69
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
70
|
+
"targetBindingDigest": "hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
|
|
71
|
+
"actionId": "33333333-3333-4333-8333-333333333333",
|
|
72
|
+
"baseline": {
|
|
73
|
+
"schemaVersion": "chatgpt.browser_control.turn_ownership.v1",
|
|
74
|
+
"snapshotDigest": "hmac-sha256:1212121212121212121212121212121212121212121212121212121212121212",
|
|
75
|
+
"target": {
|
|
76
|
+
"provider": { "status": "available", "value": "chrome" },
|
|
77
|
+
"browser": { "status": "available", "value": "browser-1" },
|
|
78
|
+
"tab": { "status": "available", "value": "tab-1" },
|
|
79
|
+
"thread": { "status": "available", "value": "conversation-1" },
|
|
80
|
+
"conversation": { "status": "available", "value": "conversation-1" },
|
|
81
|
+
"canonicalThreadUrl": { "status": "available", "value": "https://chatgpt.com/c/sanitized" },
|
|
82
|
+
"authoritativeTabClaim": { "status": "unavailable", "reason": "not_exposed" },
|
|
83
|
+
"coordinationScope": "process"
|
|
84
|
+
},
|
|
85
|
+
"userTurns": [],
|
|
86
|
+
"assistantTurns": [],
|
|
87
|
+
"completeness": "complete"
|
|
88
|
+
},
|
|
89
|
+
"observedAt": "2026-08-16T00:00:01.000Z"
|
|
90
|
+
},
|
|
91
|
+
"ownershipBaselines": {
|
|
92
|
+
"33333333-3333-4333-8333-333333333333": {
|
|
93
|
+
"schemaVersion": "chatgpt.browser_control.operation_ownership_baseline.v1",
|
|
94
|
+
"operationId": "11111111-1111-4111-8111-111111111111",
|
|
95
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
96
|
+
"targetBindingDigest": "hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
|
|
97
|
+
"actionId": "33333333-3333-4333-8333-333333333333",
|
|
98
|
+
"baseline": {
|
|
99
|
+
"schemaVersion": "chatgpt.browser_control.turn_ownership.v1",
|
|
100
|
+
"snapshotDigest": "hmac-sha256:1212121212121212121212121212121212121212121212121212121212121212",
|
|
101
|
+
"target": {
|
|
102
|
+
"provider": { "status": "available", "value": "chrome" },
|
|
103
|
+
"browser": { "status": "available", "value": "browser-1" },
|
|
104
|
+
"tab": { "status": "available", "value": "tab-1" },
|
|
105
|
+
"thread": { "status": "available", "value": "conversation-1" },
|
|
106
|
+
"conversation": { "status": "available", "value": "conversation-1" },
|
|
107
|
+
"canonicalThreadUrl": { "status": "available", "value": "https://chatgpt.com/c/sanitized" },
|
|
108
|
+
"authoritativeTabClaim": { "status": "unavailable", "reason": "not_exposed" },
|
|
109
|
+
"coordinationScope": "process"
|
|
110
|
+
},
|
|
111
|
+
"userTurns": [],
|
|
112
|
+
"assistantTurns": [],
|
|
113
|
+
"completeness": "complete"
|
|
114
|
+
},
|
|
115
|
+
"observedAt": "2026-08-16T00:00:01.000Z"
|
|
116
|
+
}
|
|
117
|
+
},
|
|
118
|
+
"submissionWitness": {
|
|
119
|
+
"schemaVersion": "chatgpt.browser_control.operation_submission_witness.v1",
|
|
120
|
+
"actionId": "33333333-3333-4333-8333-333333333333",
|
|
121
|
+
"actionKind": "send",
|
|
122
|
+
"targetBindingDigest": "hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
|
|
123
|
+
"baselineSnapshotDigest": "hmac-sha256:1212121212121212121212121212121212121212121212121212121212121212",
|
|
124
|
+
"postSendDeltaDigest": "hmac-sha256:dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd",
|
|
125
|
+
"operationUserEvidenceDigest": "hmac-sha256:cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
|
|
126
|
+
"userTurnId": "user-turn-1",
|
|
127
|
+
"observedAt": "2026-08-16T00:00:02.000Z"
|
|
128
|
+
},
|
|
129
|
+
"submissionWitnesses": {
|
|
130
|
+
"33333333-3333-4333-8333-333333333333": {
|
|
131
|
+
"schemaVersion": "chatgpt.browser_control.operation_submission_witness.v1",
|
|
132
|
+
"actionId": "33333333-3333-4333-8333-333333333333",
|
|
133
|
+
"actionKind": "send",
|
|
134
|
+
"targetBindingDigest": "hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
|
|
135
|
+
"baselineSnapshotDigest": "hmac-sha256:1212121212121212121212121212121212121212121212121212121212121212",
|
|
136
|
+
"postSendDeltaDigest": "hmac-sha256:dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd",
|
|
137
|
+
"operationUserEvidenceDigest": "hmac-sha256:cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
|
|
138
|
+
"userTurnId": "user-turn-1",
|
|
139
|
+
"observedAt": "2026-08-16T00:00:02.000Z"
|
|
140
|
+
}
|
|
141
|
+
},
|
|
142
|
+
"artifactTransfers": {
|
|
143
|
+
"66666666-6666-4666-8666-666666666666": {
|
|
144
|
+
"intent": {
|
|
145
|
+
"schemaVersion": "chatgpt.browser_control.artifact_transfer_intent.v1",
|
|
146
|
+
"operationId": "11111111-1111-4111-8111-111111111111",
|
|
147
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
148
|
+
"targetBindingDigest": "hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
|
|
149
|
+
"assistantTurnId": "assistant-turn-1",
|
|
150
|
+
"sourceIdentityDigest": "hmac-sha256:cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
|
|
151
|
+
"kind": "file",
|
|
152
|
+
"ordinal": 0,
|
|
153
|
+
"transferActionId": "66666666-6666-4666-8666-666666666666",
|
|
154
|
+
"destinationIdentityDigest": "hmac-sha256:dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd",
|
|
155
|
+
"actionKind": "local_output_commit",
|
|
156
|
+
"repeatPolicy": "reconcile_local_effect",
|
|
157
|
+
"intentAt": "2026-08-16T00:00:03.000Z"
|
|
158
|
+
}
|
|
159
|
+
},
|
|
160
|
+
"77777777-7777-4777-8777-777777777777": {
|
|
161
|
+
"intent": {
|
|
162
|
+
"schemaVersion": "chatgpt.browser_control.artifact_transfer_intent.v1",
|
|
163
|
+
"operationId": "11111111-1111-4111-8111-111111111111",
|
|
164
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
165
|
+
"targetBindingDigest": "hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
|
|
166
|
+
"assistantTurnId": "assistant-turn-1",
|
|
167
|
+
"sourceIdentityDigest": "hmac-sha256:1111111111111111111111111111111111111111111111111111111111111111",
|
|
168
|
+
"kind": "image",
|
|
169
|
+
"ordinal": 1,
|
|
170
|
+
"transferActionId": "77777777-7777-4777-8777-777777777777",
|
|
171
|
+
"destinationIdentityDigest": "hmac-sha256:2222222222222222222222222222222222222222222222222222222222222222",
|
|
172
|
+
"actionKind": "local_output_commit",
|
|
173
|
+
"repeatPolicy": "reconcile_local_effect",
|
|
174
|
+
"intentAt": "2026-08-16T00:00:04.000Z"
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "chatgpt.browser_control.operation_blocker.v1",
|
|
3
|
+
"code": "ambiguous_submit",
|
|
4
|
+
"recoverable": true,
|
|
5
|
+
"operationId": "11111111-1111-4111-8111-111111111111",
|
|
6
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
7
|
+
"phase": "uncertain",
|
|
8
|
+
"mutationBoundary": "send_may_have_occurred",
|
|
9
|
+
"message": "The owned turn could not yet be proven. Collect may observe it without retrying Send."
|
|
10
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "chatgpt.browser_control.operation_collect_request.v1",
|
|
3
|
+
"handle": {
|
|
4
|
+
"schemaVersion": "chatgpt.browser_control.operation_handle.v1",
|
|
5
|
+
"operationId": "11111111-1111-4111-8111-111111111111",
|
|
6
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
7
|
+
"surface": "chat",
|
|
8
|
+
"revision": 8,
|
|
9
|
+
"phase": "generating",
|
|
10
|
+
"mutationBoundary": "send_may_have_occurred",
|
|
11
|
+
"targetBindingDigest": "hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
|
|
12
|
+
},
|
|
13
|
+
"wait": false,
|
|
14
|
+
"timeoutMs": 5000,
|
|
15
|
+
"pollIntervalMs": 250,
|
|
16
|
+
"responseContent": "metadata"
|
|
17
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
{
|
|
2
|
+
"handle": {
|
|
3
|
+
"mutationBoundary": "send_may_have_occurred",
|
|
4
|
+
"operationId": "11111111-1111-4111-8111-111111111111",
|
|
5
|
+
"phase": "completed",
|
|
6
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
7
|
+
"revision": 10,
|
|
8
|
+
"schemaVersion": "chatgpt.browser_control.operation_handle.v1",
|
|
9
|
+
"surface": "chat",
|
|
10
|
+
"targetBindingDigest": "hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
|
|
11
|
+
},
|
|
12
|
+
"liveResponse": {
|
|
13
|
+
"bytes": 11,
|
|
14
|
+
"chars": 11,
|
|
15
|
+
"content": "safe answer",
|
|
16
|
+
"durability": "ephemeral",
|
|
17
|
+
"durable": false,
|
|
18
|
+
"responseFormat": "markdown",
|
|
19
|
+
"schemaVersion": "chatgpt.browser_control.operation_live_response.v1"
|
|
20
|
+
},
|
|
21
|
+
"operationId": "11111111-1111-4111-8111-111111111111",
|
|
22
|
+
"receipt": {
|
|
23
|
+
"artifacts": [],
|
|
24
|
+
"assistantTurnId": "assistant-turn-1",
|
|
25
|
+
"completedAt": "2026-06-06T00:00:00.000Z",
|
|
26
|
+
"contentAvailable": true,
|
|
27
|
+
"finishReason": "stop",
|
|
28
|
+
"operationId": "11111111-1111-4111-8111-111111111111",
|
|
29
|
+
"ownershipEvidenceDigest": "hmac-sha256:dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd",
|
|
30
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
31
|
+
"responseBytes": 11,
|
|
32
|
+
"responseDigest": "hmac-sha256:eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
|
|
33
|
+
"responseFormat": "markdown",
|
|
34
|
+
"schemaVersion": "chatgpt.browser_control.operation_receipt.v1",
|
|
35
|
+
"targetBindingDigest": "hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
|
|
36
|
+
"userTurnEvidenceDigest": "hmac-sha256:cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
|
|
37
|
+
"userTurnId": "user-turn-1"
|
|
38
|
+
},
|
|
39
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
40
|
+
"schemaVersion": "chatgpt.browser_control.operation_collect_result.v1",
|
|
41
|
+
"status": "completed"
|
|
42
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "chatgpt.browser_control.operation_control_receipt.v1",
|
|
3
|
+
"controlActionId": "22222222-2222-4222-8222-222222222222",
|
|
4
|
+
"parentOperationId": "11111111-1111-4111-8111-111111111111",
|
|
5
|
+
"parentRequestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
6
|
+
"parentTargetBindingDigest": "hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
|
|
7
|
+
"expectedAssistantTurnId": "assistant-turn-1",
|
|
8
|
+
"requestDigest": "hmac-sha256:abababababababababababababababababababababababababababababababab",
|
|
9
|
+
"action": "steer",
|
|
10
|
+
"outcome": "satisfied",
|
|
11
|
+
"evidenceDigest": "hmac-sha256:cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd",
|
|
12
|
+
"observedAt": "2026-08-16T00:00:04.000Z"
|
|
13
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "chatgpt.browser_control.operation_control_request.v1",
|
|
3
|
+
"controlActionId": "22222222-2222-4222-8222-222222222222",
|
|
4
|
+
"parent": {
|
|
5
|
+
"schemaVersion": "chatgpt.browser_control.operation_handle.v1",
|
|
6
|
+
"operationId": "11111111-1111-4111-8111-111111111111",
|
|
7
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
8
|
+
"surface": "work",
|
|
9
|
+
"revision": 8,
|
|
10
|
+
"phase": "generating",
|
|
11
|
+
"mutationBoundary": "send_may_have_occurred",
|
|
12
|
+
"targetBindingDigest": "hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
|
|
13
|
+
},
|
|
14
|
+
"action": "steer",
|
|
15
|
+
"expectedAssistantTurnId": "assistant-turn-1",
|
|
16
|
+
"steerPrompt": "Continue with the next bounded step.",
|
|
17
|
+
"timeoutMs": 10000
|
|
18
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
{
|
|
2
|
+
"action": "stop",
|
|
3
|
+
"blocker": {
|
|
4
|
+
"code": "send_control_unavailable",
|
|
5
|
+
"message": "Operation blocked: send control unavailable (evidence recorded).",
|
|
6
|
+
"mutationBoundary": "control_may_have_occurred",
|
|
7
|
+
"operationId": "11111111-1111-4111-8111-111111111111",
|
|
8
|
+
"phase": "generating",
|
|
9
|
+
"recoverable": true,
|
|
10
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
11
|
+
"schemaVersion": "chatgpt.browser_control.operation_blocker.v1"
|
|
12
|
+
},
|
|
13
|
+
"controlActionId": "22222222-2222-4222-8222-222222222222",
|
|
14
|
+
"expectedAssistantTurnId": "assistant-turn-1",
|
|
15
|
+
"handle": {
|
|
16
|
+
"mutationBoundary": "control_may_have_occurred",
|
|
17
|
+
"operationId": "11111111-1111-4111-8111-111111111111",
|
|
18
|
+
"phase": "generating",
|
|
19
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
20
|
+
"revision": 6,
|
|
21
|
+
"schemaVersion": "chatgpt.browser_control.operation_handle.v1",
|
|
22
|
+
"surface": "chat",
|
|
23
|
+
"targetBindingDigest": "hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
|
|
24
|
+
},
|
|
25
|
+
"operationId": "11111111-1111-4111-8111-111111111111",
|
|
26
|
+
"parentRequestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
27
|
+
"parentTargetBindingDigest": "hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
|
|
28
|
+
"requestDigest": "hmac-sha256:eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
|
|
29
|
+
"schemaVersion": "chatgpt.browser_control.operation_control_result.v1",
|
|
30
|
+
"status": "uncertain"
|
|
31
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "chatgpt.browser_control.operation_event.v1",
|
|
3
|
+
"revision": 1,
|
|
4
|
+
"previousEventDigest": "hmac-sha256:0000000000000000000000000000000000000000000000000000000000000000",
|
|
5
|
+
"eventDigest": "hmac-sha256:9999999999999999999999999999999999999999999999999999999999999999",
|
|
6
|
+
"event": {
|
|
7
|
+
"type": "operation_created",
|
|
8
|
+
"operationId": "11111111-1111-4111-8111-111111111111",
|
|
9
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
10
|
+
"surface": "chat",
|
|
11
|
+
"createdAt": "2026-08-16T00:00:00.000Z",
|
|
12
|
+
"capturePolicy": {
|
|
13
|
+
"responseContent": "metadata",
|
|
14
|
+
"responseFormat": "markdown",
|
|
15
|
+
"artifacts": "receipt_only"
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": "chatgpt.browser_control.operation_handle.v1",
|
|
3
|
+
"operationId": "11111111-1111-4111-8111-111111111111",
|
|
4
|
+
"requestDigest": "hmac-sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
5
|
+
"surface": "chat",
|
|
6
|
+
"revision": 3,
|
|
7
|
+
"phase": "ready",
|
|
8
|
+
"mutationBoundary": "handoff_may_have_occurred",
|
|
9
|
+
"targetBindingDigest": "hmac-sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
|
|
10
|
+
}
|