Repository navigation
Record the execution context declared by the computation library - #4
Merged
Merged
Conversation
The recorder kept only the global options and the metadata read from the description of a call given by the computation library (describe_call). Other rules a computation depends on could not be recorded, so that a replay could not check them. The entries of the optional "context" mapping of the description are now recorded, as plain data, in the execution context of the activity, before the options and metadata digests computed by the recorder. A replay already passes the whole recorded context back to the library (prepare_execution), which checks it. Descriptions without such a mapping (current Sigima releases) record nothing more; the ledger schema is unchanged. Sigima uses it to record the convention selecting image pixels in regions of interest, so that activities recorded with an earlier convention are refused explicitly (unsupported_context) instead of being reported as different. Closes #3 Assisted-by: Claude Opus 5.5
This was referenced Oct 25, 2026
PierreRaybaut
added a commit
to DataLab-Platform/web
that referenced
this pull request
Oct 25, 2026
The Sigima snapshot declares the ROI pixel convention in the execution context of image computations: pin DataLab-Capsule to the development commit recording it (DataLab-Platform/DataLab-Capsule#4), since 0.1.0 does not and refuses such replays. The e2e families test now expects activities recorded with an older contract version to be refused. Refs #68 Assisted-by: Claude Opus 5.5
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #3
Summary
The recorder now keeps, in the execution context of an activity, the entries of the optional
contextmapping returned by the computation library'sdescribe_call(rules the computation depends on, as plain data). A replay already passes the whole recorded context back toprepare_execution, so the library can refuse an activity recorded without a rule it requires, or with an unknown one (unsupported_context).recorder._build_call: declared entries first (deep copy), then the options and metadata digests computed by the recorder.contextin their descriptions); no ledger schema change (contextis a free object).doc/rules.md(execution context),doc/api.md(recorder),CHANGELOG.md.Prerequisite of the Sigima change recording the image ROI pixel convention (Sigima 1.4 selects ROI pixels by their centers): activities recorded with Sigima 1.3 will be refused explicitly instead of being reported as
different.Tests
New
test_context_declared_by_the_library(fails ondevelop): the declared rule is recorded, passed back toprepare_executionfor a replay, the verification is exact, and a description without context records nothing more. Full suite: 370 passed.