forked from Manuel/meeting-assistant
ci: consolidate platform pipelines and test prerequisites on macOS support
This commit is contained in:
1 parent
1b19b08f2e
commit
728e66dd72
76 files changed
+7477
-239
No files matched your search
@@ -0,0 +1,23 @@
|
||||
# Windows platform acceptance
|
||||
|
||||
The Windows crop checks use the existing Windows test target. Runtime acceptance is separate from the normal macOS cross-build already recorded by Ticket 01. Use `docs/platform-test-verification.md` for the complete build, discovery, execution and verifier commands; every command must succeed, and a Windows RID alone is insufficient. Operational ASR/backend acceptance remains separate from these pipeline checks.
|
||||
|
||||
## Target and native crop evidence
|
||||
|
||||
Run the actual `net10.0-windows10.0.19041.0` test target on Windows or a demonstrated compatible Wine runtime. Keep the SDK/runtime and Wine version, source revision/content manifest, complete build logs, discovery, TRX and verifier output together. The existing Gitea jobs collect those artifacts separately from the portable target.
|
||||
|
||||
The Windows verifier requires the five existing Outlook cases, both Windows runtime checks, the passed application-composition guard and these three additional cases:
|
||||
|
||||
- `WindowsScreenshotImageCropperTests.WindowsCropUsesOcrPixelCoordinates`
|
||||
- `WindowsScreenshotImageCropperTests.WindowsCropPreservesExpectedPixelsAtNonzeroOrigin`
|
||||
- `WindowsScreenshotImageCropperTests.WindowsCropRejectsInvalidBounds`
|
||||
|
||||
These tests resolve `IScreenshotImageCropper` from the Windows application factory, assert its real Windows implementation, and call `SaveCroppedScreenshotAsync`. The isolated factory suppresses background activities but preserves the production registrations. No capture permission, Outlook instance, OCR service or credential is needed. A 4×3 opaque PNG encodes a different color at every coordinate. Each valid crop checks every pixel and exact dimensions: 2×2 at (0,0) and 3×2 at (1,1), reaching the right and bottom boundaries. Invalid cases cover negative origins, zero/negative sizes, entirely outside origins and partially overflowing bounds. Each must throw the existing `InvalidDataException` and leave no crop file.
|
||||
|
||||
Each case records runtime, host, architecture and registered cropper in its TRX output. Portable compilation excludes these cases. Their compilation on macOS is preparation, not a native pixel pass. Synthetic verifier fixtures exercise evidence rejection only.
|
||||
|
||||
## CI observation and acceptance states
|
||||
|
||||
Observe an external run for the tested content, including both explicit-target jobs, named discovery, TRX, build logs, verifier outcome and two separate uploaded artifacts. Record run URL, revision and job outcomes. A run for an older revision, a workflow file, a cached status, or synthetic artifact checks cannot satisfy this row. An implementation request alone does not authorize publishing uncommitted prerequisites to trigger CI.
|
||||
|
||||
Use only `passed`, `failed`, `open — not executed with reason`, or `not configured/disabled — no pass` per host/profile/backend/model/operation row. Preserve the dated 602-pass and 639-pass portable baselines in their original evidence. Derive current totals from current TRX. Supplement the existing OpenSpec owners with the new evidence link; do not rewrite Ticket 01 or communication Task 4.2/4.4.
|
||||
Reference in new issue
Block a user