Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
108 commits
Select commit Hold shift + click to select a range
2103649
feat: rebuild Concord MVP foundation
etvjay Aug 12, 2026
a43c6c6
fix: harden Concord verification and deployment flow
etvjay Aug 12, 2026
a144988
fix: preserve and verify FCC action evidence
etvjay Aug 12, 2026
ae206a3
fix: enforce zero-fee round bounds
etvjay Aug 12, 2026
0ae7025
docs: align Concord status with evidence boundary
etvjay Aug 12, 2026
57ad3c1
fix: make Coston2 runner Concord-aware
etvjay Aug 12, 2026
00cf0c5
feat: add shared Concord integration surfaces
etvjay Aug 12, 2026
62e4886
test: cover chain-backed read model projection
etvjay Aug 12, 2026
4de52ac
docs: define Concord frontend design system
etvjay Aug 12, 2026
4bc2294
docs: define complete Concord frontend art direction
etvjay Aug 12, 2026
2094a60
docs: reconcile Concord with canonical product documents
etvjay Aug 12, 2026
fb5bd3a
docs: persist Foundry skills pack ingestion manifest
etvjay Aug 12, 2026
585f221
ci: add pre-deployment verification gates
etvjay Aug 12, 2026
a13fbca
ci: isolate deterministic and Coston2 verification workflows
etvjay Aug 12, 2026
d3eed7c
ci: establish a minimal runnable workflow
etvjay Aug 12, 2026
f0da92f
sdk: expose health and FCC evidence reads
etvjay Aug 12, 2026
ca6653d
mcp: expose health and evidence resources
etvjay Aug 12, 2026
540506e
test: cover MCP health and evidence surfaces
etvjay Aug 12, 2026
55874f3
fix: normalize SDK source line breaks
etvjay Aug 12, 2026
ff1bdec
ci: restore complete deterministic verification gates
etvjay Aug 12, 2026
49e5820
fix: normalize Coston2 workflow line endings
etvjay Aug 12, 2026
7d97dab
docs: state simulated TEE mode explicitly
etvjay Aug 12, 2026
039460c
ci: let functional Solidity tests run before formatting cleanup
etvjay Aug 12, 2026
a414005
docs: record deterministic CI evidence
etvjay Aug 12, 2026
8cc4eff
ci: add durable Coston2 live gates and evidence runbook
etvjay Aug 12, 2026
5c577ae
docs: record Coston2 resolver and full CI evidence
etvjay Aug 12, 2026
35b756b
test: harden lifecycle invariants and operator surfaces
etvjay Aug 12, 2026
7701f62
docs: record hardening verification evidence
etvjay Aug 12, 2026
5500bee
test: cover malicious token reentry
etvjay Aug 12, 2026
cf724b1
docs: record ERC-20 safety coverage
etvjay Aug 12, 2026
2f02c4b
docs: record fresh Flare FCC source snapshot
etvjay Aug 12, 2026
23b2755
ci: add guarded Coston2 sender deployment
etvjay Aug 13, 2026
8aba111
ci: add guarded manual Coston2 sender deployment
etvjay Aug 13, 2026
f2464c9
ci: remove undispatchable sender workflow
etvjay Aug 13, 2026
2902b6b
ci: fix guarded sender shell expansion
etvjay Aug 13, 2026
b8f6ee9
ci: guard live deploy and add FCC registration input
etvjay Aug 13, 2026
1f439c1
ci: quote sender address in FCC registration job
etvjay Aug 13, 2026
31c601e
ci: fix FCC extension id validation
etvjay Aug 13, 2026
143dd24
ci: add guarded Coston2 facility deployment phase
etvjay Aug 13, 2026
e022383
build: optimize Coston2 bytecode and target Paris EVM
etvjay Aug 13, 2026
a087f09
docs: record observed Coston2 Concord deployment evidence
etvjay Aug 13, 2026
5748efd
docs: record live Coston2 deployment boundary
etvjay Aug 13, 2026
df78b9e
docs: distinguish deployed contracts from live lifecycle proof
etvjay Aug 13, 2026
6e81fd8
docs: align README with observed Coston2 deployment
etvjay Aug 13, 2026
fbc0ba5
ci: prevent duplicate Coston2 facility deployment
etvjay Aug 13, 2026
cc55c10
ci: add guarded Coston2 FCC scaffold setup
etvjay Aug 13, 2026
a93abbc
docs: record live account balances and funding blocker
etvjay Aug 13, 2026
b63522c
docs: refine Coston2 account funding status
etvjay Aug 13, 2026
5cafa91
ci: add guarded root and Makkari round setup
etvjay Aug 13, 2026
b2839b1
docs: record live root Accord and Makkari round
etvjay Aug 13, 2026
7ec197f
docs: update lifecycle evidence through open round
etvjay Aug 13, 2026
b7fc670
docs: clarify remaining lifecycle evidence template
etvjay Aug 13, 2026
d1a8128
fix: bind Coston2 flow to current USDT0 test token
codex Aug 13, 2026
6fa6b8d
docs: record corrected Coston2 facility deployment
codex Aug 13, 2026
9609ab3
docs: record current Coston2 root round
codex Aug 13, 2026
6947758
ci: add guarded provider gas funding
codex Aug 13, 2026
3170387
docs: record provider gas funding evidence
codex Aug 13, 2026
a3ce5b1
ci: require stable named FCC proxy
codex Aug 13, 2026
0b10a69
fix: align named tunnel command with scaffold
codex Aug 13, 2026
870d323
fix: enforce stable Coston2 FCC machine setup
codex Aug 13, 2026
fd1c61b
fix: quote named tunnel env in FCC setup
codex Aug 13, 2026
edecc36
docs: record governed FCC credential state
codex Aug 13, 2026
a571ca3
feat: add Cloudflare FCC development ingress relay
codex Aug 13, 2026
385af92
ci: prepare disposable Coston2 Codespace runtime
codex Aug 13, 2026
e8c1ea5
ci: run disposable FCC runtime from existing workflow
codex Aug 13, 2026
e2348fb
fix: restore scaffold process helper
codex Aug 13, 2026
70a3ac6
fix: quote indexer values in Codespace proxy config
codex Aug 13, 2026
3c7b174
fix: pass Codespace name to port visibility command
codex Aug 13, 2026
7da20b2
ci: make Codespace FCC relay reproducible
codex Aug 13, 2026
cca74d1
ci: register FCC machine through relay fallback
codex Aug 13, 2026
ddf07a0
fix: preserve FCC identity across Codespace prep
codex Aug 13, 2026
e36cea5
fix: relay FCC action results through Worker
codex Aug 13, 2026
62eb547
docs: record live FCC registration evidence
codex Aug 13, 2026
3f5e6dc
feat: execute and materialize live FCC round
codex Aug 13, 2026
51f630e
fix: quote live round workflow addresses
codex Aug 13, 2026
7f8a99a
fix: encode eligible providers for finalize payload
codex Aug 13, 2026
49f688b
fix: make TEE promotion idempotent
codex Aug 13, 2026
787570e
fix: recover verified FCC allocations
codex Aug 13, 2026
6dd6952
feat: run funded facility lifecycle
codex Aug 13, 2026
ed6305a
fix: gate facility flow on compiled tooling
codex Aug 13, 2026
f41953e
docs: record complete Coston2 lifecycle evidence
codex Aug 13, 2026
2a9a521
docs: add judge-ready evidence path
codex Aug 13, 2026
c5c81b9
docs: reconcile frontend navigation direction
codex Aug 13, 2026
bb48472
feat: build institutional frontend and hosted FCC path
codex Aug 14, 2026
78e8f80
feat: refine product frontend and Northflank FCC hosting
codex Aug 14, 2026
b0e7289
fix: make Concord navigation contextual
codex Aug 14, 2026
2374760
fix: reset scroll on route transitions
codex Aug 14, 2026
869ff93
feat: simplify Concord frontend experience
codex Aug 14, 2026
bd019bd
fix: align frontend page metadata
codex Aug 14, 2026
4f411ed
feat: connect draw intent wallet flow
etvjay Aug 14, 2026
ec410c9
docs: finish demo and submission handoff
etvjay Aug 14, 2026
4ef31dc
chore: make Vercel frontend deployment reproducible
etvjay Aug 14, 2026
155c05e
chore: harden hosted FCC cutover evidence
codex Aug 14, 2026
21b2506
docs: record current CI evidence
codex Aug 14, 2026
083d5e7
docs: record dead relay and Codespace blocker
codex Aug 14, 2026
29febc2
docs: align Concord proof and demo claims
codex Aug 14, 2026
d78ce2e
infra: support authenticated Northflank Redis
codex Aug 14, 2026
c976424
ci: add guarded Northflank Concord deploy
codex Aug 14, 2026
b785ae6
ci: fix Northflank service schema
codex Aug 14, 2026
65dc72a
ci: use build-capable Northflank plan
codex Aug 14, 2026
d7951cb
ci: fit Northflank free deployment allowance
codex Aug 14, 2026
1fc83bd
ci: fit Northflank free build storage
codex Aug 14, 2026
2ed79d0
ci: resume Northflank runtime deployment
codex Aug 14, 2026
1d09c54
fix northflank proxy bootstrap probes
codex Aug 14, 2026
a26dbb6
docs: point cloudflare ingress at northflank
codex Aug 14, 2026
4951f3f
docs: record verified concord runtime
codex Aug 14, 2026
77f61a6
Merge remote-tracking branch 'origin/main' into agent/concord-rebuild
codex Aug 14, 2026
2147ec8
docs: align judge truth and add read-only preflight
codex Aug 14, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 27 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
.git
.gitignore
.env
.env.*
*.md
docs/
testing/
.superpowers/
.claude/
cache/
out/
config/
!config/
config/**
!config/coston2/
config/coston2/**
!config/coston2/concord-deployment.json
contracts/
scripts/
proxy/
foundry.toml
docker-compose*.yaml
Dockerfile*
.dockerignore
frontend/node_modules/
frontend/dist/
frontend/*.tsbuildinfo
75 changes: 75 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
# Extension implementation language.
#
# Resolved by directory convention: LANGUAGE=<dir> is valid iff <dir>/language.env
# exists. The scaffold ships go, python and typescript; adding your own means
# creating a directory with a language.env manifest and a Dockerfile that
# satisfies docs/extension-contract.md — no script changes required.
#
# Reproducibility differs by language: the Go image is bit-for-bit reproducible
# across machines; python/typescript target same-machine determinism only.
# See REPRODUCIBILITY.md.
LANGUAGE=go

# Private key for proxy signing. Set this only in a local, ignored .env file.
PROXY_PRIVATE_KEY=

# # Devnet
# INITIAL_OWNER="0x..." # Initial owner address (derived from DEPLOYMENT_PRIVATE_KEY)
# DEPLOYMENT_PRIVATE_KEY="" # Private key for deployments and contract calls

# Coston
INITIAL_OWNER=""
DEPLOYMENT_PRIVATE_KEY=""

# TEE governance — the signer set + threshold that governs this extension's TEE
# machines. post-build registers it on-chain (set-governance) AND the TEE node
# signs with it; both read these same vars, so they always agree. If unset,
# defaults to GOVERNANCE_SIGNERS=<INITIAL_OWNER> (the deployer) and
# GOVERNANCE_THRESHOLD=1. Set your own to use a different governance set:
# GOVERNANCE_SIGNERS="0xAbc...,0xDef..." # comma-separated 0x addresses
# GOVERNANCE_THRESHOLD=2

# Docker image registry (defaults to "local" for locally-built images)
# Uncomment to use remote registry:
# REGISTRY=registry.gitlab.com/flarenetwork/tee/e2e

# Chain RPC URL
CHAIN_URL=https://coston2-api.flare.network/ext/C/rpc

# Path to Coston2 deployed contract addresses
ADDRESSES_FILE=./config/coston2/deployed-addresses.json

# Must be false on live networks
LOCAL_MODE=false

# TEE attestation mode: true = use test code hash/platform (no real TEE hardware)
# Set to false when running on actual GCP Confidential VM with real attestation
SIMULATED_TEE=true

# Normal/FTDC proxy URL on Coston2
NORMAL_PROXY_URL=https://tee-proxy-coston2-1.flare.rocks

# Extension proxy URL (local)
# Overwritten automatically when start-services.sh syncs the cloudflared tunnel
# (--tunnel, or any already-running tunnel). Set it by hand for ngrok.
# EXT_PROXY_URL=http://localhost:6674
EXT_PROXY_URL=https://<your-ngrok-url>.ngrok-free.dev

# Cloudflare tunnel (docs/cloudflared.md). Use a remotely-managed named tunnel
# for FCC registration; quick tunnels are not stable enough for an onchain URL.
# start-services.sh prepends `tunnel --no-autoupdate` to this value.
# TUNNEL_ARGS=run --token eyJ...
# TUNNEL_TARGET=http://host.docker.internal:6664 # only if the proxy is not on 6674

# --- Docker Compose overrides (all have defaults, uncomment to customize) ---
# SOURCE_DATE_EPOCH= # Unix timestamp for reproducible builds (auto-derived from git by start-services.sh)
# CHAIN_ID=31337 # Chain id the node binds signatures to (local=31337, coston=16, coston2=114)
# LOG_LEVEL=INFO # TEE node log level
# MODE=1 # TEE node mode
# REDIS_BIND=127.0.0.1:6382 # Host port binding for the extension Redis
# EXT_PROXY_INTERNAL_BIND=0.0.0.0:6673 # Host port binding for proxy internal API
# EXT_PROXY_EXTERNAL_BIND=0.0.0.0:6674 # Host port binding for proxy external API
# COMPOSE_NETWORK=docker_default # Docker network name (base compose joins this external network)
# USE_LOCAL_SIBLINGS=0 # Set to 1 to build node/proxy from on-disk sibling checkouts
# WAIT_TIMEOUT= # Timeout for post-build registration waits
# TEE_VERSION= # TEE version label for allow-tee-version
Loading
Loading