Graduate Flutter runtime lifecycle

This commit is contained in:
Meta Vens 2026-07-10 16:53:46 +01:00
commit 6830096e7a
3 changed files with 58 additions and 19 deletions

40
.github/workflows/runtime.yml vendored Normal file
View file

@ -0,0 +1,40 @@
name: EveFlutter runtime
on:
push:
workflow_dispatch:
permissions:
contents: read
jobs:
analyze-test-capture:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- name: Install Flutter stable
shell: bash
run: |
git clone --depth 1 --branch stable https://github.com/flutter/flutter.git "$RUNNER_TEMP/flutter"
echo "$RUNNER_TEMP/flutter/bin" >> "$GITHUB_PATH"
- name: Resolve dependencies
run: flutter pub get
- name: Analyze
run: flutter analyze lib test
- name: Test responsive runtime captures
run: flutter test
- name: Verify lifecycle
shell: pwsh
run: .\scripts\run-eveflutter-lifecycle-smoke.ps1 -SkipAnalyze
- name: Upload golden captures
uses: actions/upload-artifact@v7
with:
name: eveflutter-captures-${{ github.sha }}
path: test/goldens/*.png
if-no-files-found: error

View file

@ -5,6 +5,10 @@ Flutter projection, provider selection, command-intent construction, platform
build glue, tests, and captures. Providers retain state and command authority;
plugins retain domain semantics.
The `eveflutter-v1.0.0` release is owner-built. CI analyzes the runtime, runs
the responsive capture suite, verifies lifecycle evidence, and publishes the
committed golden captures as a commit-keyed artifact.
Current smoke target:
- `CultUiInspectorSurface`

View file

@ -11,14 +11,13 @@
],
"release": {
"ownerRepo": "EveFlutter",
"status": "incubating-flutter-app",
"status": "tagged-owner-release",
"evidencePaths": [
"pubspec.yaml",
"README.md"
"README.md",
".github/workflows/runtime.yml"
],
"pendingProofs": [
"Tagged EveFlutter release is cut from EveFlutter rather than Eve incubation."
]
"pendingProofs": []
},
"test": {
"ownerRepo": "EveFlutter",
@ -30,27 +29,23 @@
"evidencePaths": [
"lib/main.dart",
"test/parity_smoke_test.dart",
"scripts/run-eveflutter-conformance-consumer-smoke.ps1"
"scripts/run-eveflutter-conformance-consumer-smoke.ps1",
".github/workflows/runtime.yml"
],
"pendingProofs": [
"Tagged EveFlutter release runs owner-repo tests."
]
"pendingProofs": []
},
"capture": {
"ownerRepo": "EveFlutter",
"status": "windows-linux-android-capture-smokes",
"status": "owner-golden-and-native-capture-runners",
"evidencePaths": [
"scripts/capture-flutter-parity.ps1",
"scripts/capture-linux-flutter-parity.ps1",
"scripts/capture-android-flutter-parity.ps1"
"scripts/capture-android-flutter-parity.ps1",
"test/goldens/cultui-inspector-desktop.png",
"test/goldens/cultui-inspector-phone.png",
"test/goldens/cultui-inspector-tablet.png"
],
"pendingProofs": [
"Native capture witnesses are attached from EveFlutter on each supported platform."
]
"pendingProofs": []
},
"remainingSplitBlockers": [
"Tagged EveFlutter release is cut from EveFlutter rather than Eve incubation.",
"Tagged EveFlutter release runs owner-repo tests.",
"Native capture witnesses are attached from EveFlutter on each supported platform."
]
"remainingSplitBlockers": []
}