Skip to content

Commit 2a51604

Browse files
committed
Add FlowChain owner activation plan
1 parent 963cf51 commit 2a51604

29 files changed

Lines changed: 2498 additions & 345 deletions

docs/agent-runs/live-product-infra-rpc/COMPLETION_AUDIT.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# FlowChain Completion Audit
22

3-
Generated: 2026-05-18T06:22:40.6530606Z
3+
Generated: 2026-05-18T06:33:15.5719579Z
44
Status: blocked
55
Completion ready: False
66
Refresh mode: no-refresh-existing-reports
@@ -27,14 +27,15 @@ Latest observed height: 66326
2727
| Owner public RPC, tester write gateway, backup, and Base 8453 bridge inputs are validated without printing values. | blocked | ownerInputsStatus=blocked, ownerInputReady=False, report=E:\FlowMemory\flowmemory-live-infra-rpc\docs\agent-runs\live-product-infra-rpc\owner-inputs-report.json | npm run flowchain:owner-inputs |
2828
| Owner onboarding distinguishes repo-owned FlowChain RPC from the external Base 8453 RPC dependency and gives no-values setup commands. | passed | onboardingStatus=passed, flowChainRpcIsOurs=True, thirdPartyFlowChainRpcProviderNeeded=False, publicRpcRequiresOwnerPublicEdge=True, base8453RpcIsExternalChainDependency=True, localEnvFileSupported=True, failedChecks=0, secretFindings=0, missingChecks=0, report=E:\FlowMemory\flowmemory-live-infra-rpc\docs\agent-runs\live-product-infra-rpc\owner-onboarding-report.json | npm run flowchain:owner:onboarding |
2929
| Owner signup checklist maps public RPC edge, tester write token/cap, always-on host, backup storage, Base 8453 RPC, bridge details, and local env-file setup to exact owner actions without requesting secrets. | passed | signupStatus=passed, itemCount=9, externalSignupCount=3, missingCoverage=0, repoOwned=True, localEnvFileSupported=True, failedChecks=0, secretFindings=0, missingChecks=0, report=E:\FlowMemory\flowmemory-live-infra-rpc\docs\agent-runs\live-product-infra-rpc\owner-signup-checklist-report.json | npm run flowchain:owner:signup-checklist |
30+
| Owner activation plan turns remaining public launch inputs into ordered stages with exact validation commands, resource boundaries, and no-secret handoff instructions. | passed | activationPlanStatus=passed, activationReady=False, stages=8, readyStages=2, failedChecks=0, secretFindings=0, missingChecks=0, report=E:\FlowMemory\flowmemory-live-infra-rpc\docs\agent-runs\live-product-infra-rpc\owner-activation-plan-report.json | npm run flowchain:owner:activation-plan |
3031
| Owner env-file setup has a command-generated local scaffold whose target path is git-ignored before owner values are added. | passed | templateStatus=passed, pathIsGitIgnored=True, requiredEnvNameCount=17, optionalEnvNameCount=2, includesAllRequired=True, failedChecks=0, secretFindings=0, missingChecks=0, report=E:\FlowMemory\flowmemory-live-infra-rpc\docs\agent-runs\live-product-infra-rpc\owner-env-template-report.json | npm run flowchain:owner-env:template |
3132
| Owner env readiness validator fails closed before child gates for missing owner env files and repo-local env files that are not git-ignored. | passed | validationStatus=passed, missingFails=True, unignoredFails=True, failedChecks=0, secretFindings=0, missingChecks=0, report=E:\FlowMemory\flowmemory-live-infra-rpc\docs\agent-runs\live-product-infra-rpc\owner-env-readiness-validation-report.json | npm run flowchain:owner-env:readiness:validate |
3233
| The ignored owner env file can drive owner-input, live-infra, and public deployment gates through one redacted command. | blocked | readinessStatus=blocked, pathGitIgnored=True, ownerInputsReady=False, liveInfraReady=False, publicDeploymentContractReady=False, blockedOnlyKnown=True, report=E:\FlowMemory\flowmemory-live-infra-rpc\docs\agent-runs\live-product-infra-rpc\owner-env-readiness-report.json | npm run flowchain:owner-env:readiness -- -AllowBlocked |
3334
| Public RPC exposure has a no-values owner edge template for HTTPS reverse proxying, rate limiting, and CORS-origin forwarding. | passed | edgeTemplateStatus=passed, repoOwned=True, requiresTls=True, requiresRateLimit=True, forwardsOrigin=True, report=E:\FlowMemory\flowmemory-live-infra-rpc\docs\agent-runs\live-product-infra-rpc\public-rpc-edge-template-report.json | npm run flowchain:public-rpc:edge-template |
3435
| Public RPC deployment bundle has no-secret Nginx, owner env, owner render validation, tester write preflight, verification, and rollback artifacts for exposing FlowChain's own RPC. | passed | bundleStatus=passed, repoOwned=True, nginxTemplate=True, renderValidation=True, testerWritePreflight=True, failedChecks=0, missingChecks=0, secretFindings=0, verifyRunbook=True, rollbackRunbook=True, report=E:\FlowMemory\flowmemory-live-infra-rpc\docs\agent-runs\live-product-infra-rpc\public-rpc-deployment-bundle-report.json | npm run flowchain:public-rpc:deployment-bundle |
3536
| Public RPC deployment automation validates owner-host rendering of concrete Nginx, systemd, shell preflight, Windows preflight, tester write unauthenticated rejection probe, post-deploy verification, and rollback phases without host mutation or owner-value leakage. | passed | automationStatus=passed, action=Validate, renderCommand=True, noPlaceholders=True, testerUnauthProbe=True, hostMutationFalse=True, failedChecks=0, missingChecks=0, secretFindings=0, report=E:\FlowMemory\flowmemory-live-infra-rpc\docs\agent-runs\live-product-infra-rpc\public-rpc-deployment-automation-report.json | npm run flowchain:public-rpc:deployment:automation |
36-
| Node operator package collects no-secret runbooks, command matrix, owner-input names, and current evidence for install, autorecovery, public RPC, backup, ops, bridge, testers, and release gates. | passed | operatorPackageStatus=passed, commands=41, runbooks=24, evidenceReports=34, failedChecks=0, secretFindings=0, report=E:\FlowMemory\flowmemory-live-infra-rpc\docs\agent-runs\live-product-infra-rpc\operator-package-report.json | npm run flowchain:operator:package |
37-
| Node operator package verifier independently checks the generated package manifest, expected files, command matrix, owner-input names, forbidden local files, and no-secret scan. | passed | verifyStatus=passed, expectedFiles=53, commands=41, failedChecks=0, secretFindings=0, report=E:\FlowMemory\flowmemory-live-infra-rpc\docs\agent-runs\live-product-infra-rpc\operator-package-verify-report.json | npm run flowchain:operator:package:verify |
37+
| Node operator package collects no-secret runbooks, command matrix, owner-input names, and current evidence for install, autorecovery, public RPC, backup, ops, bridge, testers, and release gates. | passed | operatorPackageStatus=passed, commands=42, runbooks=25, evidenceReports=35, failedChecks=0, secretFindings=0, report=E:\FlowMemory\flowmemory-live-infra-rpc\docs\agent-runs\live-product-infra-rpc\operator-package-report.json | npm run flowchain:operator:package |
38+
| Node operator package verifier independently checks the generated package manifest, expected files, command matrix, owner-input names, forbidden local files, and no-secret scan. | passed | verifyStatus=passed, expectedFiles=55, commands=42, failedChecks=0, secretFindings=0, report=E:\FlowMemory\flowmemory-live-infra-rpc\docs\agent-runs\live-product-infra-rpc\operator-package-verify-report.json | npm run flowchain:operator:package:verify |
3839
| Public RPC readiness validator proves endpoint checks, CORS allowed-origin acceptance, disallowed-origin rejection, bounded rate-limit rejection, retry-after evidence, and response hygiene against a temporary local control plane. | passed | validationStatus=passed, allowedOriginAccepted=True, disallowedProbe=True, disallowedRejected=True, endpointChecks=True, rateLimitProbe=True, rateLimitRejected=True, rateLimitRetryAfter=True, responseHygiene=True, failedChecks=0, secretFindings=0, report=E:\FlowMemory\flowmemory-live-infra-rpc\docs\agent-runs\live-product-infra-rpc\public-rpc-validation-report.json | npm run flowchain:public-rpc:validate |
3940
| Public RPC abuse harness proves CORS rejection, media-type rejection, parse-error handling, method/params failure envelopes, batch/body caps, notification 204 handling, rate limiting, and no-secret response summaries. | passed | abuseStatus=passed, abuseReady=True, failedChecks=0, secretFindings=0, missingChecks=0, report=E:\FlowMemory\flowmemory-live-infra-rpc\docs\agent-runs\live-product-infra-rpc\public-rpc-abuse-test-report.json | npm run flowchain:public-rpc:abuse-test |
4041
| Public tester write gateway proves bearer auth configuration, public-only wallet creation, capped send settlement, and over-cap rejection on a temporary local control-plane. | passed | gatewayStatus=passed, configured=True, transferAccepted=True, capRejected=True, report=E:\FlowMemory\flowmemory-live-infra-rpc\docs\agent-runs\live-product-infra-rpc\public-tester-gateway-e2e-report.json | npm run flowchain:tester:gateway:e2e |

