Skip to content

Add reproducible assay handoff bundles - #75

Open
dnncha wants to merge 1 commit into
mainfrom
codex/lab-handoff-v022
Open

Add reproducible assay handoff bundles#75
dnncha wants to merge 1 commit into
mainfrom
codex/lab-handoff-v022

Conversation

@dnncha

@dnncha dnncha commented Jul 25, 2026

Copy link
Copy Markdown
Owner

Summary

Adds dotmatch assay handoff assay.toml for completed AssaySpec runs. The command creates a review-sized bundle containing configuration, reports, QC outputs, methods, citation material, and SHA-256 records for declared inputs and copied outputs. It deliberately excludes raw FASTQ files.

Adds a lab evaluation guide and documents the command from the README, getting-started path, first-run tutorial, AssaySpec reference, and command reference.

The package verifier now exercises the handoff command from clean sdist and wheel installs and verifies each copied review-file checksum.

Validation

  • PYTHONPATH=python python3 -m pytest python/tests/test_assayspec.py python/tests/test_public_language_guardrail.py -q (69 passed)
  • make repository-ready
  • make python-package-test
  • git diff --check

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: e35776b706

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

{
"role": role,
"declared_path": declared,
"sha256": _sha256_file(path),

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Record input hashes during the assay run

If a target table or FASTQ is replaced or edited between assay run and assay handoff, this hashes the post-run bytes and records them as the declared inputs even though the copied counts and reports were produced from the earlier bytes. The resulting bundle looks internally valid but cannot establish which data produced the results; capture the hashes in the run manifest and have handoff reuse or verify those run-time hashes.

Useful? React with 👍 / 👎.

Comment on lines +2178 to +2180
"counts",
"sample_qc",
"summary",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Include pair-count artifacts in handoff bundles

For mode = "pair-count", _compile_pair registers the primary artifacts under pair_counts and pair_summary, but this allowlist only looks for counts and summary. Consequently a successful pair-count handoff silently omits both pair_counts.tsv and pair_summary.json from review/ and review_files, leaving the review bundle without its primary result.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant