Skip to content

Commit ecf7652

Browse files
author
FlowMemory HQ Agent
committed
Add real-value pilot ops proof
1 parent a16fb9a commit ecf7652

15 files changed

Lines changed: 1416 additions & 18 deletions

README.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,15 @@ npm run flowchain:full-smoke
117117
npm run flowchain:product-e2e
118118
```
119119

120+
Run the capped owner pilot dry-run before any Base `8453` pilot action:
121+
122+
```powershell
123+
npm run flowchain:real-value-pilot:ops
124+
```
125+
126+
Owner pilot coordination and go/no-go criteria live in
127+
`docs/FLOWCHAIN_REAL_VALUE_PILOT.md`.
128+
120129
Run the existing dashboard as the local workbench:
121130

122131
```powershell

docs/EASY_SECOND_COMPUTER_SETUP.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,15 @@ npm run flowchain:product-e2e
5555
That gate must pass before the setup should be treated as ready for a local
5656
second-computer test.
5757

58+
Before any capped Base `8453` owner pilot action, run the ops dry-run proof:
59+
60+
```powershell
61+
npm run flowchain:real-value-pilot:ops
62+
```
63+
64+
Then follow `docs/FLOWCHAIN_REAL_VALUE_PILOT.md` for owner go/no-go criteria,
65+
emergency stop, evidence export, and restart recovery commands.
66+
5867
## Already Cloned Setup
5968

6069
If the repo is already cloned:

docs/FLOWCHAIN_OPERATOR_CHECKLIST.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,16 @@ npm run flowchain:export
4444
Run `npm run flowchain:full-smoke` when the machine has the full prerequisite set,
4545
including Foundry, Python, dashboard dependencies, and crypto dependencies.
4646

47+
Capped owner pilot preflight:
48+
49+
```powershell
50+
npm run flowchain:real-value-pilot:ops
51+
```
52+
53+
Do not run live pilot actions until the owner has reviewed
54+
`docs/FLOWCHAIN_REAL_VALUE_PILOT.md` and supplied the required env vars in a
55+
local shell only.
56+
4757
## Launch Demo Day
4858

4959
Primary script: `docs/LAUNCH_DEMO_RUNBOOK.md`.

docs/FLOWCHAIN_REAL_VALUE_PILOT.md

Lines changed: 61 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ approval.
1919

2020
## Current Baseline
2121

22-
Current `main` after PR #142 merged at
23-
`c4959f8223c491f5a45c6b7d572707420457b743`:
22+
Current `main` after PR #143 merged at
23+
`a16fb9a7ce817b8c32d4641610c35e559a6c444c`:
2424

2525
- `npm run flowchain:product-e2e` exists as the local product testnet gate.
2626
- `npm run flowchain:full-smoke` exists as the private/local L1 baseline gate.
@@ -31,6 +31,8 @@ Current `main` after PR #142 merged at
3131
gate. It fails by default while required subsystem proof commands are missing.
3232
- `npm run flowchain:real-value-pilot:control-dashboard` exists on `main`
3333
after PR #142 merged.
34+
- `npm run flowchain:real-value-pilot:wallet` exists on `main` after PR
35+
#143 merged.
3436

3537
GitHub source-of-truth state checked for this pass:
3638

@@ -41,8 +43,10 @@ GitHub source-of-truth state checked for this pass:
4143
policy while keeping `contracts:hardening:slither` as the explicit audit gate.
4244
- Issue #137 is closed; PR #142 merged the control-plane/dashboard pilot
4345
proof command.
44-
- Issues #133, #138, #134, #136, and #135 remain the open subsystem proof
45-
blockers for strict pilot-gate pass.
46+
- Issue #136 is closed; PR #143 merged the wallet/operator pilot proof
47+
command.
48+
- Issues #133, #138, #134, and #135 remain the open subsystem proof blockers
49+
for strict pilot-gate pass.
4650

4751
## Final Gate
4852

@@ -67,6 +71,45 @@ devnet/local/real-value-pilot/flowchain-real-value-pilot-e2e-report.json
6771
The report must show `status: "passed"` before the owner can mark the capped
6872
pilot go. Until then, missing proof rows are blockers, not warnings.
6973

