Skip to content

Commit 4ba22c5

Browse files
Merge pull request #56 from adybag14-cyber/fs55-ethernet-integration
feat(fs5.5): add app-suite release lifecycle proofs
2 parents 4dbef7e + fb4bb97 commit 4ba22c5

File tree

9 files changed

+1440
-6
lines changed

9 files changed

+1440
-6
lines changed

README.md

Lines changed: 3 additions & 2 deletions
Large diffs are not rendered by default.

docs/zig-port/FS5_5_HARDWARE_DRIVERS_SYSTEMS.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -462,6 +462,7 @@ Current local source-of-truth evidence:
462462
- the current FS5.5 package-release-channel slice now adds persisted `/packages/<name>/channels/<channel>.txt` mappings, `package-release-channel-list` / `package-release-channel-info` / `package-release-channel-set` / `package-release-channel-activate`, typed `PKGCHANNELLIST` / `PKGCHANNELINFO` / `PKGCHANNELSET` / `PKGCHANNELACTIVATE`, ATA/RAM-backed release-channel persistence tests, and live RTL8139 TCP proof for set -> info -> list -> mutate -> activate plus restored canonical script and asset readback through the selected release channel
463463
- the current FS5.5 app-plan slice now adds persisted `/runtime/apps/<name>/plans/<plan>.txt` plus `/runtime/apps/<name>/active_plan.txt`, new `tool_exec` builtins (`app-plan-list`, `app-plan-info`, `app-plan-active`, `app-plan-save`, `app-plan-apply`, `app-plan-delete`), new typed TCP verbs (`APPPLANLIST`, `APPPLANINFO`, `APPPLANACTIVE`, `APPPLANSAVE`, `APPPLANAPPLY`, `APPPLANDELETE`), ATA/RAM-backed app-plan tests, and a live RTL8139 TCP proof for save/list/info/apply/delete plus restored release/trust/display/autorun state readback
464464
- the current FS5.5 app-suite slice now adds persisted `/runtime/app-suites/<suite>.txt`, new `tool_exec` builtins (`app-suite-list`, `app-suite-info`, `app-suite-save`, `app-suite-apply`, `app-suite-run`, `app-suite-delete`), new typed TCP verbs (`APPSUITELIST`, `APPSUITEINFO`, `APPSUITESAVE`, `APPSUITEAPPLY`, `APPSUITERUN`, `APPSUITEDELETE`), ATA/RAM-backed app-suite tests, and a live RTL8139 TCP proof for save/list/info/apply/run/delete plus restored active-plan, autorun, and stdout readback across multiple apps
465+
- the current FS5.5 app-suite-release slice now adds persisted `/runtime/app-suite-releases/<suite>/<release>/suite.txt` plus `release.txt`, new `tool_exec` builtins (`app-suite-release-list`, `app-suite-release-info`, `app-suite-release-save`, `app-suite-release-activate`, `app-suite-release-delete`, `app-suite-release-prune`), new typed TCP verbs (`APPSUITERELEASELIST`, `APPSUITERELEASEINFO`, `APPSUITERELEASESAVE`, `APPSUITERELEASEACTIVATE`, `APPSUITERELEASEDELETE`, `APPSUITERELEASEPRUNE`), ATA/RAM-backed app-suite-release tests with deterministic `saved_seq` / `saved_tick` metadata, and a live RTL8139 TCP proof for save -> mutate -> list -> info -> activate -> delete -> prune plus restored suite readback
465466
- the current FS5.5 workspace slice now adds persisted `/runtime/workspaces/<name>.txt` plus `/runtime/workspace-runs/<name>/last_run.txt`, `history.log`, `stdout.log`, `stderr.log`, `/runtime/workspace-runs/autorun.txt`, and versioned release snapshots under `/runtime/workspace-releases/<name>/<release>/workspace.txt` plus `release.txt`, new `tool_exec` builtins (`workspace-list`, `workspace-info`, `workspace-save`, `workspace-apply`, `workspace-run`, `workspace-state`, `workspace-history`, `workspace-stdout`, `workspace-stderr`, `workspace-delete`, `workspace-release-list`, `workspace-release-info`, `workspace-release-save`, `workspace-release-activate`, `workspace-release-delete`, `workspace-release-prune`, `workspace-autorun-list`, `workspace-autorun-add`, `workspace-autorun-remove`, `workspace-autorun-run`), new typed TCP verbs (`WORKSPACELIST`, `WORKSPACEINFO`, `WORKSPACESAVE`, `WORKSPACEAPPLY`, `WORKSPACERUN`, `WORKSPACESTATE`, `WORKSPACEHISTORY`, `WORKSPACESTDOUT`, `WORKSPACESTDERR`, `WORKSPACEDELETE`, `WORKSPACERELEASELIST`, `WORKSPACERELEASEINFO`, `WORKSPACERELEASESAVE`, `WORKSPACERELEASEACTIVATE`, `WORKSPACERELEASEDELETE`, `WORKSPACERELEASEPRUNE`, `WORKSPACEAUTORUNLIST`, `WORKSPACEAUTORUNADD`, `WORKSPACEAUTORUNREMOVE`, `WORKSPACEAUTORUNRUN`), RAM-disk and ATA-backed workspace/release/autorun tests, and a live RTL8139 TCP proof for save/list/info/apply/run/state/history/stdout/stderr/delete, workspace release save/mutate/list/info/activate/delete/prune with persisted release readback and restored workspace info, workspace autorun add/list/run/remove, persisted `/runtime/workspace-runs/autorun.txt` readback, persisted workspace-run receipt readback, restored canonical package script content, trust-bundle selection, display mode, app-suite active-plan markers, and delete cleanup
466467
- the current FS5.5 workspace-release-channel slice now adds persisted `/runtime/workspace-release-channels/<name>/<channel>.txt` mappings, `workspace-release-channel-list` / `workspace-release-channel-info` / `workspace-release-channel-set` / `workspace-release-channel-activate`, typed `WORKSPACECHANNELLIST` / `WORKSPACECHANNELINFO` / `WORKSPACECHANNELSET` / `WORKSPACECHANNELACTIVATE`, RAM-disk and ATA-backed workspace-channel persistence tests, and live RTL8139 TCP proof for set -> info -> list -> activate plus persisted channel-target readback and restored workspace info through the selected workspace release channel
467468
- `src/baremetal/filesystem.zig` now carries a `96`-entry filesystem budget so the deeper FS5.5 package/trust/app/workspace release surface fits on the persisted path without live-service `NoSpace` failures

