Skip to content

Commit 885e237

Browse files
authored
Merge FlowChain private testnet setup package
Integrates the local/private FlowChain testnet package, one-command Windows setup, and guarded Base bridge POC after local validation and green CI.
2 parents a429a84 + df3e97f commit 885e237

141 files changed

Lines changed: 20503 additions & 254 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

AGENTS.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ These instructions apply to every agent, assistant, script, and human operating
2626
- Use `docs/PR_PROCESS.md` for branch naming, draft PRs, merge order, dirty worktrees, and issue closing.
2727
- Use `docs/DAILY_HQ_RUNBOOK.md` for morning review, triage, monitoring, and handoff.
2828
- Use `infra/scripts/status-report.ps1` for read-only local worktree, PR, and issue status.
29-
- The immediate major milestone is the Rootflow V0 and Flow Memory V0 launch core. Do not reinterpret that as approval for production deployment.
29+
- The immediate major milestone is the FlowChain private/local L1 testnet package for second-computer validation, with Rootflow V0 and Flow Memory V0 kept green as the baseline. Do not reinterpret that as approval for production deployment.
3030

3131
## Engineering Rules
3232

README.md

Lines changed: 37 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,17 @@ This repository contains the FlowMemory V0 foundation: project operating docs, l
3232

3333
## Start Here
3434

35+
For a second computer or a non-technical local test, use the beginner setup
36+
guide:
37+
38+
```powershell
39+
git clone -b release/flowchain-private-testnet https://github.com/FlowmemoryAI/FlowMemory.git
40+
cd FlowMemory
41+
powershell -ExecutionPolicy Bypass -File .\START_FLOWCHAIN_LOCAL.ps1
42+
```
43+
44+
Detailed guide: `docs/EASY_SECOND_COMPUTER_SETUP.md`.
45+
3546
Every contributor and agent should read:
3647

3748
1. `AGENTS.md`
@@ -61,7 +72,7 @@ FlowMemory is managed as a multi-agent program. The management layer is part of
6172
- `docs/MARKETING_CLAIMS_GUARDRAILS.md`: allowed and blocked launch claims for docs and marketing
6273
- `infra/scripts/status-report.ps1`: read-only local worktree, PR, and issue status report
6374

64-
Immediate major milestone: keep the Rootflow V0 and Flow Memory V0 launch core green. This means local contracts/tests, FlowPulse fixtures, Uniswap swap-derived memory-signal fixtures, Rootflow transitions, Flow Memory schemas, verifier reports, crypto fixtures, dashboard-readable state, Base Sepolia testnet read/deploy commands, and local smoke-test gates. It does not mean production deployment.
75+
Immediate major milestone: keep the Rootflow V0 and Flow Memory V0 launch core green while packaging the FlowChain private/local L1 testnet path for second-computer validation. This means local contracts/tests, FlowPulse fixtures, Uniswap swap-derived memory-signal fixtures, Rootflow transitions, Flow Memory schemas, verifier reports, crypto fixtures, dashboard-readable state, Base Sepolia testnet read/deploy commands, Windows-first wrapper scripts, and local smoke-test gates. It does not mean production deployment.
6576

6677
Run the local launch-core path:
6778

@@ -79,6 +90,31 @@ npm run launch:candidate
7990

8091
That command runs contract hardening, the launch flow, runtime schema validation, fixture drift checks, and claim guardrails.
8192

93+
Run the current FlowChain private/local wrapper path:
94+
95+
```powershell
96+
npm run flowchain:prereq
97+
npm run flowchain:init
98+
npm run flowchain:start
99+
npm run flowchain:demo
100+
npm run flowchain:export
101+
```
102+
103+
Run the merged-surface smoke path when Foundry, Python, dashboard dependencies,
104+
and crypto dependencies are installed:
105+
106+
```powershell
107+
npm install --prefix apps/dashboard
108+
npm install --prefix crypto
109+
npm run flowchain:smoke
110+
```
111+
112+
Run the existing dashboard as the local workbench:
113+
114+
```powershell
115+
npm run workbench:dev
116+
```
117+
82118
Build the dashboard after regenerating launch data:
83119

