ReviewOS

reviewos/reviewos.org

Retain automatic artifacts from every matrix job without name collisions

#13
Closed chris opened this 3 days ago ·
3 days ago

The full and legacy LSU checkout matrix jobs publish the same automatic evidence paths. In actual run 2210, job 6367 stored storage/logs/lsu-native-ci/preview.log; job 6368 then received HTTP 409 publishing its different preview log. The completed workspace was correctly retired, leaving the second preview-readiness failure without its own diagnostic.

Keep run/name/content immutability. Scope automatic collected names to their producing job, retain stable identity for long paths, and preserve ordinary explicitly named uploads. Downloads by the original path should continue when unique; ambiguous matrix paths need an explicit producing job, without crossing the job credential's run. A job must not reserve another producer's generated namespace.

The real runner/HTTP regression on disposable PostgreSQL reproduces the loss: two matrix jobs complete but only one report is listed/downloadable. The first source correction retains both different reports. Additional real route regressions cover unqualified compatibility, ambiguity and explicit selection, plus a foreign-run producer.

Complete source verification, the normal controller and standalone runner rollout, and fresh matrix evidence. Do not rename HQ's workflow artifacts as an application workaround, remove immutability, or extend the preview readiness timeout without the actual diagnostic.

Related: https://github.com/stacksjs/hq.training/issues/376 and https://github.com/stacksjs/hq.training/issues/346.

3 days ago

Source fix pushed to main: https://github.com/ReviewOS/reviewos.org/commit/59e5288b076bc38ff7147476e32611af68f9266b. Automatic files now retain the producing job in their names; explicit uploads preserve immutable run-wide names. Downloads by original path remain compatible when unique, with an optional producing job selector for ambiguous matrix paths. Cross-run producer selection and uploads into another job namespace are rejected.

Real disposable PostgreSQL verification passed the five artifact/environment/runner suites, including collecting both matrix files and downloading both through the generated command. Full type checking and Pickier (3572 files, zero findings) passed. The normally compiled macOS ARM64 standalone runner also passed its actual preload/dotenv credential-isolation test (21 assertions).

Normal source CI and controller deployment are running at https://github.com/ReviewOS/reviewos.org/actions/runs/41094092816. Upgrade order is controller first, then graceful Mac runner drain and replacement using its existing registration. This issue remains open until deployment and fresh matrix evidence confirm the rollout. Native checkout evidence is tracked at /stacks/hq.training/issues/376.

3 days ago

Full source CI passed: PostgreSQL 7022 tests (2 skips), MySQL 7008 tests (16 skips), zero failures; lint/types/compile/microvm checks also passed. Deployment correctly refused activation when the required old-SDK SQL backup filled the volume. The known incomplete output was safely retired, and two completed backups were compressed with decoded SHA-256, permissions, ownership, timestamp and security-attribute verification. Completed backup data is preserved; about 69 GB was recovered.

The normal failed deployment was retried once. It currently waits behind a storage apply operation that is waiting for an active host backup. The old 87d51a8 controller continues serving. The prepared, verified new Mac runner has not replaced an active worker.

The maintained cloud package is now adopted in https://github.com/ReviewOS/reviewos.org/commit/925b713bc0f644abd3ec6fcc6e965b2fdfe03b53. Permanent compressed-backup SDK adoption and normal rollout are tracked in /reviewos/reviewos.org/issues/14. This artifact issue remains open until live controller/runner activation and fresh matrix retention are proved.

15 hours ago

The shared artifact fix and its normal controller/runner rollout are verified. ReviewOS web/API and the standalone Mac runner are on 3e057f9; exact-source CI passed at https://github.com/ReviewOS/reviewos.org/actions/runs/41359311675. Dependency/backup rollout is complete in /reviewos/reviewos.org/issues/14.

Fresh production-controller evidence now exists from HQ repository run 2517 at source 4d1de6e. Both checkout matrix jobs 7001 and 7002 succeeded and retained their different automatic storage/logs/enterprise-native-ci/preview.log contents:

JobArtifactBytesSHA-256
7001job-7001-storage-logs-enterprise-native-ci-preview.log1544291c4ea31f8463e69aaf6897408ceb59ff6c0d52cc400ed068760e4e89ba0de9be
7002job-7002-storage-logs-enterprise-native-ci-preview.log272818b53c0dc43ac38b7791ea7ba0aef75edd08f206f7ce32067abda5d9976b0411dd

Both artifacts were downloaded through the live controller’s normal artifact reader and independently SHA-256 checked. Their CI evidence and checkout verification JSON files were also downloaded and hash checked. The producing jobs share one matrix run and original path; neither displaced the other’s bytes or required HQ-specific artifact renaming.

This completes the source verification, maintained deployment/runner rollout and fresh matrix evidence required by this ticket. Native checkout and the wider enterprise launch remain tracked separately in /stacks/hq.training/issues/376 and /stacks/hq.training/issues/346.

Sign in to comment on this issue.