docs/zig-port/PHASE_CHECKLIST.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ Registry status:
1818
- `FS5.5` bare-metal tool execution strict closure is now reached locally: `src/baremetal/tool_exec.zig` now provides the real freestanding builtin command substrate including persisted `run-script` execution, canonical `run-package`, `package-verify`, `package-app`, `package-display`, `package-ls`, `package-cat`, `app-list`, `app-info`, `app-state`, `app-history`, `app-stdout`, `app-stderr`, `app-trust`, `app-connector`, `app-run`, `display-info`, `display-modes`, and `display-set`, `src/baremetal/package_store.zig` now provides the canonical persisted package layout under `/packages/<name>/bin/main.oc`, `/packages/<name>/meta/package.txt`, `/packages/<name>/meta/app.txt`, and `/packages/<name>/assets/...` plus manifest `script_checksum`, `app_manifest_checksum`, and `asset_tree_checksum` fields, `src/pal/proc.zig` exposes explicit freestanding capture through `runCaptureFreestanding(...)`, `src/baremetal/tool_service.zig` now exposes the bounded typed request/response shim used by the bare-metal TCP proof including typed `PKGVERIFY`, the storage/filesystem dependency chain closes through `src/baremetal/filesystem.zig`, `src/pal/fs.zig`, and the shared storage backend, host/module validation proves the builtin dispatch path plus typed TCP file-service behavior, typed package-service behavior, typed package-app/package-display service behavior, typed app-lifecycle service behavior, typed app stdout/stderr service behavior, typed package-asset and display-query/control behavior, ATA-backed package persistence, persisted package display profiles, deterministic package-integrity mismatch reporting on script tamper via `field=script_checksum`, persisted app runtime-state receipts, persisted app stdout/stderr receipts, and canonical `run-package` / `app-run` execution on top of the same filesystem layer, and the live QEMU proof `scripts/baremetal-qemu-tool-exec-probe-check.ps1` now proves `help`, `mkdir`, `write-file`, `cat`, `stat`, `run-script`, direct filesystem readback, persisted script readback after filesystem reset/re-init, and `echo` over the freestanding PVH artifact with attached disk media while the live RTL8139 TCP proof now covers persisted app-state and stdout/stderr readback plus the typed `PKGVERIFY` success receipt on the live package tree.
1919
- Latest FS5.5 autorun slice: `src/baremetal/app_runtime.zig` now persists `/runtime/apps/autorun.txt`, `src/baremetal/tool_exec.zig` now exposes `app-autorun-list`, `app-autorun-add`, `app-autorun-remove`, and `app-autorun-run`, `src/baremetal/tool_service.zig` now exposes `APPAUTORUNLIST`, `APPAUTORUNADD`, `APPAUTORUNREMOVE`, and `APPAUTORUNRUN`, host/module validation proves RAM-disk and ATA-backed autorun registry persistence plus autorun execution receipts, `src/baremetal/filesystem.zig` now carries an `80`-entry filesystem budget so the deeper FS5.5 package/trust/app/autorun/workspace runtime state fits on the persisted surface without live-service `NoSpace` failures, and the live RTL8139 TCP proof now covers autorun add/list/run/remove plus `/runtime/apps/autorun.txt`, `/runtime/apps/aux/last_run.txt`, and `/runtime/apps/aux/stdout.log` readback.
2020
- Latest FS5.5 app-suite slice: `src/baremetal/app_runtime.zig` now persists `/runtime/app-suites/<suite>.txt`, `src/baremetal/tool_exec.zig` now exposes `app-suite-list`, `app-suite-info`, `app-suite-save`, `app-suite-apply`, `app-suite-run`, and `app-suite-delete`, `src/baremetal/tool_service.zig` now exposes `APPSUITELIST`, `APPSUITEINFO`, `APPSUITESAVE`, `APPSUITEAPPLY`, `APPSUITERUN`, and `APPSUITEDELETE`, host/module validation proves RAM-disk and ATA-backed app-suite persistence plus suite-driven active-plan restoration across multiple apps, and the live RTL8139 TCP proof now covers save/list/info/apply/run/delete plus restored active-plan, autorun, and stdout readback.
21+
- Latest FS5.5 app-suite-release slice: `src/baremetal/app_runtime.zig` now persists `/runtime/app-suite-releases/<suite>/<release>/suite.txt` plus `release.txt`, `src/baremetal/tool_exec.zig` now exposes `app-suite-release-list`, `app-suite-release-info`, `app-suite-release-save`, `app-suite-release-activate`, `app-suite-release-delete`, and `app-suite-release-prune`, `src/baremetal/tool_service.zig` now exposes `APPSUITERELEASELIST`, `APPSUITERELEASEINFO`, `APPSUITERELEASESAVE`, `APPSUITERELEASEACTIVATE`, `APPSUITERELEASEDELETE`, and `APPSUITERELEASEPRUNE`, host/module validation proves RAM-disk and ATA-backed app-suite-release persistence with deterministic `saved_seq` / `saved_tick` metadata, and the live RTL8139 TCP proof now covers save -> mutate -> list -> info -> activate -> delete -> prune plus restored suite readback.
2122
- Latest FS5.5 workspace slice: `src/baremetal/workspace_runtime.zig` now persists `/runtime/workspaces/<name>.txt` orchestration state plus `/runtime/workspace-runs/<name>/last_run.txt`, `history.log`, `stdout.log`, `stderr.log`, `/runtime/workspace-runs/autorun.txt`, and versioned release snapshots under `/runtime/workspace-releases/<name>/<release>/workspace.txt` plus `release.txt`, `src/baremetal/tool_exec.zig` now exposes `workspace-list`, `workspace-info`, `workspace-save`, `workspace-apply`, `workspace-run`, `workspace-state`, `workspace-history`, `workspace-stdout`, `workspace-stderr`, `workspace-delete`, `workspace-release-list`, `workspace-release-info`, `workspace-release-save`, `workspace-release-activate`, `workspace-release-delete`, `workspace-release-prune`, `workspace-autorun-list`, `workspace-autorun-add`, `workspace-autorun-remove`, and `workspace-autorun-run`, `src/baremetal/tool_service.zig` now exposes `WORKSPACELIST`, `WORKSPACEINFO`, `WORKSPACESAVE`, `WORKSPACEAPPLY`, `WORKSPACERUN`, `WORKSPACESTATE`, `WORKSPACEHISTORY`, `WORKSPACESTDOUT`, `WORKSPACESTDERR`, `WORKSPACEDELETE`, `WORKSPACERELEASELIST`, `WORKSPACERELEASEINFO`, `WORKSPACERELEASESAVE`, `WORKSPACERELEASEACTIVATE`, `WORKSPACERELEASEDELETE`, `WORKSPACERELEASEPRUNE`, `WORKSPACEAUTORUNLIST`, `WORKSPACEAUTORUNADD`, `WORKSPACEAUTORUNREMOVE`, and `WORKSPACEAUTORUNRUN`, host/module validation proves RAM-disk and ATA-backed workspace persistence plus workspace release lifecycle, workspace autorun registry persistence, persisted runtime-receipt readback, and delete cleanup, the live RTL8139 TCP proof now covers save/list/info/apply/run/state/history/stdout/stderr/delete plus workspace release save/mutate/list/info/activate/delete/prune and workspace autorun add/list/run/remove on the persisted workspace surface together with persisted `/runtime/workspace-runs/autorun.txt` readback, persisted release readback, restored workspace info, restored canonical package script content, trust-bundle selection, display mode, and app-suite active-plan markers, and `src/baremetal/filesystem.zig` now carries a `96`-entry filesystem budget so that deeper persisted surface no longer fails with live-service `NoSpace`.
2223
- Latest FS5.5 workspace-release-channel slice: `src/baremetal/workspace_runtime.zig` now persists `/runtime/workspace-release-channels/<name>/<channel>.txt` mappings, `src/baremetal/tool_exec.zig` now exposes `workspace-release-channel-list`, `workspace-release-channel-info`, `workspace-release-channel-set`, and `workspace-release-channel-activate`, `src/baremetal/tool_service.zig` now exposes `WORKSPACECHANNELLIST`, `WORKSPACECHANNELINFO`, `WORKSPACECHANNELSET`, and `WORKSPACECHANNELACTIVATE`, host/module validation proves RAM-disk and ATA-backed workspace-channel persistence, and the live RTL8139 TCP proof now covers set -> info -> list -> activate plus persisted channel-target readback and restored workspace info through the selected workspace release channel.
2324
- Latest FS5.5 package-release slice: `src/baremetal/package_store.zig` now snapshots, reports, deletes, prunes, and reactivates persisted package releases under `/packages/<name>/releases/<release>/...` with deterministic `saved_seq` / `saved_tick` metadata, `src/baremetal/tool_exec.zig` now exposes `package-release-list`, `package-release-info`, `package-release-save`, `package-release-activate`, `package-release-delete`, and `package-release-prune`, `src/baremetal/tool_service.zig` now exposes `PKGRELEASELIST`, `PKGRELEASEINFO`, `PKGRELEASESAVE`, `PKGRELEASEACTIVATE`, `PKGRELEASEDELETE`, and `PKGRELEASEPRUNE`, host/module validation proves RAM-disk and ATA-backed release info/delete/prune behavior with deterministic newest-release retention plus restored canonical script and asset readback, and the live RTL8139 TCP proof now covers save -> mutate -> info -> list -> activate -> delete -> prune plus restored `PKGRUN`, `/packages/<name>/bin/main.oc`, `config/app.json`, and asset readback.

