@danypops/vehicle-core 0.18.6 → 0.19.0
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.
|
@@ -13,6 +13,20 @@ export declare const DEFAULT_APPROVAL_EFFECTS: readonly VehicleEffect[];
|
|
|
13
13
|
* loop point of the gate entirely.
|
|
14
14
|
*/
|
|
15
15
|
export declare const VEHICLE_APPROVAL_RESOLVE_OPERATION_NAME = "vehicle.approval.resolve";
|
|
16
|
+
/**
|
|
17
|
+
* The name VehicleRegistry.configureApprovals() registers its own read-only status-lookup
|
|
18
|
+
* operation under. Unlike vehicle.approval.resolve, this one is deliberately left projectable
|
|
19
|
+
* as an ordinary Pi/model-callable tool: reading a requestId's own already-made decision (who
|
|
20
|
+
* decided, when, and any comment) can never let a caller grant its own pending request -- it
|
|
21
|
+
* only ever surfaces a decision a human (or other authority) already recorded. Exists because a
|
|
22
|
+
* gated invoke()'s own local HITL prompt and the eventual human decision can genuinely happen on
|
|
23
|
+
* two different calls (a caller-side timeout, a UI presented asynchronously outside the
|
|
24
|
+
* originating call's own lifetime, a session restart in between) -- without this, a decision
|
|
25
|
+
* (and any comment explaining it) made after the originating call already gave up is
|
|
26
|
+
* unrecoverable, since vehicle.approval.resolve's own vehicleApprovalResolvedEvent is transient
|
|
27
|
+
* pub/sub with no replay for a caller that wasn't subscribed at that exact moment.
|
|
28
|
+
*/
|
|
29
|
+
export declare const VEHICLE_APPROVAL_STATUS_OPERATION_NAME = "vehicle.approval.status";
|
|
16
30
|
/** How long a request stays resolvable before it lapses and must be re-requested. */
|
|
17
31
|
export declare const DEFAULT_APPROVAL_TIMEOUT_MS: number;
|
|
18
32
|
/** Emitted (as a Vehicle Event) the moment a gated-effect invoke() has no valid capability -- durable-first, before any interactive prompt is attempted. */
|
|
@@ -37,6 +37,20 @@ export const DEFAULT_APPROVAL_EFFECTS = ["destructive", "open-world"];
|
|
|
37
37
|
* loop point of the gate entirely.
|
|
38
38
|
*/
|
|
39
39
|
export const VEHICLE_APPROVAL_RESOLVE_OPERATION_NAME = "vehicle.approval.resolve";
|
|
40
|
+
/**
|
|
41
|
+
* The name VehicleRegistry.configureApprovals() registers its own read-only status-lookup
|
|
42
|
+
* operation under. Unlike vehicle.approval.resolve, this one is deliberately left projectable
|
|
43
|
+
* as an ordinary Pi/model-callable tool: reading a requestId's own already-made decision (who
|
|
44
|
+
* decided, when, and any comment) can never let a caller grant its own pending request -- it
|
|
45
|
+
* only ever surfaces a decision a human (or other authority) already recorded. Exists because a
|
|
46
|
+
* gated invoke()'s own local HITL prompt and the eventual human decision can genuinely happen on
|
|
47
|
+
* two different calls (a caller-side timeout, a UI presented asynchronously outside the
|
|
48
|
+
* originating call's own lifetime, a session restart in between) -- without this, a decision
|
|
49
|
+
* (and any comment explaining it) made after the originating call already gave up is
|
|
50
|
+
* unrecoverable, since vehicle.approval.resolve's own vehicleApprovalResolvedEvent is transient
|
|
51
|
+
* pub/sub with no replay for a caller that wasn't subscribed at that exact moment.
|
|
52
|
+
*/
|
|
53
|
+
export const VEHICLE_APPROVAL_STATUS_OPERATION_NAME = "vehicle.approval.status";
|
|
40
54
|
/** How long a request stays resolvable before it lapses and must be re-requested. */
|
|
41
55
|
export const DEFAULT_APPROVAL_TIMEOUT_MS = 5 * 60_000;
|
|
42
56
|
const requestedPayloadSchema = defineVehicleSchema({
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@danypops/vehicle-core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.19.0",
|
|
4
4
|
"description": "Vehicle's runtime-neutral wire contract: operation descriptors, schema codecs, failure shapes. Zero runtime dependencies, zero Bun-specific code -- the one thing every Vehicle client and server package depends on.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -42,6 +42,21 @@ export const DEFAULT_APPROVAL_EFFECTS: readonly VehicleEffect[] = ["destructive"
|
|
|
42
42
|
*/
|
|
43
43
|
export const VEHICLE_APPROVAL_RESOLVE_OPERATION_NAME = "vehicle.approval.resolve";
|
|
44
44
|
|
|
45
|
+
/**
|
|
46
|
+
* The name VehicleRegistry.configureApprovals() registers its own read-only status-lookup
|
|
47
|
+
* operation under. Unlike vehicle.approval.resolve, this one is deliberately left projectable
|
|
48
|
+
* as an ordinary Pi/model-callable tool: reading a requestId's own already-made decision (who
|
|
49
|
+
* decided, when, and any comment) can never let a caller grant its own pending request -- it
|
|
50
|
+
* only ever surfaces a decision a human (or other authority) already recorded. Exists because a
|
|
51
|
+
* gated invoke()'s own local HITL prompt and the eventual human decision can genuinely happen on
|
|
52
|
+
* two different calls (a caller-side timeout, a UI presented asynchronously outside the
|
|
53
|
+
* originating call's own lifetime, a session restart in between) -- without this, a decision
|
|
54
|
+
* (and any comment explaining it) made after the originating call already gave up is
|
|
55
|
+
* unrecoverable, since vehicle.approval.resolve's own vehicleApprovalResolvedEvent is transient
|
|
56
|
+
* pub/sub with no replay for a caller that wasn't subscribed at that exact moment.
|
|
57
|
+
*/
|
|
58
|
+
export const VEHICLE_APPROVAL_STATUS_OPERATION_NAME = "vehicle.approval.status";
|
|
59
|
+
|
|
45
60
|
/** How long a request stays resolvable before it lapses and must be re-requested. */
|
|
46
61
|
export const DEFAULT_APPROVAL_TIMEOUT_MS = 5 * 60_000;
|
|
47
62
|
|