span: derive held time from paired source records #22

Merged
PerishFire merged 1 commit from land/locus-span-derivation into main 2026-08-15 06:50:50 +00:00
Owner

span: derive held time from paired source records

An entering source record and its returning record are two atomic facts; the
elapsed time between them is a downstream derivation, and every consumer wrote
that pairing by hand. Worse, each rebuilt nesting from interval containment to
recover held time, an assumption that holds under a single thread and fails
silently anywhere else.

locus span pairs the two edges and reports elapsed and held time for each
traced declaration. Containment inside one trace is the only nesting evidence
the records carry, so spans that overlap without nesting refuse the whole
derivation rather than dividing a duration the stream cannot apportion. A span
that entered and never returned is named instead of dropped, because panic,
abort, cancellation, and process loss are the cases worth reading.

The substrate keeps its laws: no parent role, no lifecycle, no attribution, and
no product vocabulary. Advance the Plumb lock to 0.19.0.

Co-Authored-By: Claude Opus 5 (1M context) noreply@anthropic.com

span: derive held time from paired source records An entering source record and its returning record are two atomic facts; the elapsed time between them is a downstream derivation, and every consumer wrote that pairing by hand. Worse, each rebuilt nesting from interval containment to recover held time, an assumption that holds under a single thread and fails silently anywhere else. `locus span` pairs the two edges and reports elapsed and held time for each traced declaration. Containment inside one trace is the only nesting evidence the records carry, so spans that overlap without nesting refuse the whole derivation rather than dividing a duration the stream cannot apportion. A span that entered and never returned is named instead of dropped, because panic, abort, cancellation, and process loss are the cases worth reading. The substrate keeps its laws: no parent role, no lifecycle, no attribution, and no product vocabulary. Advance the Plumb lock to 0.19.0. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
span: derive held time from paired source records
All checks were successful
guard / guard (pull_request) Successful in 57s
guard / guard (push) Successful in 1m25s
cd07f7f045
span: derive held time from paired source records

An entering source record and its returning record are two atomic facts; the
elapsed time between them is a downstream derivation, and every consumer wrote
that pairing by hand. Worse, each rebuilt nesting from interval containment to
recover held time, an assumption that holds under a single thread and fails
silently anywhere else.

`locus span` pairs the two edges and reports elapsed and held time for each
traced declaration. Containment inside one trace is the only nesting evidence
the records carry, so spans that overlap without nesting refuse the whole
derivation rather than dividing a duration the stream cannot apportion. A span
that entered and never returned is named instead of dropped, because panic,
abort, cancellation, and process loss are the cases worth reading.

The substrate keeps its laws: no parent role, no lifecycle, no attribution, and
no product vocabulary. Advance the Plumb lock to 0.19.0.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

Land-Source: locus-span-derivation@924f169d8c1c35d3305c38b5cb940edece96cb8c
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
PerishLab/locus!22
No description provided.