Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -72,11 +72,13 @@ jobs:
run: dotnet .\artifacts\tests\isolated-out\LabelingApplication.Tests.dll --release-package-contract

- name: Upload versioned win-x64 release
if: github.event_name != 'pull_request'
uses: actions/upload-artifact@v4
with:
name: openvisionlab-labeling-studio-0.1.0-win-x64
path: artifacts/publish/Release/win-x64/0.1.0
if-no-files-found: error
retention-days: 1

- name: Whitespace check
shell: pwsh
Expand Down
6 changes: 5 additions & 1 deletion docs/CI_COMPLETE_REGRESSION_GATE_20260801.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,11 @@ hosted GitHub Actions run has passed before the change is committed and pushed.
- concurrency: one invocation in the CI job;
- timeout: 15 minutes;
- order: build and documentation checks, complete regression, release publish,
package verification, artifact upload;
package verification, then artifact upload for `main` pushes and manual
dispatches only;
- Artifact retention: pull-request validation deliberately skips the package
upload; `main`/manual package artifacts expire after one day. Package build
and hash-contract verification still run for every trigger.
- CI environment storage: use the hosted runner's isolated available storage;
the workstation-only D-drive routing rule does not block CI.

Expand Down
4 changes: 2 additions & 2 deletions docs/CURRENT_PRODUCT_STATUS.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Current Product Status

Last updated: 2026-08-19 KST
Last updated: 2026-08-21 KST

This document is the single current source of truth for product identity,
verified maturity, the active development priority, and the boundary between
Expand Down Expand Up @@ -105,7 +105,7 @@ operability.
| PatchCore anomaly pilot, heatmap review, same-split comparison, error worklist, and exact-content leakage preflight | Complete for the bounded local workflow | Normal-only learning, image decision, raw score/threshold, review-only localization, matching-fingerprint comparison, bounded image-level outcome review, and pre-worker split/class exact-leakage blocking are implemented; field quality and location accuracy require approved external evidence |
| Workstation theme policy | Complete | The theme selector is hidden and legacy/internal light-theme requests resolve to the supported dark palette; do not reopen multi-theme work without an explicit product-direction change |
| Headless product CLI | Complete for the first read-only environment command | `--environment-self-test --json` emits structured status and bounded exit codes without WPF or durable writes; batch inference/training/archive/label operations are not CLI contracts |
| CI build/docs/full-regression/release-artifact gates | Complete for the repository workflow contract | The complete suite runs once with a 15-minute timeout; hosted GitHub success requires a pushed run |
| CI build/docs/full-regression/release-artifact gates | Complete for the repository workflow contract | The complete suite runs once with a 15-minute timeout; all triggers build and verify the package, while Artifact upload is limited to `main`/manual runs with one-day retention; hosted GitHub success requires a pushed run |
| Independent production accuracy, long-run stability, and takt time | Blocked by external evidence | Requires approved, provenance-confirmed field data and intended hardware/runtime |

## 5. Protected Completed Areas
Expand Down
2 changes: 2 additions & 0 deletions tests/LabelingApplication.Tests/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -25787,6 +25787,8 @@ private static void TestPriorityWorkflowDocuments()
AssertTrue(ciWorkflow.Contains("timeout-minutes: 15", StringComparison.Ordinal), "CI complete regression should have a bounded timeout");
AssertTrue(ciWorkflow.Contains("--release-package-contract", StringComparison.Ordinal), "CI workflow should run the release package contract");
AssertTrue(ciWorkflow.Contains("actions/upload-artifact@v4", StringComparison.Ordinal), "CI workflow should upload the verified release package");
AssertTrue(ciWorkflow.Contains("if: github.event_name != 'pull_request'", StringComparison.Ordinal), "CI should not retain release package artifacts for pull request validation");
AssertTrue(ciWorkflow.Contains("retention-days: 1", StringComparison.Ordinal), "CI release package artifacts should have one-day retention");
AssertTrue(appProject.Contains("dll\\OpenVisionLab.Core.dll", StringComparison.Ordinal), "app project should reference OpenVisionLab.Core by checked-in SDK DLL");
AssertTrue(appProject.Contains("dll\\OpenVisionLab.Vision2D.dll", StringComparison.Ordinal), "app project should reference OpenVisionLab.Vision2D by checked-in SDK DLL");
AssertTrue(!appProject.Contains("OpenCvSharp.Blob", StringComparison.Ordinal), "app project should not reference the unused SDK Blob dependency");
Expand Down
Loading