@openprose/reactor-cradle 0.1.0-rc.1 → 0.1.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.
- package/README.md +33 -29
- package/dist/baselines/cost-thesis/index.d.ts +1 -1
- package/dist/baselines/cost-thesis/index.d.ts.map +1 -1
- package/dist/baselines/cost-thesis/index.js +40 -5
- package/dist/release-candidate/index.d.ts +5 -5
- package/dist/release-candidate/index.d.ts.map +1 -1
- package/dist/release-candidate/index.js +13 -12
- package/dist/scenario/index.d.ts +5 -0
- package/dist/scenario/index.d.ts.map +1 -0
- package/dist/scenario/index.js +20 -0
- package/dist/world/synthetic-world.js +4 -3
- package/package.json +7 -3
package/README.md
CHANGED
|
@@ -1,25 +1,33 @@
|
|
|
1
1
|
# @openprose/reactor-cradle
|
|
2
2
|
|
|
3
|
-
`@openprose/reactor-cradle` is the deterministic
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
`@openprose/reactor-cradle` is the deterministic evidence harness for
|
|
4
|
+
[`@openprose/reactor`][reactor] — the runtime whose thesis is that fresh model
|
|
5
|
+
spend scales with surprise, not the clock. The Cradle is where Reactor behavior
|
|
6
|
+
is replayed, measured against no-memo and naive-loop controls, and packaged into
|
|
7
|
+
release evidence — no live services needed for the normal test path.
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
npm install @openprose/reactor-cradle
|
|
11
|
+
```
|
|
7
12
|
|
|
8
13
|
The Cradle is a test and evidence package, not the production Reactor runtime.
|
|
9
|
-
This README describes the `0.1.0
|
|
10
|
-
|
|
11
|
-
|
|
14
|
+
This README describes the `0.1.0` package surface — the stable OSS release
|
|
15
|
+
published on npm. For install commands, supported boundaries, and the
|
|
16
|
+
golden path, start with the [Reactor v0.1 adoption contract][adoption].
|
|
17
|
+
|
|
18
|
+
[reactor]: https://www.npmjs.com/package/@openprose/reactor
|
|
19
|
+
[adoption]: https://github.com/openprose/prose/blob/main/packages/reactor/ADOPTION.md
|
|
12
20
|
|
|
13
21
|
## v0.1 Status
|
|
14
22
|
|
|
15
23
|
What v0.1 demonstrates:
|
|
16
24
|
|
|
17
|
-
- The
|
|
18
|
-
|
|
19
|
-
`
|
|
20
|
-
`tokens.reused=46`,
|
|
21
|
-
|
|
22
|
-
naive-loop control (`
|
|
25
|
+
- The cost thesis is measured and locally runnable: the package-backed
|
|
26
|
+
`flat-tokens` example drives four checks of a single responsibility and
|
|
27
|
+
prints `memoization cut fresh model spend 50% (2 model calls, not 4)` — with
|
|
28
|
+
the raw counters `tokens.fresh=46`, `tokens.reused=46`, `ratio=46:46`,
|
|
29
|
+
`no-memo-fresh=92`. The Cradle's C5 summary independently confirms via the
|
|
30
|
+
no-memo control (`92:0`) and the same-unit naive-loop control (`92:0`).
|
|
23
31
|
- Receipts, owner/subscriber/public projections, and SDK exit-bundle
|
|
24
32
|
export/import are exercised by release-candidate evidence helpers without
|
|
25
33
|
exposing private replay payloads.
|
|
@@ -40,14 +48,10 @@ What is designed and partial:
|
|
|
40
48
|
- Provider parity is recorded, not a live runtime matrix. Cradle carries
|
|
41
49
|
deterministic provider parity doubles and one live-recorded K1 cassette, but
|
|
42
50
|
the runtime does not perform variable-depth live ensemble judging.
|
|
43
|
-
- The tagged publish gate is wired for
|
|
44
|
-
publication has been run for this worktree.
|
|
51
|
+
- The tagged publish gate is wired for trusted publishing with npm provenance.
|
|
45
52
|
|
|
46
|
-
|
|
53
|
+
Roadmap after v0.1:
|
|
47
54
|
|
|
48
|
-
- Actual npm publication and provenance until a release tag and npm auth or
|
|
49
|
-
trusted publishing are available.
|
|
50
|
-
- The stranger run that verifies both local demos outside the authoring team.
|
|
51
55
|
- Production ingress, fulfillment, and oracle layers.
|
|
52
56
|
- Runtime variable-depth ensemble judging, Postgres parity, and a non-null
|
|
53
57
|
signer adapter.
|
|
@@ -88,6 +92,7 @@ The packed artifact exposes these CommonJS entrypoints:
|
|
|
88
92
|
- `@openprose/reactor-cradle/rollback`
|
|
89
93
|
- `@openprose/reactor-cradle/replay/model-gateway`
|
|
90
94
|
- `@openprose/reactor-cradle/replay/parity`
|
|
95
|
+
- `@openprose/reactor-cradle/scenario`
|
|
91
96
|
- `@openprose/reactor-cradle/scenario/parser`
|
|
92
97
|
- `@openprose/reactor-cradle/scenario/runner`
|
|
93
98
|
- `@openprose/reactor-cradle/scenario/time`
|
|
@@ -204,8 +209,8 @@ node .github/scripts/build-reactor-release-candidate-evidence.mjs \
|
|
|
204
209
|
--branch main \
|
|
205
210
|
--commit <local-commit-sha> \
|
|
206
211
|
--worktreeStatus clean \
|
|
207
|
-
--reactorTarball /tmp/openprose-reactor-pack/openprose-reactor-0.1.0
|
|
208
|
-
--cradleTarball /tmp/openprose-reactor-pack/openprose-reactor-cradle-0.1.0
|
|
212
|
+
--reactorTarball /tmp/openprose-reactor-pack/openprose-reactor-0.1.0.tgz \
|
|
213
|
+
--cradleTarball /tmp/openprose-reactor-pack/openprose-reactor-cradle-0.1.0.tgz \
|
|
209
214
|
--verifierSmokeTests <verifier-smoke-passed/total> \
|
|
210
215
|
--exampleSmokeTests <example-smoke-passed/total> \
|
|
211
216
|
--reactorTests <reactor-tests-passed/total> \
|
|
@@ -224,11 +229,11 @@ observed counts for the current worktree instead of reusing stale numbers.
|
|
|
224
229
|
It does not publish, push, contact a registry, run a live provider/model
|
|
225
230
|
matrix, or claim remote CI provenance.
|
|
226
231
|
|
|
227
|
-
## Explicit
|
|
232
|
+
## Explicit Roadmap Rows
|
|
228
233
|
|
|
229
234
|
The current release-candidate evidence keeps these rows unrepresented:
|
|
230
235
|
|
|
231
|
-
- `down-after-budget-exhaustion`:
|
|
236
|
+
- `down-after-budget-exhaustion`: roadmap until typed retry-budget and
|
|
232
237
|
pressure-dispatch primitives exist.
|
|
233
238
|
- `postgres-parity`: future work; memory and filesystem parity rows are the
|
|
234
239
|
represented rows today.
|
|
@@ -244,11 +249,11 @@ pnpm --filter @openprose/reactor-cradle test
|
|
|
244
249
|
pnpm --dir packages/reactor pack --pack-destination /tmp/openprose-reactor-pack
|
|
245
250
|
pnpm --dir packages/reactor-cradle pack --pack-destination /tmp/openprose-reactor-pack
|
|
246
251
|
node .github/scripts/smoke-reactor-cradle-tarball-import.mjs \
|
|
247
|
-
--reactorTarball /tmp/openprose-reactor-pack/openprose-reactor-0.1.0
|
|
248
|
-
--cradleTarball /tmp/openprose-reactor-pack/openprose-reactor-cradle-0.1.0
|
|
252
|
+
--reactorTarball /tmp/openprose-reactor-pack/openprose-reactor-0.1.0.tgz \
|
|
253
|
+
--cradleTarball /tmp/openprose-reactor-pack/openprose-reactor-cradle-0.1.0.tgz
|
|
249
254
|
node .github/scripts/smoke-reactor-flat-tokens-example.mjs \
|
|
250
|
-
--reactorTarball /tmp/openprose-reactor-pack/openprose-reactor-0.1.0
|
|
251
|
-
--cradleTarball /tmp/openprose-reactor-pack/openprose-reactor-cradle-0.1.0
|
|
255
|
+
--reactorTarball /tmp/openprose-reactor-pack/openprose-reactor-0.1.0.tgz \
|
|
256
|
+
--cradleTarball /tmp/openprose-reactor-pack/openprose-reactor-cradle-0.1.0.tgz \
|
|
252
257
|
--exampleDir skills/open-prose/examples/flat-tokens
|
|
253
258
|
```
|
|
254
259
|
|
|
@@ -259,8 +264,7 @@ flat-tokens smoke runs from the same packed artifacts and expects
|
|
|
259
264
|
|
|
260
265
|
## Current Boundaries
|
|
261
266
|
|
|
262
|
-
- This README describes the release-candidate package surface
|
|
263
|
-
release waits for registry-visible provenance and stranger-run evidence.
|
|
267
|
+
- This README describes the published release-candidate package surface.
|
|
264
268
|
- The Cradle is a deterministic harness and evidence package, not a production
|
|
265
269
|
hosted service.
|
|
266
270
|
- The package does not include the CLI implementation; local CLI
|
|
@@ -98,6 +98,6 @@ export declare function createC5EventChangingCostThesisScenarioV0(input: {
|
|
|
98
98
|
readonly status: "measured";
|
|
99
99
|
}>;
|
|
100
100
|
export declare function normalizeNoMemoCostRowV0(summary: NoMemoBaselineSummaryV0, expectedScenario?: CostThesisScenarioRefV0): CostThesisReportRowV0;
|
|
101
|
-
export declare function normalizeNaiveLoopCostRowV0(summary: NaiveLoopBaselineSummaryV0, expectedScenario?: CostThesisScenarioRefV0): CostThesisReportRowV0;
|
|
101
|
+
export declare function normalizeNaiveLoopCostRowV0(summary: NaiveLoopBaselineSummaryV0, expectedScenario?: CostThesisScenarioRefV0, runtimeTurns?: readonly CostThesisTurnDetailV0[]): CostThesisReportRowV0;
|
|
102
102
|
export declare function missingEventChangingScenarioV0(): CostThesisEventChangingStatusV0;
|
|
103
103
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/baselines/cost-thesis/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/baselines/cost-thesis/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,7 @@ exports.COST_THESIS_GENERATED_AT_V0 = "2026-05-20T00:00:00.000Z";
|
|
|
15
15
|
function createC5StaticCostThesisSummaryV0(input) {
|
|
16
16
|
const reactorRow = measureReactorStaticCostRowV0(input.reactor_run);
|
|
17
17
|
const noMemoRow = normalizeNoMemoCostRowV0(input.no_memo, reactorRow.scenario);
|
|
18
|
-
const naiveLoopRow = normalizeNaiveLoopCostRowV0(input.naive_loop, reactorRow.scenario);
|
|
18
|
+
const naiveLoopRow = normalizeNaiveLoopCostRowV0(input.naive_loop, reactorRow.scenario, reactorRow.turns);
|
|
19
19
|
const payload = {
|
|
20
20
|
schema: exports.COST_THESIS_SUMMARY_SCHEMA_V0,
|
|
21
21
|
v: exports.COST_THESIS_SUMMARY_VERSION_V0,
|
|
@@ -115,7 +115,7 @@ function normalizeNoMemoCostRowV0(summary, expectedScenario) {
|
|
|
115
115
|
source_summary_hash: summary.content_hash,
|
|
116
116
|
});
|
|
117
117
|
}
|
|
118
|
-
function normalizeNaiveLoopCostRowV0(summary, expectedScenario) {
|
|
118
|
+
function normalizeNaiveLoopCostRowV0(summary, expectedScenario, runtimeTurns) {
|
|
119
119
|
const scenario = {
|
|
120
120
|
id: summary.scenario_id,
|
|
121
121
|
profile: summary.world_profile,
|
|
@@ -123,8 +123,19 @@ function normalizeNaiveLoopCostRowV0(summary, expectedScenario) {
|
|
|
123
123
|
final_instant: expectedScenario?.final_instant ?? "",
|
|
124
124
|
};
|
|
125
125
|
assertSameScenario(scenario, expectedScenario, "naive-loop");
|
|
126
|
-
const turns =
|
|
127
|
-
|
|
126
|
+
const turns = runtimeTurns === undefined
|
|
127
|
+
? summary.review_turns.map((turn) => naiveLoopTurnDetail(turn, summary))
|
|
128
|
+
: sameUnitNaiveLoopTurns(summary.review_turns, runtimeTurns);
|
|
129
|
+
const tokens = runtimeTurns === undefined
|
|
130
|
+
? tokensFromFreshReused(summary.tokens.fresh, summary.tokens.reused)
|
|
131
|
+
: sumTurnTokens(turns);
|
|
132
|
+
const notes = runtimeTurns === undefined
|
|
133
|
+
? summary.notes
|
|
134
|
+
: [
|
|
135
|
+
"Static naive-loop control over the same receipt-bearing schedule.",
|
|
136
|
+
"Every review turn rereads the current evidence and spends the runtime row's per-turn total as fresh work.",
|
|
137
|
+
"The control has no receipts, memo keys, forecast policy, stable content identity, or reusable verdict architecture.",
|
|
138
|
+
];
|
|
128
139
|
return Object.freeze({
|
|
129
140
|
variant: "naive-loop",
|
|
130
141
|
label: "Naive loop",
|
|
@@ -135,7 +146,7 @@ function normalizeNaiveLoopCostRowV0(summary, expectedScenario) {
|
|
|
135
146
|
model_invocation_count: summary.model_invocation_count,
|
|
136
147
|
tokens,
|
|
137
148
|
ratio: tokenRatio(tokens),
|
|
138
|
-
notes: Object.freeze([...
|
|
149
|
+
notes: Object.freeze([...notes]),
|
|
139
150
|
turns: Object.freeze([...turns]),
|
|
140
151
|
});
|
|
141
152
|
}
|
|
@@ -207,6 +218,30 @@ function naiveLoopTurnDetail(turn, summary) {
|
|
|
207
218
|
note: `${turn.review_kind} over ${turn.source_ids.join(", ")} with no receipt or memo reuse.`,
|
|
208
219
|
});
|
|
209
220
|
}
|
|
221
|
+
function sameUnitNaiveLoopTurns(reviewTurns, runtimeTurns) {
|
|
222
|
+
if (reviewTurns.length !== runtimeTurns.length) {
|
|
223
|
+
throw new Error(`naive-loop same-unit control requires ${reviewTurns.length} runtime turns; received ${runtimeTurns.length}`);
|
|
224
|
+
}
|
|
225
|
+
return Object.freeze(reviewTurns.map((turn, index) => {
|
|
226
|
+
const runtimeTurn = runtimeTurns[index];
|
|
227
|
+
if (runtimeTurn === undefined) {
|
|
228
|
+
throw new Error(`missing runtime turn ${index} for naive-loop same-unit control`);
|
|
229
|
+
}
|
|
230
|
+
const tokens = tokensFromFreshReused(runtimeTurn.tokens.total, 0);
|
|
231
|
+
return Object.freeze({
|
|
232
|
+
index: turn.index,
|
|
233
|
+
as_of: turn.as_of,
|
|
234
|
+
source: "naive-loop-control",
|
|
235
|
+
outcome: "control-review",
|
|
236
|
+
tokens,
|
|
237
|
+
model_invocation_count: 1,
|
|
238
|
+
...(turn.recheck_kind === undefined ? {} : { recheck_kind: turn.recheck_kind }),
|
|
239
|
+
review_kind: turn.review_kind,
|
|
240
|
+
source_ids: Object.freeze([...turn.source_ids]),
|
|
241
|
+
note: `${turn.review_kind} over ${turn.source_ids.join(", ")} charged from runtime turn ${index}'s token unit.`,
|
|
242
|
+
});
|
|
243
|
+
}));
|
|
244
|
+
}
|
|
210
245
|
function simulateNoMemoEventChangingRowV0(reactorRow) {
|
|
211
246
|
const turns = reactorRow.turns.map((turn) => simulateNoMemoEventTurnV0(turn));
|
|
212
247
|
const tokens = sumTurnTokens(turns);
|
|
@@ -4,7 +4,7 @@ import { type RecordedR6ReleaseParityProofV0 } from "../release-parity";
|
|
|
4
4
|
export declare const R7_RELEASE_CANDIDATE_EVIDENCE_BUNDLE_SCHEMA_V0: "openprose.reactor-cradle.release-candidate-evidence-bundle";
|
|
5
5
|
export declare const R7_RELEASE_CANDIDATE_EVIDENCE_BUNDLE_VERSION_V0: 0;
|
|
6
6
|
export declare const R7_REACTOR_PUBLIC_IMPORT_SPECIFIERS_V0: readonly ["@openprose/reactor", "@openprose/reactor/receipt", "@openprose/reactor/cost", "@openprose/reactor/kernel", "@openprose/reactor/evidence-plan", "@openprose/reactor/memo", "@openprose/reactor/forecast", "@openprose/reactor/sdk", "@openprose/reactor/policy", "@openprose/reactor/composition", "@openprose/reactor/projection"];
|
|
7
|
-
export declare const R7_CRADLE_PUBLIC_IMPORT_SPECIFIERS_V0: readonly ["@openprose/reactor-cradle", "@openprose/reactor-cradle/assert", "@openprose/reactor-cradle/eval", "@openprose/reactor-cradle/spikes", "@openprose/reactor-cradle/spikes/live-refresh", "@openprose/reactor-cradle/spikes/k1-ensemble-spread", "@openprose/reactor-cradle/spikes/k2-policy-author", "@openprose/reactor-cradle/doubles/clock", "@openprose/reactor-cradle/doubles/storage", "@openprose/reactor-cradle/policy-author", "@openprose/reactor-cradle/policy-drift", "@openprose/reactor-cradle/policy-replay", "@openprose/reactor-cradle/recompile", "@openprose/reactor-cradle/release-parity", "@openprose/reactor-cradle/release-candidate", "@openprose/reactor-cradle/rollback", "@openprose/reactor-cradle/replay/model-gateway", "@openprose/reactor-cradle/replay/parity", "@openprose/reactor-cradle/scenario/parser", "@openprose/reactor-cradle/scenario/runner", "@openprose/reactor-cradle/scenario/time", "@openprose/reactor-cradle/scenario/types", "@openprose/reactor-cradle/world"];
|
|
7
|
+
export declare const R7_CRADLE_PUBLIC_IMPORT_SPECIFIERS_V0: readonly ["@openprose/reactor-cradle", "@openprose/reactor-cradle/assert", "@openprose/reactor-cradle/eval", "@openprose/reactor-cradle/spikes", "@openprose/reactor-cradle/spikes/live-refresh", "@openprose/reactor-cradle/spikes/k1-ensemble-spread", "@openprose/reactor-cradle/spikes/k2-policy-author", "@openprose/reactor-cradle/doubles/clock", "@openprose/reactor-cradle/doubles/storage", "@openprose/reactor-cradle/policy-author", "@openprose/reactor-cradle/policy-drift", "@openprose/reactor-cradle/policy-replay", "@openprose/reactor-cradle/recompile", "@openprose/reactor-cradle/release-parity", "@openprose/reactor-cradle/release-candidate", "@openprose/reactor-cradle/rollback", "@openprose/reactor-cradle/replay/model-gateway", "@openprose/reactor-cradle/replay/parity", "@openprose/reactor-cradle/scenario/parser", "@openprose/reactor-cradle/scenario", "@openprose/reactor-cradle/scenario/runner", "@openprose/reactor-cradle/scenario/time", "@openprose/reactor-cradle/scenario/types", "@openprose/reactor-cradle/world"];
|
|
8
8
|
export declare const R7_REQUIRED_COMMAND_IDS_V0: readonly ["verifier-smoke-tests", "reactor-tests", "cradle-tests", "local-pack", "pin-verify", "tarball-import-smoke", "release-readiness-example-smoke", "diff-check", "dependency-scan", "secret-scan"];
|
|
9
9
|
export declare const R7_REQUIRED_DEFERRED_ROW_IDS_V0: readonly ["down-after-budget-exhaustion", "postgres-parity", "live-provider-model-matrix"];
|
|
10
10
|
export type R7ReleaseCandidateCommandIdV0 = (typeof R7_REQUIRED_COMMAND_IDS_V0)[number];
|
|
@@ -86,22 +86,22 @@ export interface R7ReleaseCandidateBuildMetadataV0 {
|
|
|
86
86
|
}
|
|
87
87
|
export interface R7ReleaseCandidatePackagePinEvidenceV0 {
|
|
88
88
|
readonly package_name: "@openprose/reactor";
|
|
89
|
-
readonly version: "0.1.0
|
|
89
|
+
readonly version: "0.1.0";
|
|
90
90
|
readonly consumer_name: "@openprose/reactor-cradle";
|
|
91
|
-
readonly consumer_dependency: "workspace:0.1.0
|
|
91
|
+
readonly consumer_dependency: "workspace:0.1.0";
|
|
92
92
|
readonly package_tree_sha256: string;
|
|
93
93
|
readonly checked_file_count: number;
|
|
94
94
|
readonly checked_files_hash: ContentHashV0;
|
|
95
95
|
}
|
|
96
96
|
export interface R7ReleaseCandidateTarballSmokeEvidenceV0 {
|
|
97
97
|
readonly package_name: "@openprose/reactor";
|
|
98
|
-
readonly version: "0.1.0
|
|
98
|
+
readonly version: "0.1.0";
|
|
99
99
|
readonly imported_entrypoint_count: number;
|
|
100
100
|
readonly imported_entrypoints: readonly string[];
|
|
101
101
|
}
|
|
102
102
|
export interface R7ReleaseCandidateCradleTarballSmokeEvidenceV0 {
|
|
103
103
|
readonly package_name: "@openprose/reactor-cradle";
|
|
104
|
-
readonly version: "0.1.0
|
|
104
|
+
readonly version: "0.1.0";
|
|
105
105
|
readonly imported_entrypoint_count: number;
|
|
106
106
|
readonly imported_entrypoints: readonly string[];
|
|
107
107
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/release-candidate/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE,OAAO,EAIL,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACxB,MAAM,SAAS,CAAC;AACjB,OAAO,EAGL,KAAK,8BAA8B,EACpC,MAAM,mBAAmB,CAAC;AAE3B,eAAO,MAAM,8CAA8C,EACzD,4DAAqE,CAAC;AACxE,eAAO,MAAM,+CAA+C,EAAG,CAAU,CAAC;AAE1E,eAAO,MAAM,sCAAsC,+UAYzC,CAAC;AAEX,eAAO,MAAM,qCAAqC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/release-candidate/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -42,6 +42,7 @@ exports.R7_CRADLE_PUBLIC_IMPORT_SPECIFIERS_V0 = [
|
|
|
42
42
|
"@openprose/reactor-cradle/replay/model-gateway",
|
|
43
43
|
"@openprose/reactor-cradle/replay/parity",
|
|
44
44
|
"@openprose/reactor-cradle/scenario/parser",
|
|
45
|
+
"@openprose/reactor-cradle/scenario",
|
|
45
46
|
"@openprose/reactor-cradle/scenario/runner",
|
|
46
47
|
"@openprose/reactor-cradle/scenario/time",
|
|
47
48
|
"@openprose/reactor-cradle/scenario/types",
|
|
@@ -214,21 +215,21 @@ function normalizePackagePin(input) {
|
|
|
214
215
|
if (input.package_name !== "@openprose/reactor") {
|
|
215
216
|
throw new Error("package_pin.package_name must be @openprose/reactor");
|
|
216
217
|
}
|
|
217
|
-
if (input.version !== "0.1.0
|
|
218
|
-
throw new Error("package_pin.version must be 0.1.0
|
|
218
|
+
if (input.version !== "0.1.0") {
|
|
219
|
+
throw new Error("package_pin.version must be 0.1.0");
|
|
219
220
|
}
|
|
220
221
|
if (input.consumer_name !== "@openprose/reactor-cradle") {
|
|
221
222
|
throw new Error("package_pin.consumer_name must be @openprose/reactor-cradle");
|
|
222
223
|
}
|
|
223
|
-
if (input.consumer_dependency !== "workspace:0.1.0
|
|
224
|
-
throw new Error("package_pin.consumer_dependency must be workspace:0.1.0
|
|
224
|
+
if (input.consumer_dependency !== "workspace:0.1.0") {
|
|
225
|
+
throw new Error("package_pin.consumer_dependency must be workspace:0.1.0");
|
|
225
226
|
}
|
|
226
227
|
const checkedFiles = normalizeCheckedFiles(input.checked_files);
|
|
227
228
|
return Object.freeze({
|
|
228
229
|
package_name: "@openprose/reactor",
|
|
229
|
-
version: "0.1.0
|
|
230
|
+
version: "0.1.0",
|
|
230
231
|
consumer_name: "@openprose/reactor-cradle",
|
|
231
|
-
consumer_dependency: "workspace:0.1.0
|
|
232
|
+
consumer_dependency: "workspace:0.1.0",
|
|
232
233
|
package_tree_sha256: assertHexSha256(input.package_tree_sha256, "package_pin.package_tree_sha256"),
|
|
233
234
|
checked_file_count: checkedFiles.length,
|
|
234
235
|
checked_files_hash: hashCanonicalValue(checkedFiles),
|
|
@@ -238,8 +239,8 @@ function normalizeTarballSmoke(input) {
|
|
|
238
239
|
if (input.package_name !== "@openprose/reactor") {
|
|
239
240
|
throw new Error("tarball_smoke.package_name must be @openprose/reactor");
|
|
240
241
|
}
|
|
241
|
-
if (input.version !== "0.1.0
|
|
242
|
-
throw new Error("tarball_smoke.version must be 0.1.0
|
|
242
|
+
if (input.version !== "0.1.0") {
|
|
243
|
+
throw new Error("tarball_smoke.version must be 0.1.0");
|
|
243
244
|
}
|
|
244
245
|
const imports = [...input.imported_entrypoints].sort((left, right) => left.localeCompare(right));
|
|
245
246
|
const expected = [...exports.R7_REACTOR_PUBLIC_IMPORT_SPECIFIERS_V0].sort((left, right) => left.localeCompare(right));
|
|
@@ -253,7 +254,7 @@ function normalizeTarballSmoke(input) {
|
|
|
253
254
|
}
|
|
254
255
|
return Object.freeze({
|
|
255
256
|
package_name: "@openprose/reactor",
|
|
256
|
-
version: "0.1.0
|
|
257
|
+
version: "0.1.0",
|
|
257
258
|
imported_entrypoint_count: imports.length,
|
|
258
259
|
imported_entrypoints: Object.freeze(imports),
|
|
259
260
|
});
|
|
@@ -262,8 +263,8 @@ function normalizeCradleTarballSmoke(input) {
|
|
|
262
263
|
if (input.package_name !== "@openprose/reactor-cradle") {
|
|
263
264
|
throw new Error("cradle_tarball_smoke.package_name must be @openprose/reactor-cradle");
|
|
264
265
|
}
|
|
265
|
-
if (input.version !== "0.1.0
|
|
266
|
-
throw new Error("cradle_tarball_smoke.version must be 0.1.0
|
|
266
|
+
if (input.version !== "0.1.0") {
|
|
267
|
+
throw new Error("cradle_tarball_smoke.version must be 0.1.0");
|
|
267
268
|
}
|
|
268
269
|
const imports = [...input.imported_entrypoints].sort((left, right) => left.localeCompare(right));
|
|
269
270
|
const expected = [...exports.R7_CRADLE_PUBLIC_IMPORT_SPECIFIERS_V0].sort((left, right) => left.localeCompare(right));
|
|
@@ -277,7 +278,7 @@ function normalizeCradleTarballSmoke(input) {
|
|
|
277
278
|
}
|
|
278
279
|
return Object.freeze({
|
|
279
280
|
package_name: "@openprose/reactor-cradle",
|
|
280
|
-
version: "0.1.0
|
|
281
|
+
version: "0.1.0",
|
|
281
282
|
imported_entrypoint_count: imports.length,
|
|
282
283
|
imported_entrypoints: Object.freeze(imports),
|
|
283
284
|
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/scenario/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./parser"), exports);
|
|
18
|
+
__exportStar(require("./runner"), exports);
|
|
19
|
+
__exportStar(require("./time"), exports);
|
|
20
|
+
__exportStar(require("./types"), exports);
|
|
@@ -128,9 +128,10 @@ class SyntheticWorldConnectorV0 {
|
|
|
128
128
|
payload: payload.value,
|
|
129
129
|
payload_canonical: payload.canonical,
|
|
130
130
|
};
|
|
131
|
-
const revision =
|
|
132
|
-
|
|
133
|
-
|
|
131
|
+
const revision = {
|
|
132
|
+
...revisionBase,
|
|
133
|
+
payload_hash: seed.payload_hash ?? payloadContentHash(payload.canonical),
|
|
134
|
+
};
|
|
134
135
|
this.#sources.set(seed.source_id, {
|
|
135
136
|
source_id: seed.source_id,
|
|
136
137
|
revisions: [revision],
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openprose/reactor-cradle",
|
|
3
|
-
"version": "0.1.0
|
|
4
|
-
"description": "Deterministic
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Deterministic evidence harness for OpenProse Reactor cost and receipt claims.",
|
|
5
5
|
"type": "commonjs",
|
|
6
6
|
"main": "./dist/index.js",
|
|
7
7
|
"types": "./dist/index.d.ts",
|
|
@@ -82,6 +82,10 @@
|
|
|
82
82
|
"types": "./dist/scenario/parser.d.ts",
|
|
83
83
|
"default": "./dist/scenario/parser.js"
|
|
84
84
|
},
|
|
85
|
+
"./scenario": {
|
|
86
|
+
"types": "./dist/scenario/index.d.ts",
|
|
87
|
+
"default": "./dist/scenario/index.js"
|
|
88
|
+
},
|
|
85
89
|
"./scenario/runner": {
|
|
86
90
|
"types": "./dist/scenario/runner.d.ts",
|
|
87
91
|
"default": "./dist/scenario/runner.js"
|
|
@@ -117,7 +121,7 @@
|
|
|
117
121
|
"directory": "packages/reactor-cradle"
|
|
118
122
|
},
|
|
119
123
|
"dependencies": {
|
|
120
|
-
"@openprose/reactor": "0.1.0
|
|
124
|
+
"@openprose/reactor": "0.1.0"
|
|
121
125
|
},
|
|
122
126
|
"devDependencies": {
|
|
123
127
|
"@types/node": "^22.10.7",
|