refactor(brand): rename F∆I -> Ch∆In + hub binary fai -> chain
Some checks failed
Security / Security check (push) Failing after 2s
Some checks failed
Security / Security check (push) Failing after 2s
Studio follows the platform rename: product branding F∆I -> Ch∆In in UI strings, command examples fai -> chain, and — critically — the spawned hub binary path ~/.fai/bin/fai -> ~/.fai/bin/chain so Studio launches the renamed binary. The fai_* Dart identifiers (FaiLog, widget files, the generated SDK) stay = vendor/internal namespace. flutter analyze: no issues. Signed-off-by: flemming-it <stefan.a.flemming@googlemail.com>
This commit is contained in:
parent
a0007b9178
commit
7ff4fda2a3
36 changed files with 141 additions and 141 deletions
|
|
@ -1,6 +1,6 @@
|
|||
# Architecture in one paragraph
|
||||
|
||||
F∆I has three concepts you'll meet everywhere: **Hub**,
|
||||
Ch∆In has three concepts you'll meet everywhere: **Hub**,
|
||||
**Module**, **Flow**.
|
||||
|
||||
**The hub** is a single Rust binary called `fai`. It runs as a
|
||||
|
|
@ -39,7 +39,7 @@ Studio ──gRPC──▶ Hub ──loads──▶ Module (WASM)
|
|||
or Podman. Modules are WASM components loaded in-process.
|
||||
- No external database. SQLite ships with the hub.
|
||||
- No background services. One process; restart with
|
||||
`fai daemon restart` — see Doctor → Daemon control.
|
||||
`chain daemon restart` — see Doctor → Daemon control.
|
||||
|
||||
## Where to go next in this app
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
# Architektur in einem Absatz
|
||||
|
||||
F∆I hat drei Konzepte, die dir überall begegnen: **Hub**,
|
||||
Ch∆In hat drei Konzepte, die dir überall begegnen: **Hub**,
|
||||
**Modul**, **Flow**.
|
||||
|
||||
**Der Hub** ist ein einzelnes Rust-Binary namens `fai`. Er
|
||||
|
|
@ -42,7 +42,7 @@ Studio ──gRPC──▶ Hub ──lädt──▶ Modul (WASM)
|
|||
Module sind WASM-Komponenten, in-process geladen.
|
||||
- Keine externe Datenbank. SQLite kommt mit dem Hub.
|
||||
- Keine Hintergrunddienste. Ein Prozess; Neustart per
|
||||
`fai daemon restart` — siehe Diagnose → Daemon-Steuerung.
|
||||
`chain daemon restart` — siehe Diagnose → Daemon-Steuerung.
|
||||
|
||||
## Wo es in dieser App weitergeht
|
||||
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ WORM-1 is our first WORM (write-once-read-many) tier:
|
|||
beta / production channels.
|
||||
- **Tamper-evident**: the chain reveals any retroactive edit.
|
||||
Verification runs end-to-end on every Doctor-page load and
|
||||
via `fai admin verify-events`.
|
||||
via `chain admin verify-events`.
|
||||
- **Self-contained**: SQLite + chain hash is enough; no
|
||||
external WORM sink needed.
|
||||
|
||||
|
|
@ -60,7 +60,7 @@ WORM sink) are roadmap items, not yet shipped.
|
|||
If you want to verify outside Studio:
|
||||
|
||||
```bash
|
||||
fai admin verify-events
|
||||
chain admin verify-events
|
||||
# Prints "Hash chain intact: N events verified" or names the
|
||||
# first event whose hash mismatches.
|
||||
```
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ WORM-1 ist unsere erste WORM-Stufe (write-once-read-many):
|
|||
beta-/production-Kanälen verweigert.
|
||||
- **Manipulationssicher**: Die Kette zeigt jede nachträgliche
|
||||
Änderung. Verifikation läuft bei jedem Doctor-Page-Load
|
||||
komplett und über `fai admin verify-events`.
|
||||
komplett und über `chain admin verify-events`.
|
||||
- **Selbst-tragend**: SQLite + Ketten-Hash genügen; keine
|
||||
externe WORM-Senke nötig.
|
||||
|
||||
|
|
@ -61,7 +61,7 @@ WORM-Senke) sind Roadmap-Punkte, noch nicht ausgeliefert.
|
|||
Wer außerhalb von Studio verifizieren will:
|
||||
|
||||
```bash
|
||||
fai admin verify-events
|
||||
chain admin verify-events
|
||||
# Druckt „Hash-Kette intakt: N Events verifiziert" oder nennt
|
||||
# das erste Event, dessen Hash nicht passt.
|
||||
```
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ outputs:
|
|||
greeting: "{{ steps.greet.outputs.payload }}"
|
||||
```
|
||||
|
||||
`fai run flows/hello.yaml --input name=World` produces:
|
||||
`chain run flows/hello.yaml --input name=World` produces:
|
||||
|
||||
```json
|
||||
{ "greeting": "Hello, World" }
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ outputs:
|
|||
greeting: "{{ steps.greet.outputs.payload }}"
|
||||
```
|
||||
|
||||
`fai run flows/hello.yaml --input name=Welt` ergibt:
|
||||
`chain run flows/hello.yaml --input name=Welt` ergibt:
|
||||
|
||||
```json
|
||||
{ "greeting": "Hallo, Welt" }
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
# Sandbox model
|
||||
|
||||
Every F∆I module runs inside a WebAssembly sandbox with no
|
||||
Every Ch∆In module runs inside a WebAssembly sandbox with no
|
||||
ambient access to the host. The module can do exactly what it
|
||||
declares in its `module.yaml` — and nothing else.
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
# Sandbox-Modell
|
||||
|
||||
Jedes F∆I-Modul läuft in einer WebAssembly-Sandbox ohne
|
||||
Jedes Ch∆In-Modul läuft in einer WebAssembly-Sandbox ohne
|
||||
ambienten Hostzugriff. Das Modul kann genau das, was es in
|
||||
seiner `module.yaml` deklariert — und sonst nichts.
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue