[Feature Request] Standardize execution receipts, state transitions, and artifact lineage
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
Research direction
Start by reading unilabos/ros/device_node_wrapper.py:36-40, unilabos/devices/hplc/AgilentHPLC.py:124-226, and the executor paths at unilabos/devices/workstation/workflow_executors.py:245-279 and :454-470. Compare their result handling with the existing Task/Job restart and recovery model. Done means a versioned common receipt covers the listed states, lineage, failures, and recovery cases, with tests for partial execution, timeout, retry, missing artifacts, and success.
Written by the indexing model from the issue text.
Description
Problem
Execution results do not have a common receipt linking requested parameters, resolved resources, device acknowledgements, telemetry, raw files, parsers, and derived results.
Concrete code evidence
unilabos/ros/device_node_wrapper.py:36-40forwards device method calls but exposes no common run/attempt/artifact receipt.unilabos/devices/hplc/AgilentHPLC.py:124-226has device-specificstart_sequence,check_status, andget_data_filemethods with a local result shape.unilabos/devices/workstation/workflow_executors.py:245-279reduces workflow execution to boolean success/failure in one executor path.unilabos/devices/workstation/workflow_executors.py:454-470similarly collapses a liquid transfer result into a boolean.
Design gap
The current return values cannot consistently distinguish:
command accepted
execution started
execution completed
measurement acquired
raw artifact saved
artifact parsed
QC passed
They also do not provide a uniform lineage from sample/method/resource to raw and derived data.
Proposed receipt
Define a versioned receipt containing:
- run and attempt IDs;
- method and capability versions;
- requested parameters and resolved bindings;
- resource snapshot and reservation/claim IDs;
- state transitions and timestamps;
- device acknowledgements and telemetry references;
- raw artifact paths, media types, and checksums;
- parser/analysis job versions and result references;
- typed failure, blocked, unsupported, and human-confirmation outcomes.
Acceptance criteria
- Every protocol run can emit a common receipt without device-specific fields being required.
- Receipts distinguish planning, execution, measurement, artifact, parsing, QC, failure, and recovery states.
- Raw artifacts are immutable references with sample/method/run lineage and checksums.
- Receipts integrate with the existing Task/Job restart and recovery model.
- Tests cover partial execution, timeout, retry, missing artifact, and successful completion.
- Dominant language
- Python
- Stars
- 186
- Forks
- 79
- Avg merge
- 1h 2m
- Merged PRs (30d)
- 29
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from deepmodeling/Uni-Lab-OS
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
deepmodeling/Uni-Lab-OS#326 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 5/5 Over a week Newbie friendliness 25/100
deepmodeling/Uni-Lab-OS#325 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
deepmodeling/Uni-Lab-OS#324 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
deepmodeling/Uni-Lab-OS#323 · 1 comment ·
Maintainers usually reply within 1 day
-
[Workflow] Phase 02H:实现 Task input preflight 与 Handle bindingMay be free again @TablewareBox claimed this 103 days ago, and no pull request is open. Open
deepmodeling/Uni-Lab-OS#301 · 1 comment · 1 assignee ·
Maintainers usually reply within 1 day
All issues in deepmodeling/Uni-Lab-OS
Similar issues
-
documentation good first issue priority: P2 status: ready
Difficulty 1/5 Under an hour Newbie friendliness 88/100
RhinoLink-Tech/data-fabric#500 ·
Maintainers usually reply within 1 day
-
backlog
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
EchoTools/nevr-runtime#2384 ·
Maintainers usually reply within 1 day
-
[Bug]: The H2 series' and the H3C's fan 3 is labelled "Chamber Fan", Bambu calls it the exhaust fanOpenarea:ui
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
btclib-org/btclib#3062 ·
Maintainers usually reply within 1 day
-
area:evals area:infra enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
jse-avl/support-bot#4 · 1 comment ·