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
43 changes: 43 additions & 0 deletions docs/validation/publisher-admission-031-20261002/CLEANUP.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
Owned disposable artifact closure
=================================

Owner-authorised closure after publication and actual-byte proof archival.
Status: COMPLETE after docs-only PR22 became visible. Exact rm exited0;
all four targets were subsequently checked absent. No worktree was removed.

Exact completed synthetic-test targets below
/home/ts/wt/polystore-publisher-admission-031-20261002/docs/validation/publisher-admission-031-20261002/:

* source-test-temp:466944 allocated bytes.
* admission-test-temp:20480 allocated bytes.
* qualified-test-temp:483328 allocated bytes.

Exact single public-wheel verification scratch:
/home/ts/.cache/agent-scratch/polystore-031-byte-proof-20261002.t9WrHD:
163840 allocated bytes.

Total removed allocated bytes1134592 (1.08MiB); this is the du measured amount,
not a claim about system-wide df movement. Targets are exact real directories,
not worktrees, environments, Git backing stores or scientific result roots.
All selected source-test runs completed PASS; their XML/command/resource
evidence is outside these directories. Contents are reconstructable synthetic
unit fixtures, two local editable test wheels and one fetched public wheel.
The published wheel bytes passed the independently archived hash/length check.

No tracked files, .git directories, .pth files or alternates were found inside
the targets. Pytest current symlinks point inside the same disposable roots;
removal does not follow symlinks. Process inspection found only the inspection
shell, not active source tests. Recursive lsof found no open files in any target.

Preserved: all source, worktree/Git/branch metadata, both original publisher
logs (including lossless archived copies), raw metadata, test reports,
actual-byte proof, original native journal link, failed/uncertain external
inputs and every biological/scientific artifact. No other tree is in scope.

Removed synthetic fixtures are reproducible from the unchanged tests; public
wheel bytes remain available from the recorded release URL and digest. These
disposable directories were deleted, not moved to trash. Both preserved gzip
log archives were rehashed afterwards: original failed job
542d75ef00bcd8677526131a1afe195cea6fa63edca7eca5aa8e0b1b4e4b703c,
original successful job
cd1723ac96587309e23dec9144476c0219ae2b2124b0e3c084fe701a8fedfa49.
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
PUBLIC_WHEEL_ACTUAL_BYTE_VERIFICATION

Artifact: polystore-0.3.1-py3-none-any.whl
Expected bytes: 157342
Expected SHA256: d1c81414f9b5ec1373a68a41bf704ec76c4b1f60a1ea0f00bb031bc8ae264e50

Retained lookup: no exact public wheel found by filename under /home/ts/wt,
/home/ts/.cache/agent-scratch, /home/ts/.cache/uv or /home/ts/.cache/pip.
The two local 0.editable wheels were rejected as different artifacts.
One public fetch only; no retry/resubmit, dependency fetch, installation or import.

Fetch command:
systemd-run --user --scope --quiet -p MemoryMax=512M -p MemorySwapMax=0 -p CPUQuota=100% timeout 25s taskset -c 0 curl --fail --silent --show-error --proto '=https' --max-time 20 --max-filesize 157342 --output /home/ts/.cache/agent-scratch/polystore-031-byte-proof-20261002.t9WrHD/polystore-0.3.1-py3-none-any.whl --write-out 'http_status=%{http_code} downloaded_bytes=%{size_download} elapsed_seconds=%{time_total}\nurl=%{url_effective}\n' https://files.pythonhosted.org/packages/e1/95/19cbd9b8d4c514434471f10e143c65dfacb117088272528e52a5d6e1b664/polystore-0.3.1-py3-none-any.whl

Original fetch response:
http_status=200 downloaded_bytes=157342 elapsed_seconds=0.086730
url=https://files.pythonhosted.org/packages/e1/95/19cbd9b8d4c514434471f10e143c65dfacb117088272528e52a5d6e1b664/polystore-0.3.1-py3-none-any.whl

The first orchestration wrapper failed after the fetch because it tried to
store an absent session_id. Original HTTP200/byte result was already retained;
subsequent verification read that same completed file. Fetch was NOT replayed.

Independent local-byte command:
systemd-run --user --scope --quiet -p MemoryMax=512M -p MemorySwapMax=0 -p CPUQuota=100% timeout 10s taskset -c 0 /home/ts/wt/openhcs-generated-inputs-installed-parent-20261001/.venv/bin/python -B -c 'import hashlib, pathlib; p=pathlib.Path("/home/ts/.cache/agent-scratch/polystore-031-byte-proof-20261002.t9WrHD/polystore-0.3.1-py3-none-any.whl"); data=p.read_bytes(); digest=hashlib.sha256(data).hexdigest(); print("file="+str(p)); print("actual_bytes="+str(len(data))); print("actual_sha256="+digest); assert len(data)==157342; assert digest=="d1c81414f9b5ec1373a68a41bf704ec76c4b1f60a1ea0f00bb031bc8ae264e50"; print("ACTUAL_BYTE_CHECK=PASS")'

Independent local-byte result:
file=/home/ts/.cache/agent-scratch/polystore-031-byte-proof-20261002.t9WrHD/polystore-0.3.1-py3-none-any.whl
actual_bytes=157342
actual_sha256=d1c81414f9b5ec1373a68a41bf704ec76c4b1f60a1ea0f00bb031bc8ae264e50
ACTUAL_BYTE_CHECK=PASS

Exit code: 0

Bounds: one CPU; 512MiB cgroup; no swap; fetch max20s plus25s command wall;
max response157342B; hash read max10s. Hash computed from actual read_bytes(),
not a cached digest or metadata copy. The frozen scientific environment was
not changed; the readonly Python interpreter executed standard library only.
99 changes: 99 additions & 0 deletions docs/validation/publisher-admission-031-20261002/PUBLICATION.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
Original 0.3.1 publication attempt
=================================

Parent merged PR21 normally at f07da0971947e7b7938503961a7014909e560307.
The original release.py session36811 was resumed once by the parent and
completed. No release invocation, retag, resubmission, rerun, environment install
or scientific operation was performed by this source worker.

Exact publisher handle:
https://github.com/OpenHCSDev/PolyStore/actions/runs/36963152726
Job 110701039079, run_attempt 1, event push, created 2026-10-02T04:07:22Z.
The native gh run watch observes this handle only.

Verified remote tag objects:

* v0.3.1 annotated tag 57740a8200d27633da81a9e7a7320d5f4ebb1147,
peels to f07da0971947e7b7938503961a7014909e560307.
* Immutable failed v0.3.0 tag 282c13750e40eb96135f6c7072d2b0c540db4309,
still peels to 84f322e46871de5ed47e7fd20976ad03e533c1c4.

Initial observation: run queued, no GitHub release and PyPI 0.3.1 JSON HTTP404.
This is pending publication, not failure or artifact acceptance.

Terminal publication acceptance
-------------------------------

The SAME attempt completed SUCCESS, job start 2026-10-02T04:18:47Z,
job completion 2026-10-02T04:20:22Z. Every build/publish step passed:
editable installation, full release-candidate tests, ordinary distribution build,
immutable declaration validation, twine check, trusted PyPI publication, GitHub
release and original post-job cleanup. No attempt was resubmitted or replayed.

Actual hosted suite: 570 PASS, 5 SKIP, zero failures in 17.57s. These are the
original full publisher selection plus the two new admission tests. No source
test, assertion or skip was weakened or added to avoid the original nine reds.
Do not substitute the earlier local 572/1skip count for this hosted result.

PyPI JSON confirms version0.3.1, requires-python >=3.11, and roifile declared
only for the dev extra. Both PyPI distributions are non-yanked. GitHub release
401537625 is public/non-draft/non-prerelease, published 2026-10-02T04:20:19Z:
https://github.com/OpenHCSDev/PolyStore/releases/tag/v0.3.1
PyPI release: https://pypi.org/project/polystore/0.3.1/

Programmatic artifact metadata comparison found BOTH filename/size/SHA256
identities equal between PyPI JSON and the GitHub release assets. The original
publisher DSSE subject digests in its retained log match these same digests:

* polystore-0.3.1-py3-none-any.whl, 157342 bytes,
d1c81414f9b5ec1373a68a41bf704ec76c4b1f60a1ea0f00bb031bc8ae264e50.
* polystore-0.3.1.tar.gz, 193442 bytes,
0d1e78468581ead9c1cb13fcea0bc208ce52ba4e909bbcedf1662604be928dc7.

GitHub also retains both publish.attestation assets. Workflow artifact inventory
is empty; these are actual GitHub RELEASE assets, not nonexistent Actions
artifact uploads. The initial publication check established metadata agreement
only. The subsequent bounded actual-byte verification below extends that proof;
neither check establishes fresh installed execution or biological acceptance.

Full successful job log fetched through original GitHub SDK and archived
losslessly in original-job-110701039079.log.gz. Decoded original bytes169009,
including BOM/final newline, SHA256
cd1723ac96587309e23dec9144476c0219ae2b2124b0e3c084fe701a8fedfa49.
Raw terminal-run, GitHub-release, PyPI and workflow-artifact JSON replies are
archived alongside it. The v0.3.0/v0.3.1 tag object identities were checked
again after successful publication and remained unchanged.

Publication blocker is closed. The previously recorded offline uv.lock
limitation remains separate and unchanged; this publisher does not use it.

Independent public-wheel byte verification
-----------------------------------------

After the owner authorised one157KB public fetch, no retained exact public wheel
was found under the worktrees, agent scratch or uv/pip caches. Existing local
editable wheels were not substituted for the published artifact. One HTTPS fetch
of the original PyPI wheel URL completed HTTP200 in0.086730s,157342bytes.
An independent local file read and SHA256 calculation asserted:

* Actual length157342bytes.
* Actual digest
d1c81414f9b5ec1373a68a41bf704ec76c4b1f60a1ea0f00bb031bc8ae264e50.