docs/agent-runs/live-product-infra-rpc/OPERATOR_PACKAGE.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
# FlowChain Operator Package
22

3-
Generated: 2026-05-18T06:22:09.9036475Z
3+
Generated: 2026-05-18T06:32:22.5250733Z
44
Status: passed
55

66
## Package
77

88
- Directory: `E:\FlowMemory\flowmemory-live-infra-rpc\docs\agent-runs\live-product-infra-rpc\operator-package`
99
- Manifest: `E:\FlowMemory\flowmemory-live-infra-rpc\docs\agent-runs\live-product-infra-rpc\operator-package\OPERATOR_PACKAGE_MANIFEST.json`
1010
- Command matrix: `E:\FlowMemory\flowmemory-live-infra-rpc\docs\agent-runs\live-product-infra-rpc\operator-package\OPERATOR_COMMAND_MATRIX.json`
11-
- Runbooks copied: 24
12-
- Evidence reports copied: 34
11+
- Runbooks copied: 25
12+
- Evidence reports copied: 35
1313

1414
## Checks
1515

docs/agent-runs/live-product-infra-rpc/OPERATOR_PACKAGE_VERIFY.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# FlowChain Operator Package Verify
22

3-
Generated: 2026-05-18T06:22:30.3674198Z
3+
Generated: 2026-05-18T06:32:33.7007452Z
44
Status: passed
55