84120
```powershell

START_FLOWCHAIN_LOCAL.ps1

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
param(
2+
[switch]$SkipInstall,
3+
[switch]$SkipSmoke,
4+
[switch]$NoServers
5+
)
6+
7+
$ErrorActionPreference = "Stop"
8+
9+
Set-Location -LiteralPath $PSScriptRoot
10+
11+
function Run-Step {
12+
param(
13+
[string]$Name,
14+
[scriptblock]$Command
15+
)
16+
17+
Write-Host ""
18+
Write-Host "== $Name ==" -ForegroundColor Cyan
19+
& $Command
20+
}
21+
22+
Write-Host "FlowChain local/private testnet setup" -ForegroundColor Cyan
23+
Write-Host "This starts a local test package only. It is not production mainnet."
24+
25+
if (-not $SkipInstall) {
26+
Run-Step "Install root dependencies" { npm install }
27+
Run-Step "Install dashboard dependencies" { npm install --prefix apps/dashboard }
28+
Run-Step "Install crypto dependencies" { npm install --prefix crypto }
29+
}
30+
31+
Run-Step "Check prerequisites" { npm run flowchain:prereq }
32+
Run-Step "Initialize local state" { npm run flowchain:init }
33+
Run-Step "Start bounded local stack" { npm run flowchain:start }
34+
Run-Step "Run deterministic demo" { npm run flowchain:demo }
35+
36+
if (-not $SkipSmoke) {
37+
Run-Step "Run full local smoke" { npm run flowchain:smoke }
38+
}
39+
40+
Run-Step "Export local bundle" { npm run flowchain:export }
41+
Run-Step "Run bridge mock" { npm run bridge:mock }
42+
43+
if (-not $NoServers) {
44+
Write-Host ""
45+
Write-Host "Starting control plane and dashboard in separate PowerShell windows..." -ForegroundColor Cyan
46+
47+
Start-Process powershell.exe -ArgumentList @(
48+
"-NoExit",
49+
"-ExecutionPolicy",
50+
"Bypass",
51+
"-Command",
52+
"Set-Location -LiteralPath '$PSScriptRoot'; npm run control-plane:serve -- --host 127.0.0.1 --port 8675"
53+
)
54+
55+
Start-Process powershell.exe -ArgumentList @(
56+
"-NoExit",
57+
"-ExecutionPolicy",
58+
"Bypass",
59+
"-Command",
60+
"Set-Location -LiteralPath '$PSScriptRoot'; npm run workbench:dev"
61+
)
62+
}
63+
64+
Write-Host ""
65+
Write-Host "FlowChain local setup completed." -ForegroundColor Green
66+
Write-Host "Dashboard usually opens at http://127.0.0.1:5173/"
67+
Write-Host "Control plane listens on http://127.0.0.1:8675/ when the server window is running."

apps/dashboard/README.md

Lines changed: 51 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
# FlowMemory Dashboard V0
1+
# FlowMemory Dashboard / FlowChain Workbench V0
22

3-
Local operator/explorer app for inspecting FlowMemory V0 fixture output. It is intentionally fixture-backed and does not claim production live data, wallet support, token pricing, or hosted deployment.
3+
Local operator/explorer app for inspecting FlowMemory V0 fixture output and the FlowChain private/local testnet workbench surface. It is intentionally local-first and does not claim value-bearing wallet support, token pricing, or hosted deployment.
44

55
## Run Locally
66

@@ -25,6 +25,28 @@ npm test
2525
npm run build
2626
```
2727

28+
From the repo root, the same checks are:
29+
30+
```powershell
31+
npm test --prefix apps/dashboard
32+
npm run build --prefix apps/dashboard
33+
```
34+
35+
The first route is the FlowChain workbench. It tries the local control-plane API at:
36+
37+
```text
38+
http://127.0.0.1:8787
39+
```
40+
41+
Override that endpoint when needed:
42+
43+
```powershell
44+
$env:VITE_FLOWCHAIN_CONTROL_PLANE_URL="http://127.0.0.1:8787"
45+
npm run dev
46+
```
47+
48+
If the API is not running, the workbench marks the control-plane as offline, shows stale fixture fallback where appropriate, and keeps rendering deterministic local data. This app is for private/local validation and canary review only; it does not initiate value-bearing wallet flows.
49+
2850
## Data Boundary
2951

3052
The canonical dashboard fixture is generated by the launch-core command and lives at:
@@ -33,13 +55,27 @@ The canonical dashboard fixture is generated by the launch-core command and live
3355
fixtures/dashboard/flowmemory-dashboard-v0.json
3456
```
3557

58+
The guarded Base canary review fixture is separate:
59+
60+
```text
61+
fixtures/dashboard/flowmemory-dashboard-base-canary-v0.json
62+
```
63+
3664
The app loads its runtime copy from:
3765

3866
```text
3967
apps/dashboard/public/data/flowmemory-dashboard-v0.json
68+
apps/dashboard/public/data/flowmemory-dashboard-base-canary-v0.json
4069
```
4170

42-
The `dev` and `build` scripts run `npm run sync:fixtures`, which copies the canonical fixture into the Vite public data folder before the app starts or builds.
71+
The `dev` and `build` scripts run `npm run sync:fixtures`, which copies the canonical dashboard fixture and the existing launch-core devnet state into the Vite public data folder before the app starts or builds.
72+
73+
Workbench fixture fallback paths:
74+
75+
```text
76+
apps/dashboard/public/data/flowchain-local-devnet-state.json
77+
apps/dashboard/public/data/flowchain-local-devnet-dashboard-state.json
78+
```
4379

4480
Generated local source outputs land under the fixture boundary first:
4581

@@ -54,7 +90,9 @@ fixtures/dashboard/generated/hardware-heartbeats.json
5490

5591
## Current Views
5692

93+
- FlowChain workbench
5794
- Overview
95+
- Base canary review
5896
- Flow Memory / Rootflow
5997
- FlowPulse stream
6098
- Rootfields
@@ -67,6 +105,16 @@ fixtures/dashboard/generated/hardware-heartbeats.json
67105

68106
Every displayed record carries source subsystem, fixture/local origin, chain context, ID/hash, status, and last-updated metadata when available.
69107

108+
The workbench adds local setup/API status plus object views for blocks, transactions, agents, models, receipts, memory cells, artifacts, verifier reports, challenges, finality, provenance, and raw JSON. When a current fixture does not yet contain a private-testnet object type, the view stays empty and names the expected control-plane endpoint.
109+
110+
Workbench object coverage:
111+
112+
```text
113+
node/chain status, blocks, transactions, rootfields, agents, models, work receipts,
114+
memory cells, artifacts, verifier modules, verifier reports, challenges, finality,
115+
provenance/source, hardware signals, raw JSON
116+
```
117+
70118
## Status Vocabulary
71119

72120
Dashboard V0 visually distinguishes:

0 commit comments

Comments
 (0)