Both expected identities matched, exit0. PUBLIC-WHEEL-BYTE-PROOF.txt retains
the original command/results and bounds: oneCPU/512MiB, fetch20s(max25s wall),
response maximum157342B, hash10s. No package installation/import, environment
creation, source change, native/science run or dependency download occurred.
The sdist remains metadata-agreement-only; its bytes were not independently
downloaded/hashed. The wheel byte check does not imply installed acceptance.

The completed original synthetic-test scratch and single public-wheel scratch
are closed after proof archival; CLEANUP.rst records the exact targets/results.
Both original publisher logs, compressed evidence, source, branch history and
native journal remain preserved.

The original append-only tool-call authority is linked at
/home/ts/wt/openhcs-issue-batch-20260929/agent-audit-20261002/Dewey/native-session.jsonl.
The existing link resolves to the original Codex session journal; it has not
been copied, edited or replaced. Source/publication work has no microscopy
screenshot claim. Original failed 0.3.0 publisher logs remain preserved.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"url":"https://api.github.com/repos/OpenHCSDev/PolyStore/releases/401537625","assets_url":"https://api.github.com/repos/OpenHCSDev/PolyStore/releases/401537625/assets","upload_url":"https://uploads.github.com/repos/OpenHCSDev/PolyStore/releases/401537625/assets{?name,label}","html_url":"https://github.com/OpenHCSDev/PolyStore/releases/tag/v0.3.1","id":401537625,"author":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"node_id":"RE_kwDOQ4ptws4X7vpZ","tag_name":"v0.3.1","target_commitish":"main","name":"v0.3.1","draft":false,"immutable":false,"prerelease":false,"created_at":"2026-10-02T04:07:19Z","updated_at":"2026-10-02T04:20:19Z","published_at":"2026-10-02T04:20:19Z","assets":[{"url":"https://api.github.com/repos/OpenHCSDev/PolyStore/releases/assets/604786538","id":604786538,"node_id":"RA_kwDOQ4ptws4kDE9q","name":"polystore-0.3.1-py3-none-any.whl","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":157342,"digest":"sha256:d1c81414f9b5ec1373a68a41bf704ec76c4b1f60a1ea0f00bb031bc8ae264e50","download_count":0,"created_at":"2026-10-02T04:20:18Z","updated_at":"2026-10-02T04:20:18Z","browser_download_url":"https://github.com/OpenHCSDev/PolyStore/releases/download/v0.3.1/polystore-0.3.1-py3-none-any.whl"},{"url":"https://api.github.com/repos/OpenHCSDev/PolyStore/releases/assets/604786536","id":604786536,"node_id":"RA_kwDOQ4ptws4kDE9o","name":"polystore-0.3.1-py3-none-any.whl.publish.attestation","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":9656,"digest":"sha256:fd72367cd42fb01d43e44bafbbc67228a2d2914ca0c7803caca87d9f560c2e0f","download_count":0,"created_at":"2026-10-02T04:20:18Z","updated_at":"2026-10-02T04:20:18Z","browser_download_url":"https://github.com/OpenHCSDev/PolyStore/releases/download/v0.3.1/polystore-0.3.1-py3-none-any.whl.publish.attestation"},{"url":"https://api.github.com/repos/OpenHCSDev/PolyStore/releases/assets/604786537","id":604786537,"node_id":"RA_kwDOQ4ptws4kDE9p","name":"polystore-0.3.1.tar.gz","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/gzip","state":"uploaded","size":193442,"digest":"sha256:0d1e78468581ead9c1cb13fcea0bc208ce52ba4e909bbcedf1662604be928dc7","download_count":0,"created_at":"2026-10-02T04:20:18Z","updated_at":"2026-10-02T04:20:18Z","browser_download_url":"https://github.com/OpenHCSDev/PolyStore/releases/download/v0.3.1/polystore-0.3.1.tar.gz"},{"url":"https://api.github.com/repos/OpenHCSDev/PolyStore/releases/assets/604786534","id":604786534,"node_id":"RA_kwDOQ4ptws4kDE9m","name":"polystore-0.3.1.tar.gz.publish.attestation","label":"","uploader":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"content_type":"application/octet-stream","state":"uploaded","size":9550,"digest":"sha256:616ccdba1ce15293b9af97c593c16d3cf486644987abefe0fc1f3eae83a84a44","download_count":0,"created_at":"2026-10-02T04:20:18Z","updated_at":"2026-10-02T04:20:18Z","browser_download_url":"https://github.com/OpenHCSDev/PolyStore/releases/download/v0.3.1/polystore-0.3.1.tar.gz.publish.attestation"}],"tarball_url":"https://api.github.com/repos/OpenHCSDev/PolyStore/tarball/v0.3.1","zipball_url":"https://api.github.com/repos/OpenHCSDev/PolyStore/zipball/v0.3.1","body":"## What's Changed\n* Fix publisher checkout admission and ROI test dependencies for 0.3.1 by @trissim in https://github.com/OpenHCSDev/PolyStore/pull/21\n\n\n**Full Changelog**: https://github.com/OpenHCSDev/PolyStore/compare/v0.3.0...v0.3.1","mentions_count":1}
Binary file not shown.
Loading
Loading