66
## Checks
@@ -32,8 +32,8 @@ Status: passed
3232

3333
- Package report: `E:\FlowMemory\flowmemory-live-infra-rpc\docs\agent-runs\live-product-infra-rpc\operator-package-report.json`
3434
- Package directory: `E:\FlowMemory\flowmemory-live-infra-rpc\docs\agent-runs\live-product-infra-rpc\operator-package`
35-
- Expected files: 53
35+
- Expected files: 55
3636
- Missing files: 0
3737
- Forbidden local files: 0
38-
- Command count: 41
38+
- Command count: 42
3939
- Owner-input names: 17
Lines changed: 106 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,106 @@
1+
# FlowChain Owner Activation Plan
2+
3+
Generated: 2026-05-18T06:32:02.7988038+00:00
4+
Status: passed
5+
Activation ready: False
6+
7+
This plan is the current launch handoff. It records names, statuses, and commands only. Put real values in the ignored owner env file or the service environment; do not paste secrets into chat, GitHub, or generated reports.
8+
9+
## Current Missing Owner Inputs
10+
11+
- `FLOWCHAIN_RPC_PUBLIC_URL`
12+
- `FLOWCHAIN_RPC_ALLOWED_ORIGINS`
13+
- `FLOWCHAIN_RPC_RATE_LIMIT_PER_MINUTE`
14+
- `FLOWCHAIN_RPC_TLS_TERMINATED`
15+
- `FLOWCHAIN_RPC_STATE_BACKUP_PATH`
16+
- `FLOWCHAIN_TESTER_WRITE_ENABLED`
17+
- `FLOWCHAIN_TESTER_WRITE_TOKEN_SHA256`
18+
- `FLOWCHAIN_TESTER_MAX_SEND_UNITS`
19+
- `FLOWCHAIN_PILOT_OPERATOR_ACK`
20+
- `FLOWCHAIN_BASE8453_RPC_URL`
21+
- `FLOWCHAIN_BASE8453_LOCKBOX_ADDRESS`
22+
- `FLOWCHAIN_BASE8453_SUPPORTED_TOKEN`
23+
- `FLOWCHAIN_BASE8453_ASSET_DECIMALS`
24+
- `FLOWCHAIN_BASE8453_FROM_BLOCK`
25+
- `FLOWCHAIN_PILOT_MAX_DEPOSIT_WEI`
26+
- `FLOWCHAIN_PILOT_TOTAL_CAP_WEI`
27+
- `FLOWCHAIN_PILOT_CONFIRMATIONS`
28+
29+
## Activation Stages
30+
31+
| Stage | Status | Missing inputs | Validate with |
32+
| --- | --- | --- | --- |
33+
| Keep the chain and private RPC running | ready | none | npm run flowchain:service:status -- -AllowBlocked; npm run flowchain:service:monitor |
34+
| Fill the ignored local owner env file | ready | none | npm run flowchain:owner-env:template; npm run flowchain:owner-env:readiness:validate; npm run flowchain:owner-env:readiness -- -AllowBlocked |
35+
| Expose repo-owned FlowChain RPC through a public HTTPS edge | needs-owner-input | FLOWCHAIN_RPC_PUBLIC_URL, FLOWCHAIN_RPC_ALLOWED_ORIGINS, FLOWCHAIN_RPC_RATE_LIMIT_PER_MINUTE, FLOWCHAIN_RPC_TLS_TERMINATED | npm run flowchain:public-rpc:check -- -AllowBlocked; npm run flowchain:public-rpc:validate; npm run flowchain:public-rpc:abuse-test |
36+
| Provision durable state backup storage | needs-owner-input | FLOWCHAIN_RPC_STATE_BACKUP_PATH | npm run flowchain:backup:check -- -AllowBlocked; npm run flowchain:backup:restore:validate; npm run flowchain:backup:owner-path:dry-run |
37+
| Enable capped friends-and-family tester writes | needs-owner-input | FLOWCHAIN_TESTER_WRITE_ENABLED, FLOWCHAIN_TESTER_WRITE_TOKEN_SHA256, FLOWCHAIN_TESTER_MAX_SEND_UNITS | npm run flowchain:tester:gateway:e2e; npm run flowchain:external-tester:packet -- -AllowBlocked; npm run flowchain:external-tester:packet:validate |
38+
| Configure capped Base 8453 bridge pilot observation | needs-owner-input | FLOWCHAIN_PILOT_OPERATOR_ACK, FLOWCHAIN_BASE8453_RPC_URL, FLOWCHAIN_BASE8453_LOCKBOX_ADDRESS, FLOWCHAIN_BASE8453_SUPPORTED_TOKEN, FLOWCHAIN_BASE8453_ASSET_DECIMALS, FLOWCHAIN_BASE8453_FROM_BLOCK, FLOWCHAIN_PILOT_MAX_DEPOSIT_WEI, FLOWCHAIN_PILOT_TOTAL_CAP_WEI, FLOWCHAIN_PILOT_CONFIRMATIONS | npm run flowchain:bridge:live:check -- -AllowBlocked; npm run flowchain:bridge:infra:check -- -AllowBlocked; npm run flowchain:bridge:relayer:guardrail:validate; npm run flowchain:bridge:relayer:loop:validate |
39+
| Release the external tester packet only after public gates pass | needs-owner-input | FLOWCHAIN_RPC_PUBLIC_URL, FLOWCHAIN_RPC_ALLOWED_ORIGINS, FLOWCHAIN_RPC_RATE_LIMIT_PER_MINUTE, FLOWCHAIN_RPC_TLS_TERMINATED, FLOWCHAIN_RPC_STATE_BACKUP_PATH, FLOWCHAIN_TESTER_WRITE_ENABLED, FLOWCHAIN_TESTER_WRITE_TOKEN_SHA256, FLOWCHAIN_TESTER_MAX_SEND_UNITS, FLOWCHAIN_PILOT_OPERATOR_ACK, FLOWCHAIN_BASE8453_RPC_URL, FLOWCHAIN_BASE8453_LOCKBOX_ADDRESS, FLOWCHAIN_BASE8453_SUPPORTED_TOKEN, FLOWCHAIN_BASE8453_ASSET_DECIMALS, FLOWCHAIN_BASE8453_FROM_BLOCK, FLOWCHAIN_PILOT_MAX_DEPOSIT_WEI, FLOWCHAIN_PILOT_TOTAL_CAP_WEI, FLOWCHAIN_PILOT_CONFIRMATIONS | npm run flowchain:external-tester:packet -- -AllowBlocked; npm run flowchain:external-tester:packet:validate; npm run flowchain:dashboard:ui:readiness |
40+
| Run final no-secret production audit before public use | needs-owner-input | FLOWCHAIN_RPC_PUBLIC_URL, FLOWCHAIN_RPC_ALLOWED_ORIGINS, FLOWCHAIN_RPC_RATE_LIMIT_PER_MINUTE, FLOWCHAIN_RPC_TLS_TERMINATED, FLOWCHAIN_RPC_STATE_BACKUP_PATH, FLOWCHAIN_TESTER_WRITE_ENABLED, FLOWCHAIN_TESTER_WRITE_TOKEN_SHA256, FLOWCHAIN_TESTER_MAX_SEND_UNITS, FLOWCHAIN_PILOT_OPERATOR_ACK, FLOWCHAIN_BASE8453_RPC_URL, FLOWCHAIN_BASE8453_LOCKBOX_ADDRESS, FLOWCHAIN_BASE8453_SUPPORTED_TOKEN, FLOWCHAIN_BASE8453_ASSET_DECIMALS, FLOWCHAIN_BASE8453_FROM_BLOCK, FLOWCHAIN_PILOT_MAX_DEPOSIT_WEI, FLOWCHAIN_PILOT_TOTAL_CAP_WEI, FLOWCHAIN_PILOT_CONFIRMATIONS | npm run flowchain:completion:audit -- -AllowBlocked; npm run flowchain:truth-table -- -AllowBlocked; npm run flowchain:no-secret:scan |
41+
42+
## Owner Actions
43+
44+
### Keep the chain and private RPC running
45+
- Choose the host that will stay online and keep the FlowChain node/control-plane running.
46+
- Resources: Always-on Windows host, Linux host, or VPS
47+
### Fill the ignored local owner env file
48+
- Run the template command, fill real values only on the launch host, and point FLOWCHAIN_OWNER_ENV_FILE at that file.
49+
- Resources: Local ignored env file or service environment
50+
### Expose repo-owned FlowChain RPC through a public HTTPS edge
51+
- Create DNS or a tunnel hostname for the FlowChain RPC edge.
52+
- Terminate TLS at the edge.
53+
- Set exact allowed browser origins and a positive per-minute rate limit.
54+
- Resources: DNS provider or existing domain, TLS edge, reverse proxy, or tunnel
55+
### Provision durable state backup storage
56+
- Create a writable persistent directory available to the FlowChain service process.
57+
- Keep the path local to the launch host or mounted as durable storage.
58+
- Resources: Persistent local disk, mounted volume, or owner-managed backup directory
59+
### Enable capped friends-and-family tester writes
60+
- Generate a random bearer token outside the repo.
61+
- Store only its SHA-256 digest in the owner env file.
62+
- Choose a small positive per-send test-unit cap.
63+
- Resources: Owner password manager or secret store
64+
### Configure capped Base 8453 bridge pilot observation
65+
- Provide a Base chain 8453 HTTPS endpoint.
66+
- Provide deployed lockbox and supported-token addresses.
67+
- Choose the bootstrap from-block, confirmations, max deposit, total cap, and explicit capped-pilot acknowledgement.
68+
- Resources: Base RPC provider or owner-operated Base node, Deployed pilot bridge contract details
69+
### Release the external tester packet only after public gates pass
70+
- Share wallet/tester instructions only after the packet report marks external sharing ready.
71+
- Keep per-send caps low for the first pilot.
72+
- Resources: Friends-and-family tester list
73+
### Run final no-secret production audit before public use
74+
- Run the aggregate gates after all owner values are configured.
75+
- Do not announce public readiness until completionReady is true and the truth table has no owner blockers.
76+
- Resources: None beyond the configured launch resources
77+
78+
## Do Not Send
79+
80+
- Host login password
81+
- SSH private key
82+
- Owner env file contents
83+
- Provider URLs that carry account tokens
84+
- Registrar password
85+
- tunnel token
86+
- TLS private key
87+
- Storage account secret
88+
- cloud backup credentials
89+
- Raw tester bearer token
90+
- token hash together with the raw token
91+
- Wallet private key
92+
- wallet recovery words
93+
- provider dashboard password
94+
- Raw tester token in GitHub or chat
95+
- owner env file contents
96+
- Any secret-bearing provider URL
97+
- wallet recovery material
98+
99+
## Next Commands
100+
101+
- npm run flowchain:owner-env:template
102+
- npm run flowchain:owner-env:readiness -- -AllowBlocked
103+
- npm run flowchain:owner-inputs -- -AllowBlocked
104+
- npm run flowchain:public-rpc:check -- -AllowBlocked
105+
- npm run flowchain:bridge:live:check -- -AllowBlocked
106+
- npm run flowchain:completion:audit -- -AllowBlocked

0 commit comments

Comments
 (0)