74+
## Ops Command Surface
75+
76+
The ops proof command is branch-local until issue #135 merges:
77+
78+
```powershell
79+
npm run flowchain:real-value-pilot:ops
80+
```
81+
82+
It verifies that the owner-pilot scripts parse, dry-run mode needs no live RPC
83+
URL or private key, live mode refuses missing acknowledgement/env values,
84+
emergency stop prints the pause recovery command, and evidence export excludes
85+
secret-shaped files.
86+
87+
Live owner actions require explicit local shell env vars and are not run by the
88+
proof command. The command surface is:
89+
90+
```powershell
91+
npm run flowchain:real-value-pilot -- --Mode Live --Action Deploy
92+
npm run flowchain:real-value-pilot -- --Mode Live --Action Deploy -Execute
93+
npm run flowchain:real-value-pilot -- --Mode Live --Action Observe
94+
npm run flowchain:real-value-pilot -- --Mode Live --Action Credit
95+
npm run flowchain:real-value-pilot -- --Mode Live --Action Withdraw
96+
npm run flowchain:real-value-pilot:emergency-stop
97+
npm run flowchain:real-value-pilot -- --Mode Live --Action Resume -Execute
98+
npm run flowchain:real-value-pilot:export
99+
npm run flowchain:real-value-pilot -- --Mode Live --Action Restart
100+
```
101+
102+
Set live env vars only in a local shell or ignored env file. The minimum
103+
operator acknowledgement is:
104+
105+
```powershell
106+
$env:FLOWCHAIN_PILOT_OPERATOR_ACK="I_UNDERSTAND_THIS_IS_CAPPED_BASE8453_OWNER_PILOT"
107+
```
108+
109+
The ops wrapper also requires action-specific Base `8453` RPC, lockbox,
110+
owner/release/submitter/recipient, block range, and tiny cap env values before
111+
any live action proceeds.
112+
70113
## Release-Gate Boundary
71114

