pipework 0.8.11 → 0.8.12
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 +4 -0
- package/dist/cli/commands/test.d.ts +1 -0
- package/dist/cli/commands/test.d.ts.map +1 -1
- package/dist/cli/commands/test.js +24 -1
- package/dist/cli/commands/test.js.map +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +4 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/data/valve/artifact.d.ts +18 -0
- package/dist/data/valve/artifact.d.ts.map +1 -0
- package/dist/data/valve/artifact.js +15 -0
- package/dist/data/valve/artifact.js.map +1 -0
- package/dist/data/valve/contract-diff.d.ts +15 -0
- package/dist/data/valve/contract-diff.d.ts.map +1 -0
- package/dist/data/valve/contract-diff.js +12 -0
- package/dist/data/valve/contract-diff.js.map +1 -0
- package/dist/data/valve/cross.d.ts +15 -0
- package/dist/data/valve/cross.d.ts.map +1 -0
- package/dist/data/valve/cross.js +48 -0
- package/dist/data/valve/cross.js.map +1 -0
- package/dist/data/valve/decision.d.ts +29 -0
- package/dist/data/valve/decision.d.ts.map +1 -0
- package/dist/data/valve/decision.js +19 -0
- package/dist/data/valve/decision.js.map +1 -0
- package/dist/data/valve/faucet.d.ts +18 -0
- package/dist/data/valve/faucet.d.ts.map +1 -0
- package/dist/data/valve/faucet.js +34 -0
- package/dist/data/valve/faucet.js.map +1 -0
- package/dist/data/valve/gate.d.ts +28 -0
- package/dist/data/valve/gate.d.ts.map +1 -0
- package/dist/data/valve/gate.js +74 -0
- package/dist/data/valve/gate.js.map +1 -0
- package/dist/data/valve/graph.d.ts +28 -0
- package/dist/data/valve/graph.d.ts.map +1 -0
- package/dist/data/valve/graph.js +43 -0
- package/dist/data/valve/graph.js.map +1 -0
- package/dist/data/valve/index.d.ts +18 -0
- package/dist/data/valve/index.d.ts.map +1 -0
- package/dist/data/valve/index.js +10 -0
- package/dist/data/valve/index.js.map +1 -0
- package/dist/data/valve/namespace.d.ts +45 -0
- package/dist/data/valve/namespace.d.ts.map +1 -0
- package/dist/data/valve/namespace.js +45 -0
- package/dist/data/valve/namespace.js.map +1 -0
- package/dist/data/valve/registry.d.ts +14 -0
- package/dist/data/valve/registry.d.ts.map +1 -0
- package/dist/data/valve/registry.js +41 -0
- package/dist/data/valve/registry.js.map +1 -0
- package/dist/data/valve/supply.d.ts +33 -0
- package/dist/data/valve/supply.d.ts.map +1 -0
- package/dist/data/valve/supply.js +96 -0
- package/dist/data/valve/supply.js.map +1 -0
- package/dist/data/valve/types.d.ts +138 -0
- package/dist/data/valve/types.d.ts.map +1 -0
- package/dist/data/valve/types.js +2 -0
- package/dist/data/valve/types.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/test/reap.d.ts +33 -0
- package/dist/test/reap.d.ts.map +1 -0
- package/dist/test/reap.js +117 -0
- package/dist/test/reap.js.map +1 -0
- package/dist/test/setup.d.ts.map +1 -1
- package/dist/test/setup.js +49 -8
- package/dist/test/setup.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { valves, faucetsOf } from './registry.js';
|
|
2
|
+
function faucetNodeId(valve, target) {
|
|
3
|
+
return `${valve}::${target}`;
|
|
4
|
+
}
|
|
5
|
+
/** Assemble the valve graph from every registered valve and faucet. */
|
|
6
|
+
export function buildValveGraph() {
|
|
7
|
+
const nodes = new Map();
|
|
8
|
+
const edges = [];
|
|
9
|
+
for (const [name, definition] of valves()) {
|
|
10
|
+
nodes.set(name, { id: name, kind: definition.kind === 'transition-gate' ? 'gate' : 'supply' });
|
|
11
|
+
const consumers = faucetsOf(name);
|
|
12
|
+
for (const consumer of consumers) {
|
|
13
|
+
const faucetId = faucetNodeId(name, consumer.target);
|
|
14
|
+
nodes.set(faucetId, { id: faucetId, kind: 'faucet' });
|
|
15
|
+
edges.push({ kind: 'crossing', from: name, to: faucetId });
|
|
16
|
+
}
|
|
17
|
+
if (definition.kind === 'transition-gate') {
|
|
18
|
+
const gateDef = definition;
|
|
19
|
+
for (const inbound of Object.values(gateDef.context)) {
|
|
20
|
+
edges.push({ kind: 'context', from: name, to: inbound });
|
|
21
|
+
}
|
|
22
|
+
if (gateDef.retraction !== undefined) {
|
|
23
|
+
for (const consumer of consumers) {
|
|
24
|
+
edges.push({ kind: 'retraction', from: name, to: faucetNodeId(name, consumer.target) });
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
return { nodes: [...nodes.values()], edges };
|
|
30
|
+
}
|
|
31
|
+
/** Faucet node ids fed by the named valve — the direct downstream of a crossing. */
|
|
32
|
+
export function downstreamFaucets(graph, valveName) {
|
|
33
|
+
return graph.edges
|
|
34
|
+
.filter((edge) => edge.kind === 'crossing' && edge.from === valveName)
|
|
35
|
+
.map((edge) => edge.to);
|
|
36
|
+
}
|
|
37
|
+
/** Gate valve names whose enrichment context depends on the named valve. */
|
|
38
|
+
export function contextDependents(graph, valveName) {
|
|
39
|
+
return graph.edges
|
|
40
|
+
.filter((edge) => edge.kind === 'context' && edge.to === valveName)
|
|
41
|
+
.map((edge) => edge.from);
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=graph.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph.js","sourceRoot":"","sources":["../../../src/data/valve/graph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AA6BjD,SAAS,YAAY,CAAC,KAAa,EAAE,MAAc;IACjD,OAAO,GAAG,KAAK,KAAK,MAAM,EAAE,CAAA;AAC9B,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,eAAe;IAC7B,MAAM,KAAK,GAAG,IAAI,GAAG,EAA0B,CAAA;IAC/C,MAAM,KAAK,GAAqB,EAAE,CAAA;IAElC,KAAK,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,MAAM,EAAE,EAAE,CAAC;QAC1C,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,KAAK,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;QAE9F,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;QACjC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;YACpD,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;YACrD,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAA;QAC5D,CAAC;QAED,IAAI,UAAU,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YAC1C,MAAM,OAAO,GAAG,UAAqC,CAAA;YACrD,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBACrD,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;YAC1D,CAAC;YACD,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;gBACrC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;oBACjC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;gBACzF,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAA;AAC9C,CAAC;AAED,oFAAoF;AACpF,MAAM,UAAU,iBAAiB,CAAC,KAAiB,EAAE,SAAiB;IACpE,OAAO,KAAK,CAAC,KAAK;SACf,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC;SACrE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AAC3B,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,iBAAiB,CAAC,KAAiB,EAAE,SAAiB;IACpE,OAAO,KAAK,CAAC,KAAK;SACf,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,EAAE,KAAK,SAAS,CAAC;SAClE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAC7B,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export { cross, held, failed } from './decision.js';
|
|
2
|
+
export type { Crossed, Held, Failed, DecisionOutcome } from './decision.js';
|
|
3
|
+
export { registerValve, valves, getValve, registerFaucet, faucetsOf, clearValveRegistry, } from './registry.js';
|
|
4
|
+
export { supply } from './supply.js';
|
|
5
|
+
export type { SupplyBuilder } from './supply.js';
|
|
6
|
+
export { gate } from './gate.js';
|
|
7
|
+
export type { GateBuilder } from './gate.js';
|
|
8
|
+
export { faucet } from './faucet.js';
|
|
9
|
+
export type { FaucetBuilder } from './faucet.js';
|
|
10
|
+
export { crossSupply, crossGate } from './cross.js';
|
|
11
|
+
export { buildValveGraph, downstreamFaucets, contextDependents } from './graph.js';
|
|
12
|
+
export type { ValveGraph, ValveGraphNode, ValveGraphEdge, ValveNodeKind, ValveEdgeKind } from './graph.js';
|
|
13
|
+
export { diffContract } from './contract-diff.js';
|
|
14
|
+
export type { ContractDiff } from './contract-diff.js';
|
|
15
|
+
export { emitArtifact } from './artifact.js';
|
|
16
|
+
export type { ContractArtifact } from './artifact.js';
|
|
17
|
+
export type { ValveKind, ValveTopology, ValveDefinition, HandoffTrigger, CrossingMode, ContractShape, ContractPayload, SupplyDefinition, GateTrigger, GateRetraction, GateDecision, GateDefinition, FaucetHandler, FaucetDefinition, CrossingResult, } from './types.js';
|
|
18
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/data/valve/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AACnD,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC3E,OAAO,EACL,aAAa,EACb,MAAM,EACN,QAAQ,EACR,cAAc,EACd,SAAS,EACT,kBAAkB,GACnB,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,YAAY,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAClF,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1G,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACrD,YAAY,EACV,SAAS,EACT,aAAa,EACb,eAAe,EACf,cAAc,EACd,YAAY,EACZ,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,YAAY,EACZ,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,cAAc,GACf,MAAM,YAAY,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export { cross, held, failed } from './decision.js';
|
|
2
|
+
export { registerValve, valves, getValve, registerFaucet, faucetsOf, clearValveRegistry, } from './registry.js';
|
|
3
|
+
export { supply } from './supply.js';
|
|
4
|
+
export { gate } from './gate.js';
|
|
5
|
+
export { faucet } from './faucet.js';
|
|
6
|
+
export { crossSupply, crossGate } from './cross.js';
|
|
7
|
+
export { buildValveGraph, downstreamFaucets, contextDependents } from './graph.js';
|
|
8
|
+
export { diffContract } from './contract-diff.js';
|
|
9
|
+
export { emitArtifact } from './artifact.js';
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/data/valve/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAEnD,OAAO,EACL,aAAa,EACb,MAAM,EACN,QAAQ,EACR,cAAc,EACd,SAAS,EACT,kBAAkB,GACnB,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAElF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEjD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { supply } from './supply.js';
|
|
2
|
+
import { gate } from './gate.js';
|
|
3
|
+
import { faucet } from './faucet.js';
|
|
4
|
+
import { cross, held, failed } from './decision.js';
|
|
5
|
+
import { crossSupply, crossGate } from './cross.js';
|
|
6
|
+
import { buildValveGraph, downstreamFaucets, contextDependents } from './graph.js';
|
|
7
|
+
import { diffContract } from './contract-diff.js';
|
|
8
|
+
import { emitArtifact } from './artifact.js';
|
|
9
|
+
import { valves, getValve, faucetsOf } from './registry.js';
|
|
10
|
+
/** Valve namespace — typed, directional, gated boundaries between code silos. */
|
|
11
|
+
export declare const valve: {
|
|
12
|
+
/** Declare a handoff valve — the producer side of a payload crossing. */
|
|
13
|
+
supply: typeof supply;
|
|
14
|
+
/** Declare a transition-gate valve — the producer side of a gated state change. */
|
|
15
|
+
gate: typeof gate;
|
|
16
|
+
/** Declare a faucet — the consumer side of a `supply -> faucet` edge. */
|
|
17
|
+
faucet: typeof faucet;
|
|
18
|
+
/** Decision outcome: cross the valve, delivering the payload. */
|
|
19
|
+
cross: typeof cross;
|
|
20
|
+
/** Decision outcome: hold the crossing in a provisional, reviewable state. */
|
|
21
|
+
held: typeof held;
|
|
22
|
+
/** Decision outcome: evaluation failed — retryable, never a thrown exception. */
|
|
23
|
+
failed: typeof failed;
|
|
24
|
+
/** Execute a handoff crossing in the caller's transaction. */
|
|
25
|
+
crossSupply: typeof crossSupply;
|
|
26
|
+
/** Execute a transition-gate crossing. */
|
|
27
|
+
crossGate: typeof crossGate;
|
|
28
|
+
/** Assemble the directional valve graph from every registered valve and faucet. */
|
|
29
|
+
graph: typeof buildValveGraph;
|
|
30
|
+
/** The faucet nodes a valve feeds. */
|
|
31
|
+
downstreamFaucets: typeof downstreamFaucets;
|
|
32
|
+
/** The gates whose enrichment context depends on a valve. */
|
|
33
|
+
contextDependents: typeof contextDependents;
|
|
34
|
+
/** Diff a valve contract between two versions. */
|
|
35
|
+
diffContract: typeof diffContract;
|
|
36
|
+
/** Project a handoff supply to its lightweight contract artifact. */
|
|
37
|
+
emitArtifact: typeof emitArtifact;
|
|
38
|
+
/** All registered producer valves, keyed by name. */
|
|
39
|
+
valves: typeof valves;
|
|
40
|
+
/** Look up a registered valve by name. */
|
|
41
|
+
getValve: typeof getValve;
|
|
42
|
+
/** The faucets consuming a named valve. */
|
|
43
|
+
faucetsOf: typeof faucetsOf;
|
|
44
|
+
};
|
|
45
|
+
//# sourceMappingURL=namespace.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"namespace.d.ts","sourceRoot":"","sources":["../../../src/data/valve/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAClF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAE3D,iFAAiF;AACjF,eAAO,MAAM,KAAK;IAChB,yEAAyE;;IAEzE,mFAAmF;;IAEnF,yEAAyE;;IAEzE,iEAAiE;;IAEjE,8EAA8E;;IAE9E,iFAAiF;;IAEjF,8DAA8D;;IAE9D,0CAA0C;;IAE1C,mFAAmF;;IAEnF,sCAAsC;;IAEtC,6DAA6D;;IAE7D,kDAAkD;;IAElD,qEAAqE;;IAErE,qDAAqD;;IAErD,0CAA0C;;IAE1C,2CAA2C;;CAE5C,CAAA"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { supply } from './supply.js';
|
|
2
|
+
import { gate } from './gate.js';
|
|
3
|
+
import { faucet } from './faucet.js';
|
|
4
|
+
import { cross, held, failed } from './decision.js';
|
|
5
|
+
import { crossSupply, crossGate } from './cross.js';
|
|
6
|
+
import { buildValveGraph, downstreamFaucets, contextDependents } from './graph.js';
|
|
7
|
+
import { diffContract } from './contract-diff.js';
|
|
8
|
+
import { emitArtifact } from './artifact.js';
|
|
9
|
+
import { valves, getValve, faucetsOf } from './registry.js';
|
|
10
|
+
/** Valve namespace — typed, directional, gated boundaries between code silos. */
|
|
11
|
+
export const valve = {
|
|
12
|
+
/** Declare a handoff valve — the producer side of a payload crossing. */
|
|
13
|
+
supply,
|
|
14
|
+
/** Declare a transition-gate valve — the producer side of a gated state change. */
|
|
15
|
+
gate,
|
|
16
|
+
/** Declare a faucet — the consumer side of a `supply -> faucet` edge. */
|
|
17
|
+
faucet,
|
|
18
|
+
/** Decision outcome: cross the valve, delivering the payload. */
|
|
19
|
+
cross,
|
|
20
|
+
/** Decision outcome: hold the crossing in a provisional, reviewable state. */
|
|
21
|
+
held,
|
|
22
|
+
/** Decision outcome: evaluation failed — retryable, never a thrown exception. */
|
|
23
|
+
failed,
|
|
24
|
+
/** Execute a handoff crossing in the caller's transaction. */
|
|
25
|
+
crossSupply,
|
|
26
|
+
/** Execute a transition-gate crossing. */
|
|
27
|
+
crossGate,
|
|
28
|
+
/** Assemble the directional valve graph from every registered valve and faucet. */
|
|
29
|
+
graph: buildValveGraph,
|
|
30
|
+
/** The faucet nodes a valve feeds. */
|
|
31
|
+
downstreamFaucets,
|
|
32
|
+
/** The gates whose enrichment context depends on a valve. */
|
|
33
|
+
contextDependents,
|
|
34
|
+
/** Diff a valve contract between two versions. */
|
|
35
|
+
diffContract,
|
|
36
|
+
/** Project a handoff supply to its lightweight contract artifact. */
|
|
37
|
+
emitArtifact,
|
|
38
|
+
/** All registered producer valves, keyed by name. */
|
|
39
|
+
valves,
|
|
40
|
+
/** Look up a registered valve by name. */
|
|
41
|
+
getValve,
|
|
42
|
+
/** The faucets consuming a named valve. */
|
|
43
|
+
faucetsOf,
|
|
44
|
+
};
|
|
45
|
+
//# sourceMappingURL=namespace.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../../src/data/valve/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAClF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAE3D,iFAAiF;AACjF,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,yEAAyE;IACzE,MAAM;IACN,mFAAmF;IACnF,IAAI;IACJ,yEAAyE;IACzE,MAAM;IACN,iEAAiE;IACjE,KAAK;IACL,8EAA8E;IAC9E,IAAI;IACJ,iFAAiF;IACjF,MAAM;IACN,8DAA8D;IAC9D,WAAW;IACX,0CAA0C;IAC1C,SAAS;IACT,mFAAmF;IACnF,KAAK,EAAE,eAAe;IACtB,sCAAsC;IACtC,iBAAiB;IACjB,6DAA6D;IAC7D,iBAAiB;IACjB,kDAAkD;IAClD,YAAY;IACZ,qEAAqE;IACrE,YAAY;IACZ,qDAAqD;IACrD,MAAM;IACN,0CAA0C;IAC1C,QAAQ;IACR,2CAA2C;IAC3C,SAAS;CACV,CAAA"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { FaucetDefinition, ValveDefinition } from './types.js';
|
|
2
|
+
/** Register a producer valve under its name. Names must be unique across the process. */
|
|
3
|
+
export declare function registerValve(definition: ValveDefinition): void;
|
|
4
|
+
/** All registered producer valves, keyed by name. */
|
|
5
|
+
export declare function valves(): ReadonlyMap<string, ValveDefinition>;
|
|
6
|
+
/** Look up one producer valve by name, or `undefined` if it is not registered. */
|
|
7
|
+
export declare function getValve(name: string): ValveDefinition | undefined;
|
|
8
|
+
/** Register a faucet against the valve name it consumes. A valve may have many faucets. */
|
|
9
|
+
export declare function registerFaucet(faucet: FaucetDefinition<unknown>): void;
|
|
10
|
+
/** Every faucet that consumes the named valve, in declaration order. */
|
|
11
|
+
export declare function faucetsOf(valveName: string): readonly FaucetDefinition<unknown>[];
|
|
12
|
+
/** Empty both registries. Test support — production code never calls this. */
|
|
13
|
+
export declare function clearValveRegistry(): void;
|
|
14
|
+
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/data/valve/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AASnE,yFAAyF;AACzF,wBAAgB,aAAa,CAAC,UAAU,EAAE,eAAe,GAAG,IAAI,CAW/D;AAED,qDAAqD;AACrD,wBAAgB,MAAM,IAAI,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,CAE7D;AAED,kFAAkF;AAClF,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAElE;AAED,2FAA2F;AAC3F,wBAAgB,cAAc,CAAC,MAAM,EAAE,gBAAgB,CAAC,OAAO,CAAC,GAAG,IAAI,CAItE;AAED,wEAAwE;AACxE,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAEjF;AAED,8EAA8E;AAC9E,wBAAgB,kBAAkB,IAAI,IAAI,CAGzC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
// Two global registries, populated at import time when valve declarations run.
|
|
2
|
+
// `registry` holds producers (supply / gate); `faucetRegistry` holds the
|
|
3
|
+
// consumer side, keyed by the valve name each faucet binds to. The valve graph
|
|
4
|
+
// reconciles the two into `supply -> faucet` edges.
|
|
5
|
+
const registry = new Map();
|
|
6
|
+
const faucetRegistry = new Map();
|
|
7
|
+
/** Register a producer valve under its name. Names must be unique across the process. */
|
|
8
|
+
export function registerValve(definition) {
|
|
9
|
+
const existing = registry.get(definition.name);
|
|
10
|
+
if (existing !== undefined) {
|
|
11
|
+
throw new Error(`[pipework] Duplicate valve: "${definition.name}" is already registered.\n\n` +
|
|
12
|
+
' Each valve must have a unique name.\n' +
|
|
13
|
+
` Existing: ${existing.kind} (${existing.topology.producer} -> ${existing.topology.consumer})\n` +
|
|
14
|
+
` Duplicate: ${definition.kind} (${definition.topology.producer} -> ${definition.topology.consumer})\n`);
|
|
15
|
+
}
|
|
16
|
+
registry.set(definition.name, definition);
|
|
17
|
+
}
|
|
18
|
+
/** All registered producer valves, keyed by name. */
|
|
19
|
+
export function valves() {
|
|
20
|
+
return registry;
|
|
21
|
+
}
|
|
22
|
+
/** Look up one producer valve by name, or `undefined` if it is not registered. */
|
|
23
|
+
export function getValve(name) {
|
|
24
|
+
return registry.get(name);
|
|
25
|
+
}
|
|
26
|
+
/** Register a faucet against the valve name it consumes. A valve may have many faucets. */
|
|
27
|
+
export function registerFaucet(faucet) {
|
|
28
|
+
const existing = faucetRegistry.get(faucet.valve) ?? [];
|
|
29
|
+
existing.push(faucet);
|
|
30
|
+
faucetRegistry.set(faucet.valve, existing);
|
|
31
|
+
}
|
|
32
|
+
/** Every faucet that consumes the named valve, in declaration order. */
|
|
33
|
+
export function faucetsOf(valveName) {
|
|
34
|
+
return faucetRegistry.get(valveName) ?? [];
|
|
35
|
+
}
|
|
36
|
+
/** Empty both registries. Test support — production code never calls this. */
|
|
37
|
+
export function clearValveRegistry() {
|
|
38
|
+
registry.clear();
|
|
39
|
+
faucetRegistry.clear();
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/data/valve/registry.ts"],"names":[],"mappings":"AAEA,+EAA+E;AAC/E,yEAAyE;AACzE,+EAA+E;AAC/E,oDAAoD;AACpD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA2B,CAAA;AACnD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAuC,CAAA;AAErE,yFAAyF;AACzF,MAAM,UAAU,aAAa,CAAC,UAA2B;IACvD,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IAC9C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CACb,gCAAgC,UAAU,CAAC,IAAI,8BAA8B;YAC7E,yCAAyC;YACzC,gBAAgB,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,QAAQ,CAAC,QAAQ,OAAO,QAAQ,CAAC,QAAQ,CAAC,QAAQ,KAAK;YAClG,gBAAgB,UAAU,CAAC,IAAI,KAAK,UAAU,CAAC,QAAQ,CAAC,QAAQ,OAAO,UAAU,CAAC,QAAQ,CAAC,QAAQ,KAAK,CACzG,CAAA;IACH,CAAC;IACD,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;AAC3C,CAAC;AAED,qDAAqD;AACrD,MAAM,UAAU,MAAM;IACpB,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,QAAQ,CAAC,IAAY;IACnC,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;AAC3B,CAAC;AAED,2FAA2F;AAC3F,MAAM,UAAU,cAAc,CAAC,MAAiC;IAC9D,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAA;IACvD,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACrB,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;AAC5C,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,SAAS,CAAC,SAAiB;IACzC,OAAO,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAA;AAC5C,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,kBAAkB;IAChC,QAAQ,CAAC,KAAK,EAAE,CAAA;IAChB,cAAc,CAAC,KAAK,EAAE,CAAA;AACxB,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { ContractPayload, ContractShape, HandoffTrigger, SupplyDefinition } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* The producer-side builder for a handoff valve. Type parameters narrow as the
|
|
4
|
+
* chain progresses: `.from()` fixes the source row type, `.contract()` fixes
|
|
5
|
+
* the payload type, and `.guard()` / `.project()` / `.idempotentBy()` are then
|
|
6
|
+
* checked against them. `.to()` is terminal — it registers the valve.
|
|
7
|
+
*/
|
|
8
|
+
export interface SupplyBuilder<TSource, TPayload> {
|
|
9
|
+
/** The source entity and the state transition (or push) that fires the crossing. */
|
|
10
|
+
from<TFromSource = TSource>(source: string, trigger: HandoffTrigger): SupplyBuilder<TFromSource, TPayload>;
|
|
11
|
+
/** The payload schema — `.project()` must produce exactly this shape. */
|
|
12
|
+
contract<TShape extends ContractShape>(shape: TShape): SupplyBuilder<TSource, ContractPayload<TShape>>;
|
|
13
|
+
/** A guard predicate; the payload may not cross unless it holds. */
|
|
14
|
+
guard(predicate: (row: TSource) => boolean): SupplyBuilder<TSource, TPayload>;
|
|
15
|
+
/** Projects the source row to the contract payload — a snapshot taken at crossing time. */
|
|
16
|
+
project(projection: (row: TSource) => TPayload): SupplyBuilder<TSource, TPayload>;
|
|
17
|
+
/** Names a post-condition that holds across the crossing (checked via the valve graph). */
|
|
18
|
+
invariant(name: string): SupplyBuilder<TSource, TPayload>;
|
|
19
|
+
/** The source field carrying the trace/correlation id propagated across the crossing. */
|
|
20
|
+
lineage(field: string): SupplyBuilder<TSource, TPayload>;
|
|
21
|
+
/** Derives the idempotency key for a crossing from the source row. */
|
|
22
|
+
idempotentBy(key: (row: TSource) => string): SupplyBuilder<TSource, TPayload>;
|
|
23
|
+
/** Run the crossing as a durable retried job rather than in the caller's transaction. */
|
|
24
|
+
durable(retry?: 'backoff' | 'fixed'): SupplyBuilder<TSource, TPayload>;
|
|
25
|
+
/** The consumer silo. Terminal — registers the valve and returns its definition. */
|
|
26
|
+
to(consumer: string): SupplyDefinition<TSource, TPayload>;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Declare a handoff valve. `name` identifies the valve; `producer` is the silo
|
|
30
|
+
* the data crosses *from*. Chain the anatomy and finish with `.to(consumer)`.
|
|
31
|
+
*/
|
|
32
|
+
export declare function supply(name: string, producer: string): SupplyBuilder<unknown, unknown>;
|
|
33
|
+
//# sourceMappingURL=supply.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"supply.d.ts","sourceRoot":"","sources":["../../../src/data/valve/supply.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,eAAe,EACf,aAAa,EACb,cAAc,EACd,gBAAgB,EACjB,MAAM,YAAY,CAAA;AAEnB;;;;;GAKG;AACH,MAAM,WAAW,aAAa,CAAC,OAAO,EAAE,QAAQ;IAC9C,oFAAoF;IACpF,IAAI,CAAC,WAAW,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,aAAa,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;IAC1G,yEAAyE;IACzE,QAAQ,CAAC,MAAM,SAAS,aAAa,EAAE,KAAK,EAAE,MAAM,GAAG,aAAa,CAAC,OAAO,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC,CAAA;IACtG,oEAAoE;IACpE,KAAK,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,GAAG,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAC7E,2FAA2F;IAC3F,OAAO,CAAC,UAAU,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,QAAQ,GAAG,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IACjF,2FAA2F;IAC3F,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IACzD,yFAAyF;IACzF,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IACxD,sEAAsE;IACtE,YAAY,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,MAAM,GAAG,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAC7E,yFAAyF;IACzF,OAAO,CAAC,KAAK,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IACtE,oFAAoF;IACpF,EAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;CAC1D;AA0DD;;;GAGG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,CA0DtF"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { registerValve } from './registry.js';
|
|
2
|
+
function finalize(state, consumer) {
|
|
3
|
+
if (state.source === undefined || state.trigger === undefined) {
|
|
4
|
+
throw new Error(`[pipework] Valve "${state.name}" is missing .from(...).\n\n` +
|
|
5
|
+
' A supply must declare its source entity and trigger before .to(...).\n' +
|
|
6
|
+
' Example: supply("frozen-outcome", "compensation")\n' +
|
|
7
|
+
' .from("outcomes", { on: "status", from: "open", to: "frozen" })\n');
|
|
8
|
+
}
|
|
9
|
+
if (state.contract === undefined) {
|
|
10
|
+
throw new Error(`[pipework] Valve "${state.name}" is missing .contract(...).\n\n` +
|
|
11
|
+
' A supply must declare its payload contract before .to(...).\n');
|
|
12
|
+
}
|
|
13
|
+
if (state.project === undefined) {
|
|
14
|
+
throw new Error(`[pipework] Valve "${state.name}" is missing .project(...).\n\n` +
|
|
15
|
+
' A supply must declare how the source row projects to the contract payload before .to(...).\n');
|
|
16
|
+
}
|
|
17
|
+
const definition = {
|
|
18
|
+
name: state.name,
|
|
19
|
+
kind: 'handoff',
|
|
20
|
+
topology: { producer: state.producer, consumer },
|
|
21
|
+
source: state.source,
|
|
22
|
+
trigger: state.trigger,
|
|
23
|
+
contract: state.contract,
|
|
24
|
+
guard: state.guard,
|
|
25
|
+
project: state.project,
|
|
26
|
+
invariants: [...state.invariants],
|
|
27
|
+
lineageField: state.lineageField,
|
|
28
|
+
idempotentBy: state.idempotentBy,
|
|
29
|
+
crossing: state.crossing,
|
|
30
|
+
};
|
|
31
|
+
registerValve(definition);
|
|
32
|
+
return definition;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Declare a handoff valve. `name` identifies the valve; `producer` is the silo
|
|
36
|
+
* the data crosses *from*. Chain the anatomy and finish with `.to(consumer)`.
|
|
37
|
+
*/
|
|
38
|
+
export function supply(name, producer) {
|
|
39
|
+
const state = {
|
|
40
|
+
name,
|
|
41
|
+
producer,
|
|
42
|
+
source: undefined,
|
|
43
|
+
trigger: undefined,
|
|
44
|
+
contract: undefined,
|
|
45
|
+
guard: undefined,
|
|
46
|
+
project: undefined,
|
|
47
|
+
invariants: [],
|
|
48
|
+
lineageField: undefined,
|
|
49
|
+
idempotentBy: undefined,
|
|
50
|
+
crossing: { durable: false },
|
|
51
|
+
};
|
|
52
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- builder type params narrow per stage; the public SupplyBuilder type is precise
|
|
53
|
+
const builder = {
|
|
54
|
+
from(source, trigger) {
|
|
55
|
+
state.source = source;
|
|
56
|
+
state.trigger = trigger;
|
|
57
|
+
return builder;
|
|
58
|
+
},
|
|
59
|
+
contract(shape) {
|
|
60
|
+
state.contract = shape;
|
|
61
|
+
return builder;
|
|
62
|
+
},
|
|
63
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- predicate generic erased into state; see SupplyState
|
|
64
|
+
guard(predicate) {
|
|
65
|
+
state.guard = predicate;
|
|
66
|
+
return builder;
|
|
67
|
+
},
|
|
68
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- projection generic erased into state; see SupplyState
|
|
69
|
+
project(projection) {
|
|
70
|
+
state.project = projection;
|
|
71
|
+
return builder;
|
|
72
|
+
},
|
|
73
|
+
invariant(invariantName) {
|
|
74
|
+
state.invariants.push(invariantName);
|
|
75
|
+
return builder;
|
|
76
|
+
},
|
|
77
|
+
lineage(field) {
|
|
78
|
+
state.lineageField = field;
|
|
79
|
+
return builder;
|
|
80
|
+
},
|
|
81
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- key generic erased into state; see SupplyState
|
|
82
|
+
idempotentBy(key) {
|
|
83
|
+
state.idempotentBy = key;
|
|
84
|
+
return builder;
|
|
85
|
+
},
|
|
86
|
+
durable(retry) {
|
|
87
|
+
state.crossing = { durable: true, retry: retry ?? 'backoff' };
|
|
88
|
+
return builder;
|
|
89
|
+
},
|
|
90
|
+
to(consumer) {
|
|
91
|
+
return finalize(state, consumer);
|
|
92
|
+
},
|
|
93
|
+
};
|
|
94
|
+
return builder;
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=supply.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"supply.js","sourceRoot":"","sources":["../../../src/data/valve/supply.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import type { Schema, Infer } from '../schema/types.js';
|
|
2
|
+
import type { DB } from '../db/namespace.js';
|
|
3
|
+
import type { DecisionOutcome } from './decision.js';
|
|
4
|
+
/**
|
|
5
|
+
* The two valve forms. A `handoff` moves a payload across a silo / ownership
|
|
6
|
+
* boundary; a `transition-gate` modulates a state change within one silo.
|
|
7
|
+
*/
|
|
8
|
+
export type ValveKind = 'handoff' | 'transition-gate';
|
|
9
|
+
/**
|
|
10
|
+
* Directional producer -> consumer topology. For a transition gate the
|
|
11
|
+
* producer and consumer silo coincide — the crossing is an intra-silo edge.
|
|
12
|
+
*/
|
|
13
|
+
export interface ValveTopology {
|
|
14
|
+
readonly producer: string;
|
|
15
|
+
readonly consumer: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* A registered valve. The builders (`supply`, `gate`, `faucet`) produce
|
|
19
|
+
* concrete definitions assignable to this base; the registry stores them
|
|
20
|
+
* keyed by `name`, and the valve graph is assembled from their topology.
|
|
21
|
+
*/
|
|
22
|
+
export interface ValveDefinition {
|
|
23
|
+
readonly name: string;
|
|
24
|
+
readonly kind: ValveKind;
|
|
25
|
+
readonly topology: ValveTopology;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* A handoff trigger — either a source state transition (`status: open -> frozen`)
|
|
29
|
+
* or an explicit push.
|
|
30
|
+
*/
|
|
31
|
+
export type HandoffTrigger = {
|
|
32
|
+
readonly on: string;
|
|
33
|
+
readonly from: string;
|
|
34
|
+
readonly to: string;
|
|
35
|
+
} | {
|
|
36
|
+
readonly push: true;
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* How a crossing executes — synchronously in the caller's transaction, or as a
|
|
40
|
+
* durable retried job that dead-letters on retry exhaustion.
|
|
41
|
+
*/
|
|
42
|
+
export type CrossingMode = {
|
|
43
|
+
readonly durable: false;
|
|
44
|
+
} | {
|
|
45
|
+
readonly durable: true;
|
|
46
|
+
readonly retry: 'backoff' | 'fixed';
|
|
47
|
+
};
|
|
48
|
+
/** A contract shape — payload field name -> validation schema. */
|
|
49
|
+
export type ContractShape = Record<string, Schema>;
|
|
50
|
+
/** The payload type a contract shape validates to. */
|
|
51
|
+
export type ContractPayload<TShape extends ContractShape> = {
|
|
52
|
+
readonly [K in keyof TShape]: Infer<TShape[K]>;
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* A handoff valve, produced by `supply(...).to(...)`. Carries the full anatomy
|
|
56
|
+
* the crossing executor and the valve graph read back.
|
|
57
|
+
*/
|
|
58
|
+
export interface SupplyDefinition<TSource, TPayload> extends ValveDefinition {
|
|
59
|
+
readonly kind: 'handoff';
|
|
60
|
+
readonly source: string;
|
|
61
|
+
readonly trigger: HandoffTrigger;
|
|
62
|
+
readonly contract: ContractShape;
|
|
63
|
+
readonly guard: ((row: TSource) => boolean) | undefined;
|
|
64
|
+
readonly project: (row: TSource) => TPayload;
|
|
65
|
+
readonly invariants: readonly string[];
|
|
66
|
+
readonly lineageField: string | undefined;
|
|
67
|
+
readonly idempotentBy: ((row: TSource) => string) | undefined;
|
|
68
|
+
readonly crossing: CrossingMode;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* A transition-gate trigger. A gate fires on admission of a source row, on the
|
|
72
|
+
* birth of a new instance version, or by an explicit operator action — the
|
|
73
|
+
* manual trigger carrying a permission and batch semantics.
|
|
74
|
+
*/
|
|
75
|
+
export type GateTrigger = {
|
|
76
|
+
readonly trigger: 'admission';
|
|
77
|
+
} | {
|
|
78
|
+
readonly trigger: 'new-version';
|
|
79
|
+
} | {
|
|
80
|
+
readonly trigger: 'manual';
|
|
81
|
+
readonly permission: string;
|
|
82
|
+
readonly batch: boolean;
|
|
83
|
+
};
|
|
84
|
+
/** Retraction config — which trigger supersedes and invalidates the prior crossing. */
|
|
85
|
+
export interface GateRetraction {
|
|
86
|
+
readonly on: 'new-version';
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* The decision hook — the load-bearing seam (#307 field 13). Async, and returns
|
|
90
|
+
* a partitioned outcome (`cross` / `held` / `failed`) — never a bare verdict.
|
|
91
|
+
*/
|
|
92
|
+
export type GateDecision<TEvent> = (event: TEvent, context: Readonly<Record<string, unknown>>) => Promise<DecisionOutcome<unknown, unknown>>;
|
|
93
|
+
/**
|
|
94
|
+
* A transition-gate valve, produced by `gate(...).decision(...)`. Its producer
|
|
95
|
+
* and consumer silo coincide — it modulates an intra-silo state change.
|
|
96
|
+
*/
|
|
97
|
+
export interface GateDefinition<TEvent> extends ValveDefinition {
|
|
98
|
+
readonly kind: 'transition-gate';
|
|
99
|
+
readonly source: string;
|
|
100
|
+
readonly triggers: readonly GateTrigger[];
|
|
101
|
+
readonly context: Readonly<Record<string, string>>;
|
|
102
|
+
readonly signals: readonly string[];
|
|
103
|
+
readonly fanOut: ((event: TEvent) => readonly unknown[]) | undefined;
|
|
104
|
+
readonly decision: GateDecision<TEvent>;
|
|
105
|
+
readonly retraction: GateRetraction | undefined;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* A faucet's intake handler — receives the re-validated payload and the
|
|
109
|
+
* transaction the crossing runs in, and lands the payload in the consumer.
|
|
110
|
+
*/
|
|
111
|
+
export type FaucetHandler<TPayload> = (payload: TPayload, tx: DB) => Promise<void>;
|
|
112
|
+
/**
|
|
113
|
+
* A faucet — the consumer side of a `supply -> faucet` edge. It binds to a
|
|
114
|
+
* valve by name (never to the producer silo) and re-validates every payload.
|
|
115
|
+
*/
|
|
116
|
+
export interface FaucetDefinition<TPayload> {
|
|
117
|
+
readonly valve: string;
|
|
118
|
+
readonly target: string;
|
|
119
|
+
readonly handler: FaucetHandler<TPayload>;
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* The result of executing one crossing. A handoff yields `crossed` or `blocked`
|
|
123
|
+
* (its guard rejected the row); a transition gate yields `crossed`, `held`, or
|
|
124
|
+
* `failed`, mirroring the decision outcome.
|
|
125
|
+
*/
|
|
126
|
+
export type CrossingResult = {
|
|
127
|
+
readonly kind: 'crossed';
|
|
128
|
+
readonly payload: unknown;
|
|
129
|
+
} | {
|
|
130
|
+
readonly kind: 'blocked';
|
|
131
|
+
} | {
|
|
132
|
+
readonly kind: 'held';
|
|
133
|
+
readonly reason: unknown;
|
|
134
|
+
} | {
|
|
135
|
+
readonly kind: 'failed';
|
|
136
|
+
readonly error: Error;
|
|
137
|
+
};
|
|
138
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/data/valve/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/data/valve/types.ts"],"names":[],"mappings":""}
|
package/dist/index.d.ts
CHANGED
|
@@ -42,6 +42,8 @@ export type { TemporalOptions, ReviseOptions, ReviseResult, GetCurrentResult, De
|
|
|
42
42
|
export { vector } from './data/vector/namespace.js';
|
|
43
43
|
export type { HeadlineOptions } from './data/vector/index.js';
|
|
44
44
|
export { jsonb } from './data/jsonb/namespace.js';
|
|
45
|
+
export { valve } from './data/valve/namespace.js';
|
|
46
|
+
export type { ValveKind, ValveTopology, ValveDefinition, HandoffTrigger, CrossingMode, ContractShape, ContractPayload, SupplyDefinition, SupplyBuilder, GateTrigger, GateRetraction, GateDecision, GateDefinition, GateBuilder, FaucetHandler, FaucetDefinition, FaucetBuilder, CrossingResult, DecisionOutcome, Crossed, Held, Failed, ContractArtifact, ContractDiff, ValveGraph, ValveGraphNode, ValveGraphEdge, ValveNodeKind, ValveEdgeKind } from './data/valve/index.js';
|
|
45
47
|
export { pipeline } from './async/pipeline/namespace.js';
|
|
46
48
|
export type { PipelineConfig, Pipeline, PipelineRun, PipelineExecuteContext, StepDefinition, StepContext, StepRunResult } from './async/pipeline/index.js';
|
|
47
49
|
export { state } from './async/state-machine/namespace.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -14,6 +14,7 @@ export { fixture } from './request/fixture/namespace.js';
|
|
|
14
14
|
export { temporal } from './data/temporal/namespace.js';
|
|
15
15
|
export { vector } from './data/vector/namespace.js';
|
|
16
16
|
export { jsonb } from './data/jsonb/namespace.js';
|
|
17
|
+
export { valve } from './data/valve/namespace.js';
|
|
17
18
|
export { pipeline } from './async/pipeline/namespace.js';
|
|
18
19
|
export { state } from './async/state-machine/namespace.js';
|
|
19
20
|
export { behavior } from './request/behavior/namespace.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAGnD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AAW/D,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAInD,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAA;AAIxD,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAA;AAOlD,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAQ/C,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAA;AAGlD,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAGnD,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAI/C,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAA;AAKlD,OAAO,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAA;AAKhD,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAA;AAIlD,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAA;AAKxD,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAA;AAGvD,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAGnD,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAA;AAEjD,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAA;AAIxD,OAAO,EAAE,KAAK,EAAE,MAAM,oCAAoC,CAAA;AAI1D,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAA;AAI1D,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAA;AAGxD,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AAIzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAGhE,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AACtD,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAA;AAKtF,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAA;AAMrD,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,iBAAiB,EAAE,cAAc,EACtE,eAAe,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAEhE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAInD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAEpD,OAAO,EAAE,GAAG,EAAE,MAAM,6BAA6B,CAAA;AAGjD,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAGnD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AAW/D,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAInD,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAA;AAIxD,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAA;AAOlD,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAQ/C,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAA;AAGlD,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAGnD,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAI/C,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAA;AAKlD,OAAO,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAA;AAKhD,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAA;AAIlD,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAA;AAKxD,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAA;AAGvD,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAGnD,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAA;AAEjD,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAA;AAQjD,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAA;AAIxD,OAAO,EAAE,KAAK,EAAE,MAAM,oCAAoC,CAAA;AAI1D,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAA;AAI1D,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAA;AAGxD,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AAIzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAGhE,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AACtD,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAA;AAKtF,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAA;AAMrD,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,iBAAiB,EAAE,cAAc,EACtE,eAAe,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAEhE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAInD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAEpD,OAAO,EAAE,GAAG,EAAE,MAAM,6BAA6B,CAAA;AAGjD,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAA"}
|