protein-expression-workbook-intake
Open protein_expression.xlsx, freeze the live Task and Data sheet surface (target proteins in rows 11-20, sample headers in row 10, group labels in row 9, statistics rows 24-27, fold-change rows 32-41), take the pre-edit reference copy, and triage the adjacent files before any cell is written.
- License 许可
- MIT
- 最近更新
- 2026-09-30
- Stars
- ★ 1
- Forks
- 0
01 前言 Front Matter
- name
- protein-expression-workbook-intake
- description
- Open protein_expression.xlsx, freeze the live Task and Data sheet surface (target proteins in rows 11-20, sample headers in row 10, group labels in row 9, statistics rows 24-27, fold-change rows 32-41), take the pre-edit reference copy, and triage the adjacent files before any cell is written.
03 SKILL.md 正文
Protein Expression Workbook Intake
Start here for protein_expression.xlsx. The workbook is edited in place, so the Task sheet
surface has to be read once and recorded before anything is written to it. Every later stage
works from the recorded surface rather than re-guessing row numbers.
This stage writes no Task-sheet cell and no formula.
Inputs
protein_expression.xlsx
Outputs
protein_expression_baseline.xlsx— byte copy of the untouched workbookpex_workflow/workbook_layout_checkpoint.jsonpex_workflow/side_file_intake.json
What to freeze
Read the Task sheet and record the handles the rest of the workflow needs:
task_target_rows— the 10 protein IDs in A11:A20 with their gene symbols, the statistics column each one owns in row 24-27 (B for row 11, C for row 12, … K for row 20), and the fold-change row each one owns in 32-41task_sample_columns— the 10 sample names in C10:L10 with the group label above each one in row 9task_expression_block,task_statistics_block,task_fold_change_blocktask_fold_change_headers— read C31 and D31 rather than assuming an order; the header row is the authority for which column takes Fold Change and which takes Log2 FC
Then read the Data sheet and record where the lookup ranges actually start: the protein IDs
live in column A from row 2, the sample headers in row 1, and the expression values begin at
the first column whose header matches a Task sample name (the leading columns are
Protein_ID, Gene_Symbol and Description).
Do not serialize the full 200 × 50 value grid here. That extraction belongs to the next stage.
The pre-edit reference copy
Because the deliverable and the source are the same file, copy the untouched workbook to
protein_expression_baseline.xlsx before any write happens. Its only job is to hold the
pre-edit Data-sheet values until they have been extracted into a structured basis.
Record it in pex_workflow/side_file_intake.json with:
retention_class: retention_review_required— it is a working reference, not a permanent archive, and the next stage owns the reviewreview_owner: protein-expression-matrix-basis
protein_expression.xlsx itself is listed under primary_deliverable with
retention_class: protected. It is never a cleanup target at any point in this workflow.
Run
python3 skills/protein-expression-workbook-intake/scripts/observe_workbook_surface.py
Verification
pex_workflow/workbook_layout_checkpoint.jsonresolves 10 target proteins and 10 samples, and the group labels split into Control and Treated.pex_workflow/side_file_intake.jsonclassifiesprotein_expression_baseline.xlsxasretention_review_requiredandprotein_expression.xlsxasprotected.- The Task sheet is unchanged.
Stop condition
Stop once the checkpoint and the intake record exist. Do not write lookup formulas, statistics
or fold changes here. Next: protein-expression-matrix-basis.
Count-Study Continuation
After this stage's local outputs are complete, read the protein-expression-matrix-basis skill before continuing. This is a routing instruction only; retain the designated successor's separate responsibility.
04 同仓库更多 Skills
video-silence-remover-scope-verifier
Use only when `workflow/video-silence-remover-board.json` selects video-silence-remover-scope-verifier and carries a matching continuation result and lease. Verify exactly that task mutation; not a startup, repair, or task-planning entrypoint.
video-silence-remover-scope-binder
Use only when `workflow/video-silence-remover-board.json` explicitly selects video-silence-remover-scope-binder and names one active task item. Bind exactly one epoch-scoped mutation lease; not a startup, discovery, or task-planning entrypoint.
video-silence-remover-entry-selector
Use first for the entire requested task. Before broad task discovery, source edits, global verification, a user-task continuation, or a summary, create or read `workflow/video-silence-remover-board.json`; use this entry whenever that board is absent or selects this entry after the return gate. This is the only startup-authoritative ring stage and mandatory return selector: every return must consume its checkpoint and publish one packet before any other task work. Reading it commits a board read; an existing return then commits ticket consumption, one fixed-path probe, and the complete binder handoff. The persistent board forbids cleanup and final response.
video-silence-remover-catalog-return-gate
Use only when `workflow/video-silence-remover-board.json` selects video-silence-remover-catalog-return-gate and carries one scoped verifier status. Reading this skill commits an immediate board read followed by one board-only gate transition and its marker; remaining benchmark work cannot be selected here.
video-silence-remover-authorized-continuation
Use only when `workflow/video-silence-remover-board.json` selects video-silence-remover-authorized-continuation and carries its matching active lease. Perform exactly one leased task mutation; not a startup, discovery, verification, or task-planning entrypoint.
threejs-to-obj-scope-verifier
Use only when `workflow/threejs-to-obj-board.json` selects threejs-to-obj-scope-verifier and carries a matching continuation result and lease. Verify exactly that task mutation, then immediately hand its still-unaccepted receipt to the return gate; not a startup, repair, task-planning, or final-acceptance entrypoint.