Graduate Flutter runtime lifecycle
This commit is contained in:
parent
5998044f2b
commit
6830096e7a
3 changed files with 58 additions and 19 deletions
40
.github/workflows/runtime.yml
vendored
Normal file
40
.github/workflows/runtime.yml
vendored
Normal 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
|
||||||
|
|
@ -5,6 +5,10 @@ Flutter projection, provider selection, command-intent construction, platform
|
||||||
build glue, tests, and captures. Providers retain state and command authority;
|
build glue, tests, and captures. Providers retain state and command authority;
|
||||||
plugins retain domain semantics.
|
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:
|
Current smoke target:
|
||||||
|
|
||||||
- `CultUiInspectorSurface`
|
- `CultUiInspectorSurface`
|
||||||
|
|
|
||||||
|
|
@ -11,14 +11,13 @@
|
||||||
],
|
],
|
||||||
"release": {
|
"release": {
|
||||||
"ownerRepo": "EveFlutter",
|
"ownerRepo": "EveFlutter",
|
||||||
"status": "incubating-flutter-app",
|
"status": "tagged-owner-release",
|
||||||
"evidencePaths": [
|
"evidencePaths": [
|
||||||
"pubspec.yaml",
|
"pubspec.yaml",
|
||||||
"README.md"
|
"README.md",
|
||||||
|
".github/workflows/runtime.yml"
|
||||||
],
|
],
|
||||||
"pendingProofs": [
|
"pendingProofs": []
|
||||||
"Tagged EveFlutter release is cut from EveFlutter rather than Eve incubation."
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"test": {
|
"test": {
|
||||||
"ownerRepo": "EveFlutter",
|
"ownerRepo": "EveFlutter",
|
||||||
|
|
@ -30,27 +29,23 @@
|
||||||
"evidencePaths": [
|
"evidencePaths": [
|
||||||
"lib/main.dart",
|
"lib/main.dart",
|
||||||
"test/parity_smoke_test.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": [
|
"pendingProofs": []
|
||||||
"Tagged EveFlutter release runs owner-repo tests."
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"capture": {
|
"capture": {
|
||||||
"ownerRepo": "EveFlutter",
|
"ownerRepo": "EveFlutter",
|
||||||
"status": "windows-linux-android-capture-smokes",
|
"status": "owner-golden-and-native-capture-runners",
|
||||||
"evidencePaths": [
|
"evidencePaths": [
|
||||||
"scripts/capture-flutter-parity.ps1",
|
"scripts/capture-flutter-parity.ps1",
|
||||||
"scripts/capture-linux-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": [
|
"pendingProofs": []
|
||||||
"Native capture witnesses are attached from EveFlutter on each supported platform."
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"remainingSplitBlockers": [
|
"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."
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Reference in a new issue