72115
This section is the issue #130 boundary for real-value pilot PRs. It does not
@@ -93,18 +136,18 @@ the proof is branch-local or verified from `main`.
93136
| --- | --- | --- | --- |
94137
| Existing product testnet gate remains green. | HQ/Ops | `npm run flowchain:product-e2e` | Existing command; run before PR when practical. |
95138
| L1 baseline gate remains green. | HQ/Ops | `npm run flowchain:l1-e2e` | Exists on `main` as current alias to `flowchain:full-smoke`; latest local main-equivalent run passed. |
96-
| Base chain ID `8453` is verified before any live observer or deployment action. | Contracts + Bridge + Ops | `npm run flowchain:real-value-pilot:contracts`; `npm run flowchain:real-value-pilot:bridge`; `npm run flowchain:real-value-pilot:ops` | Missing dedicated pilot commands. |
97-
| Lockbox address is loaded from ignored local config or env, not hardcoded as a blanket endorsement. | Contracts + Ops | `npm run flowchain:real-value-pilot:contracts`; `npm run flowchain:real-value-pilot:ops` | Missing dedicated pilot commands. |
139+
| Base chain ID `8453` is verified before any live observer or deployment action. | Contracts + Bridge + Ops | `npm run flowchain:real-value-pilot:contracts`; `npm run flowchain:real-value-pilot:bridge`; `npm run flowchain:real-value-pilot:ops` | Contracts and bridge commands are still missing; ops branch command added here pending PR merge. |
140+
| Lockbox address is loaded from ignored local config or env, not hardcoded as a blanket endorsement. | Contracts + Ops | `npm run flowchain:real-value-pilot:contracts`; `npm run flowchain:real-value-pilot:ops` | Contracts command is still missing; ops branch command added here pending PR merge. |
98141
| Per-deposit cap, total pilot cap, supported-asset allowlist, pause, release, recovery, and replay protection are covered by tests and dry-run deployment evidence. | Contracts | `npm run flowchain:real-value-pilot:contracts` | Missing dedicated pilot command. |
99142
| Deposit observation writes deterministic observation, credit, and evidence files. | Bridge relayer | `npm run flowchain:real-value-pilot:bridge` | Missing dedicated pilot command. |
100143
| Duplicate Base event replay is rejected or idempotent with explicit evidence. | Bridge relayer + Chain runtime | `npm run flowchain:real-value-pilot:bridge`; `npm run flowchain:real-value-pilot:runtime` | Missing dedicated pilot commands. |
101144
| Local runtime applies each pilot bridge credit exactly once and preserves state across restart/export/import. | Chain runtime | `npm run flowchain:real-value-pilot:runtime` | Missing dedicated pilot command. |
102-
| Operator wallet can sign pilot acknowledgements, withdrawal intents, release evidence, and emergency messages without committing secrets. | Wallet/operator | `npm run flowchain:real-value-pilot:wallet` | Branch command added here; local proof passes, pending PR merge. |
103-
| Wallet verification rejects wrong chain ID, wrong contract, wrong operator, mutated payload, replay nonce, expired message, and missing cap fields. | Wallet/operator | `npm run flowchain:real-value-pilot:wallet` | Branch command added here; local proof passes, pending PR merge. |
145+
| Operator wallet can sign pilot acknowledgements, withdrawal intents, release evidence, and emergency messages without committing secrets. | Wallet/operator | `npm run flowchain:real-value-pilot:wallet` | Merged on `main` by PR #143; latest local main-equivalent proof passed. |
146+
| Wallet verification rejects wrong chain ID, wrong contract, wrong operator, mutated payload, replay nonce, expired message, and missing cap fields. | Wallet/operator | `npm run flowchain:real-value-pilot:wallet` | Merged on `main` by PR #143; latest local main-equivalent proof passed. |
104147
| API exposes pilot status, observations, credits, withdrawal intents, release evidence, cap status, pause status, retry state, and emergency state. | Control plane/dashboard | `npm run flowchain:real-value-pilot:control-dashboard` | Merged on `main` by PR #142; latest local main-equivalent proof passed. |
105148
| Dashboard labels the flow as capped owner testing and shows live/degraded/error state plus exact next operator commands. | Control plane/dashboard | `npm run flowchain:real-value-pilot:control-dashboard` | Merged on `main` by PR #142; latest local main-equivalent proof passed. |
106-
| Browser stores no private keys or RPC credentials. | Control plane/dashboard + Wallet/operator | `npm run flowchain:real-value-pilot:control-dashboard`; `npm run flowchain:real-value-pilot:wallet` | Control-dashboard proof is merged; wallet branch proof passes, pending PR merge. |
107-
| Ops path verifies required env, tiny caps, explicit owner ack, emergency stop, export evidence, restart recovery, and no-secret scans. | Ops/installer | `npm run flowchain:real-value-pilot:ops` | Missing dedicated pilot command. |
149+
| Browser stores no private keys or RPC credentials. | Control plane/dashboard + Wallet/operator | `npm run flowchain:real-value-pilot:control-dashboard`; `npm run flowchain:real-value-pilot:wallet` | Control-dashboard and wallet proofs are merged. |
150+
| Ops path verifies required env, tiny caps, explicit owner ack, emergency stop, export evidence, restart recovery, and no-secret scans. | Ops/installer | `npm run flowchain:real-value-pilot:ops` | Branch command added here; local proof passes, pending PR merge. |
108151
| Final pilot gate runs baseline commands plus every available dedicated proof command. | HQ/Ops | `npm run flowchain:real-value-pilot:e2e` | Exists on `main`; strict mode still fails until subsystem commands land. |
109152

110153
## In-Flight Implementation Status
@@ -116,12 +159,12 @@ from `main`.
116159