docs/zig-port/PORT_PLAN.md

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2001,6 +2001,12 @@ Full-stack replacement execution reference:
20012001
- `src/baremetal/tool_service.zig` now exposes `APPSUITELIST`, `APPSUITEINFO`, `APPSUITESAVE`, `APPSUITEAPPLY`, `APPSUITERUN`, and `APPSUITEDELETE`
20022002
- host validation now proves RAM-disk and ATA-backed suite persistence plus suite-driven active-plan restoration across multiple apps
20032003
- the broad live RTL8139 TCP proof now covers save -> list -> info -> apply -> run -> delete plus restored active-plan, autorun, and stdout readback on the persisted app-suite surface
2004+
- current FS5.5 app-suite-release slice is now locally closed on the same branch:
2005+
- `src/baremetal/app_runtime.zig` now persists bounded app-suite release snapshots under `/runtime/app-suite-releases/<suite>/<release>/suite.txt` plus `release.txt`
2006+
- `src/baremetal/tool_exec.zig` now exposes `app-suite-release-list`, `app-suite-release-info`, `app-suite-release-save`, `app-suite-release-activate`, `app-suite-release-delete`, and `app-suite-release-prune`
2007+
- `src/baremetal/tool_service.zig` now exposes `APPSUITERELEASELIST`, `APPSUITERELEASEINFO`, `APPSUITERELEASESAVE`, `APPSUITERELEASEACTIVATE`, `APPSUITERELEASEDELETE`, and `APPSUITERELEASEPRUNE`
2008+
- host validation now proves RAM-disk and ATA-backed app-suite-release persistence with deterministic `saved_seq` / `saved_tick` metadata
2009+
- the broad live RTL8139 TCP proof now covers save -> mutate -> list -> info -> activate -> delete -> prune plus restored suite readback on the persisted app-suite-release surface
20042010
- current FS5.5 workspace slice is now locally closed on the same branch:
20052011
- `src/baremetal/workspace_runtime.zig` now persists bounded workspace definitions under `/runtime/workspaces/<name>.txt` with saved suite/trust/display/channel orchestration state plus `/runtime/workspace-runs/<name>/last_run.txt`, `history.log`, `stdout.log`, `stderr.log`, the bounded workspace autorun registry `/runtime/workspace-runs/autorun.txt`, and versioned release snapshots under `/runtime/workspace-releases/<name>/<release>/workspace.txt` plus `release.txt`
20062012
- `src/baremetal/tool_exec.zig` now exposes `workspace-list`, `workspace-info`, `workspace-save`, `workspace-apply`, `workspace-run`, `workspace-state`, `workspace-history`, `workspace-stdout`, `workspace-stderr`, `workspace-delete`, `workspace-release-list`, `workspace-release-info`, `workspace-release-save`, `workspace-release-activate`, `workspace-release-delete`, `workspace-release-prune`, `workspace-autorun-list`, `workspace-autorun-add`, `workspace-autorun-remove`, and `workspace-autorun-run`
@@ -2013,12 +2019,12 @@ Full-stack replacement execution reference:
20132019
- host validation now also proves RAM-disk and ATA-backed workspace release-channel persistence plus restored workspace info through channel activation
20142020
- the broad live RTL8139 TCP proof now also covers workspace release channel set -> info -> list -> activate, persisted channel-target readback, and restored workspace info through the selected workspace release channel
20152021
- `src/baremetal/filesystem.zig` now carries a `96`-entry filesystem budget so the deeper FS5.5 package/trust/app/workspace release surface no longer fails with live-service `NoSpace`
2016-
- current local validation after the workspace-release slice is green:
2017-
- `zig build test --summary all` -> `381/381` passed
2022+
- current local validation after the app-suite-release slice is green:
2023+
- `zig build test --summary all` -> `385/385` passed
20182024
- `scripts/baremetal-qemu-rtl8139-tcp-probe-check.ps1 -TimeoutSeconds 120` -> pass
20192025
- parity gate -> pass (`union 141/141`, `events 19/19`)
20202026
- docs status gate -> pass
2021-
- the real regressions fixed during the slice were an invalid live mutation target (`trust_bundle=fs55-root` plus deleted release `r2`) and a real persisted-filesystem `NoSpace` failure on the later workspace-autorun batch; the final lane now uses valid staged workspace mutation inputs and the widened filesystem budget
2027+
- the real regressions fixed during the slice were stale framed payload-length expectations on the new `APPSUITERELEASEDELETE` and `APPSUITERELEASEPRUNE` receipts; the runtime, CLI, typed service, and live proof now match the current app-suite-release contract
20222028
- `build.zig` now runs the compiled native test executables directly on Windows, which avoids the current Zig master `--listen=-` test-runner hang while keeping the real hosted and baremetal-host test matrix intact
20232029

20242030

0 commit comments

Comments
 (0)