117160
| Area | In-flight branch state | Required next step |
118161
| --- | --- | --- |
119-
| Contracts | `agent/real-value-pilot-contracts` checklist reports the contracts proof complete, including hardening, deploy dry-run, and product E2E. | Rebase onto `c4959f8`, expose `flowchain:real-value-pilot:contracts`, rerun evidence, and open a PR. |
120-
| Bridge relayer | `agent/real-value-pilot-bridge` checklist reports the bridge proof complete; service-local `pilot:e2e` exists. | Rebase onto `c4959f8`, expose `flowchain:real-value-pilot:bridge`, rerun evidence, and open a PR. |
121-
| Chain runtime | `agent/real-value-pilot-chain` checklist reports runtime credit/replay/restart/export proof complete through the direct wrapper; root package command is missing. | Rebase onto `c4959f8`, expose `flowchain:real-value-pilot:runtime`, rerun evidence, and open a PR. |
122-
| Wallet/operator | `agent/real-value-pilot-wallet` is rebased onto `c4959f8`; checklist reports wallet/operator schemas, signing, validation, negative cases, scans, product evidence, and branch-local `flowchain:real-value-pilot:wallet` complete. | Open a PR for issue #136 so the proof command lands on `main`. |
162+
| Contracts | `agent/real-value-pilot-contracts` checklist reports the contracts proof complete, including hardening, deploy dry-run, and product E2E. | Rebase onto `a16fb9a`, expose `flowchain:real-value-pilot:contracts`, rerun evidence, and open a PR. |
163+
| Bridge relayer | `agent/real-value-pilot-bridge` checklist reports the bridge proof complete; service-local `pilot:e2e` exists. | Rebase onto `a16fb9a`, expose `flowchain:real-value-pilot:bridge`, rerun evidence, and open a PR. |
164+
| Chain runtime | `agent/real-value-pilot-chain` checklist reports runtime credit/replay/restart/export proof complete through the direct wrapper; root package command is missing. | Rebase onto `a16fb9a`, expose `flowchain:real-value-pilot:runtime`, rerun evidence, and open a PR. |
165+
| Wallet/operator | `flowchain:real-value-pilot:wallet` merged on `main` through PR #143 and closed issue #136. | No wallet/operator blocker remains for the final pilot gate. |
123166
| Control plane/dashboard | `flowchain:real-value-pilot:control-dashboard` merged on `main` through PR #142 and closed issue #137. | No control-dashboard blocker remains for the final pilot gate. |
124-
| Ops/installer | `agent/real-value-pilot-ops` checklist reports ops proof complete; root lifecycle commands exist branch-locally, but `flowchain:real-value-pilot:ops` is missing. | Rebase onto `c4959f8`, expose `flowchain:real-value-pilot:ops`, rerun evidence, and open a PR. |
167+
| Ops/installer | This branch adapts `agent/real-value-pilot-ops` work onto `a16fb9a` and exposes branch-local `flowchain:real-value-pilot:ops`. | Open a PR for issue #135 so the proof command lands on `main`. |
125168

126169
## Owner Go/No-Go Checklist
127170

@@ -151,9 +194,9 @@ in committed files, or if any document presents the pilot as public readiness.
151194
- Dedicated real-value contracts gate does not exist; tracked by issue #133.
152195
- Dedicated real-value bridge relayer gate does not exist; tracked by issue #138.
153196
- Dedicated real-value runtime gate does not exist; tracked by issue #134.
154-
- Dedicated real-value wallet/operator gate exists branch-locally and passes; tracked by issue #136 until merged.
197+
- Dedicated real-value wallet/operator gate is merged on `main`; issue #136 is closed by PR #143.
155198
- Dedicated real-value control-plane/dashboard gate is merged on `main`; issue #137 is closed by PR #142.
156-
- Dedicated real-value ops/installer gate does not exist; tracked by issue #135.
199+
- Dedicated real-value ops/installer gate exists branch-locally and passes; tracked by issue #135 until merged.
157200
- Issue #130 is closed by PR #132; the release-gate boundary is now on `main`.
158201
- Issue #131 is closed by PR #132; default `contracts:hardening` skips optional
159202
Slither unless the audit gate is explicitly requested.
@@ -167,7 +210,7 @@ in committed files, or if any document presents the pilot as public readiness.
167210
| Contracts | #133 | `npm run flowchain:real-value-pilot:contracts` |
168211
| Bridge relayer | #138 | `npm run flowchain:real-value-pilot:bridge` |
169212
| Chain runtime | #134 | `npm run flowchain:real-value-pilot:runtime` |
170-
| Wallet/operator | #136 | `npm run flowchain:real-value-pilot:wallet` |
213+
| Wallet/operator | #136, closed by PR #143 | `npm run flowchain:real-value-pilot:wallet` |
171214
| Control plane/dashboard | #137, closed by PR #142 | `npm run flowchain:real-value-pilot:control-dashboard` |
172215
| Ops/installer | #135 | `npm run flowchain:real-value-pilot:ops` |
173216
| Release-gate boundary | #130, closed by PR #132 | `npm run flowchain:real-value-pilot:e2e -- -AllowIncomplete` until proofs land |

docs/FLOWCHAIN_SECOND_COMPUTER_SETUP.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,15 @@ npm run flowchain:full-smoke
120120
npm run flowchain:product-e2e
121121
```
122122

123+
Run the capped owner pilot ops dry-run before any Base `8453` pilot action:
124+
125+
```powershell
126+
npm run flowchain:real-value-pilot:ops
127+
```
128+
129+
The full owner pilot coordination checklist is
130+
`docs/FLOWCHAIN_REAL_VALUE_PILOT.md`.
131+
123132
Run the local workbench in a separate PowerShell window:
124133

125134
```powershell
@@ -156,6 +165,8 @@ Expected current result:
156165
local account funding, token launch, pool creation, liquidity, swap receipts,
157166
bridge-test credit visibility, control-plane query surfaces, workbench
158167
product surfaces, and no-secret response boundaries.
168+
- `npm run flowchain:real-value-pilot:ops` is the dry-run ops proof for the
169+
capped owner pilot. It uses no live RPC URL or private key.
159170
- `npm run workbench:dev` opens the existing dashboard as the local workbench.
160171

161172
Current stop point: if a second computer needs production custody, production
@@ -180,6 +191,7 @@ npm run flowchain:start
180191
npm run control-plane:serve
181192
npm run workbench:dev
182193
npm run flowchain:product-e2e
194+
npm run flowchain:real-value-pilot:ops
183195
npm run flowchain:export
184196
```
185197

@@ -206,6 +218,9 @@ npm run flowchain:demo
206218
npm run flowchain:smoke
207219
npm run flowchain:full-smoke
208220
npm run flowchain:product-e2e
221+
npm run flowchain:real-value-pilot:ops
222+
npm run flowchain:real-value-pilot:emergency-stop
223+
npm run flowchain:real-value-pilot:export
209224
npm run flowchain:export
210225
npm run workbench:dev
211226
```
@@ -222,6 +237,9 @@ Current status:
222237
| `npm run flowchain:smoke` | Implemented for current private/local surfaces | Runs service tests, crypto validation, launch candidate, devnet tests, control-plane smoke, deterministic replay, dashboard build, hardware fixture, unsafe-claim scan, and no-secret export scan. |
223238
| `npm run flowchain:full-smoke` | Implemented acceptance gate | Wraps smoke, wallet CLI sign/verify, full-smoke report, no-secret scan, and `git diff --check`. |
224239
| `npm run flowchain:product-e2e` | Implemented product testnet gate | Wraps the full smoke and proves local account funding, token launch, DEX pool/liquidity/swap receipts, bridge-test records, control-plane product queries, workbench product surfaces, and no-secret API boundaries. |
240+
| `npm run flowchain:real-value-pilot:ops` | Branch-local dry-run pilot ops proof | Parser-checks pilot scripts, proves dry-run needs no RPC or keys, verifies missing live env refusal, checks emergency-stop dry-run, and writes sanitized evidence export. |
241+
| `npm run flowchain:real-value-pilot:emergency-stop` | Branch-local guarded pause wrapper | Routes to the live `Pause` action after explicit acknowledgement, Base `8453` chain check, cap check, lockbox address check, and owner key check. |
242+
| `npm run flowchain:real-value-pilot:export` | Branch-local pilot evidence exporter | Writes a sanitized ignored bundle excluding Git metadata, dependency folders, build targets, local vaults, private-key files, and env files. |
225243
| `npm run flowchain:export` | Implemented | Writes ignored export directory and zip bundle. |
226244
| `npm run flowchain:import -- --BundlePath <zip> -Force` | Implemented script path | Restores local state from an exported bundle. |
227245
| `npm run workbench:dev` | Implemented | Wraps `npm run dev --prefix apps/dashboard`. |

0 commit comments

Comments
 (0)