Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .agents/skills/atlas/assets/seed/catalog.json

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"citations":[{"path":"tools/learn-01-analysis.py","repository":"FS-GG/.github","revision":"e4cb3efaaf27515bef79d99b76c654441850c69e","sha256":"25fe06904bcff63c191999381b20c4b10b2f25ae6d31d4f1be48a0af663cf938"},{"path":"tests/learn-01-analysis/test_analysis.py","repository":"FS-GG/.github","revision":"e4cb3efaaf27515bef79d99b76c654441850c69e","sha256":"d4c9a2ae97aac2421f54f494c7a01a6b7080181ec0eeecef945a18efb108b9fe"},{"path":"docs/roadmaps/learn-01-causal-receiver.md","repository":"FS-GG/.github","revision":"e4cb3efaaf27515bef79d99b76c654441850c69e","sha256":"252fe5b979e11252c993f2983bc14ec346cd64104b65ee45069e41948d2e488d"}],"conflictsWith":[],"id":"learn/advisory-lifecycle-evidence","kind":"boundary","recordedAt":"2026-10-20T12:41:38Z","repository":"FS-GG/.github","schema":"fsgg.atlas/1","status":"recorded","summary":"The source candidate adds an advisory lifecycleObservation to the existing LEARN private snapshot analyzer using retained admissions, starts, terminals and times. Process-start presence requires process rows; distinct process observations, threads and turns survive repeated phases. Duplicate retained identities and the receiver's actual thread/turn semantic keys refuse. Missing historical relations remain unavailable, missing retained identity/outcome columns remain explicit, and malformed, foreign or oversized present relations refuse. Each relation retains the10000-row bound and existing outer snapshot byte limits; diagnostic samples cap at20 with exact omitted counts.\n\nTimestamp presence, multiple observations and apparent within-row reversal warnings are descriptive evidence. Equal clock labels do not prove a shared clock domain. Missing terminal evidence remains unresolved across interruption/restart; late arrival belongs to another retained snapshot. No durations, observed waits or critical paths are inferred. Existing token, native-source, shared-cost and enrollment predicates retain their meaning; waitCoverage remains unknown, criticalPath not-evaluated and native population coverage not-assessed.\n\nThis independently useful source capability can proceed while authentic native provisioner/profile/inventory supply remains pending for dependent operation. The candidate changes no producer wire schema, SQLite migration, journal, executor or operating authority. Source controls establish inert analyzer behavior only; independent source review, required exact-head CI and protected delivery remain separate from installed/native capture, LEARN experiments and full outcome acceptance.\n\nReceiver text validation remains non-whitespace without an added input length ceiling. Complete identities stay internal for joins, ordering and duplicates; oversized diagnostic strings render a bounded prefix, character count and full ASCII-JSON-string digest. Timestamp evidence requires the existing RFC3339 shape plus valid calendar, time-of-day, numeric offset and UTC/local range. The source controls distinguish valid long inputs from malformed present evidence and retain the original failed24:00 normalization control; no source test becomes native authority.","supersedes":[],"tags":["learn","lifecycle","coverage","source","clock","custody","analysis"],"title":"Selected-snapshot lifecycle evidence does not establish waits or runtime completeness"}
2 changes: 1 addition & 1 deletion .claude/skills/atlas/assets/seed/catalog.json

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"citations":[{"path":"tools/learn-01-analysis.py","repository":"FS-GG/.github","revision":"e4cb3efaaf27515bef79d99b76c654441850c69e","sha256":"25fe06904bcff63c191999381b20c4b10b2f25ae6d31d4f1be48a0af663cf938"},{"path":"tests/learn-01-analysis/test_analysis.py","repository":"FS-GG/.github","revision":"e4cb3efaaf27515bef79d99b76c654441850c69e","sha256":"d4c9a2ae97aac2421f54f494c7a01a6b7080181ec0eeecef945a18efb108b9fe"},{"path":"docs/roadmaps/learn-01-causal-receiver.md","repository":"FS-GG/.github","revision":"e4cb3efaaf27515bef79d99b76c654441850c69e","sha256":"252fe5b979e11252c993f2983bc14ec346cd64104b65ee45069e41948d2e488d"}],"conflictsWith":[],"id":"learn/advisory-lifecycle-evidence","kind":"boundary","recordedAt":"2026-10-20T12:41:38Z","repository":"FS-GG/.github","schema":"fsgg.atlas/1","status":"recorded","summary":"The source candidate adds an advisory lifecycleObservation to the existing LEARN private snapshot analyzer using retained admissions, starts, terminals and times. Process-start presence requires process rows; distinct process observations, threads and turns survive repeated phases. Duplicate retained identities and the receiver's actual thread/turn semantic keys refuse. Missing historical relations remain unavailable, missing retained identity/outcome columns remain explicit, and malformed, foreign or oversized present relations refuse. Each relation retains the10000-row bound and existing outer snapshot byte limits; diagnostic samples cap at20 with exact omitted counts.\n\nTimestamp presence, multiple observations and apparent within-row reversal warnings are descriptive evidence. Equal clock labels do not prove a shared clock domain. Missing terminal evidence remains unresolved across interruption/restart; late arrival belongs to another retained snapshot. No durations, observed waits or critical paths are inferred. Existing token, native-source, shared-cost and enrollment predicates retain their meaning; waitCoverage remains unknown, criticalPath not-evaluated and native population coverage not-assessed.\n\nThis independently useful source capability can proceed while authentic native provisioner/profile/inventory supply remains pending for dependent operation. The candidate changes no producer wire schema, SQLite migration, journal, executor or operating authority. Source controls establish inert analyzer behavior only; independent source review, required exact-head CI and protected delivery remain separate from installed/native capture, LEARN experiments and full outcome acceptance.\n\nReceiver text validation remains non-whitespace without an added input length ceiling. Complete identities stay internal for joins, ordering and duplicates; oversized diagnostic strings render a bounded prefix, character count and full ASCII-JSON-string digest. Timestamp evidence requires the existing RFC3339 shape plus valid calendar, time-of-day, numeric offset and UTC/local range. The source controls distinguish valid long inputs from malformed present evidence and retain the original failed24:00 normalization control; no source test becomes native authority.","supersedes":[],"tags":["learn","lifecycle","coverage","source","clock","custody","analysis"],"title":"Selected-snapshot lifecycle evidence does not establish waits or runtime completeness"}
2 changes: 1 addition & 1 deletion docs/atlas/catalog.json

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"citations":[{"path":"tools/learn-01-analysis.py","repository":"FS-GG/.github","revision":"e4cb3efaaf27515bef79d99b76c654441850c69e","sha256":"25fe06904bcff63c191999381b20c4b10b2f25ae6d31d4f1be48a0af663cf938"},{"path":"tests/learn-01-analysis/test_analysis.py","repository":"FS-GG/.github","revision":"e4cb3efaaf27515bef79d99b76c654441850c69e","sha256":"d4c9a2ae97aac2421f54f494c7a01a6b7080181ec0eeecef945a18efb108b9fe"},{"path":"docs/roadmaps/learn-01-causal-receiver.md","repository":"FS-GG/.github","revision":"e4cb3efaaf27515bef79d99b76c654441850c69e","sha256":"252fe5b979e11252c993f2983bc14ec346cd64104b65ee45069e41948d2e488d"}],"conflictsWith":[],"id":"learn/advisory-lifecycle-evidence","kind":"boundary","recordedAt":"2026-10-20T12:41:38Z","repository":"FS-GG/.github","schema":"fsgg.atlas/1","status":"recorded","summary":"The source candidate adds an advisory lifecycleObservation to the existing LEARN private snapshot analyzer using retained admissions, starts, terminals and times. Process-start presence requires process rows; distinct process observations, threads and turns survive repeated phases. Duplicate retained identities and the receiver's actual thread/turn semantic keys refuse. Missing historical relations remain unavailable, missing retained identity/outcome columns remain explicit, and malformed, foreign or oversized present relations refuse. Each relation retains the10000-row bound and existing outer snapshot byte limits; diagnostic samples cap at20 with exact omitted counts.\n\nTimestamp presence, multiple observations and apparent within-row reversal warnings are descriptive evidence. Equal clock labels do not prove a shared clock domain. Missing terminal evidence remains unresolved across interruption/restart; late arrival belongs to another retained snapshot. No durations, observed waits or critical paths are inferred. Existing token, native-source, shared-cost and enrollment predicates retain their meaning; waitCoverage remains unknown, criticalPath not-evaluated and native population coverage not-assessed.\n\nThis independently useful source capability can proceed while authentic native provisioner/profile/inventory supply remains pending for dependent operation. The candidate changes no producer wire schema, SQLite migration, journal, executor or operating authority. Source controls establish inert analyzer behavior only; independent source review, required exact-head CI and protected delivery remain separate from installed/native capture, LEARN experiments and full outcome acceptance.\n\nReceiver text validation remains non-whitespace without an added input length ceiling. Complete identities stay internal for joins, ordering and duplicates; oversized diagnostic strings render a bounded prefix, character count and full ASCII-JSON-string digest. Timestamp evidence requires the existing RFC3339 shape plus valid calendar, time-of-day, numeric offset and UTC/local range. The source controls distinguish valid long inputs from malformed present evidence and retain the original failed24:00 normalization control; no source test becomes native authority.","supersedes":[],"tags":["learn","lifecycle","coverage","source","clock","custody","analysis"],"title":"Selected-snapshot lifecycle evidence does not establish waits or runtime completeness"}
40 changes: 40 additions & 0 deletions docs/roadmaps/learn-01-causal-receiver.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,43 @@ The fixed fixtures in `tests/learn-01-analysis/fixtures/causal-admission/` are s
Local source qualification on the isolated C1 candidate passed 46 Python analyzer tests, three focused Core decoder tests, one CLI schema-14 temporary-store ingress/reopen/replay/refusal test and one Dashboard private-row projection test. The synthetic fixture manifest SHA-256 is `58de080758af83f2e243faf6995a44a529d00f810d43b2ac64753d14f59ce880`. The source-built CLI DLL SHA-256 is `e3a0f5949cb54c7a00d2883083fd05d0efcd239fc18eb07a4e4c850a1492ef87`. A later controlled C3 source-artifact fixture passed genuine C2 batch ingestion, separate-process reopen, eight-batch replay and analyzer own joins with generic local receipts; it did not qualify a packed or installed receiver or native collector. The subsequent receipt-route repair passed both named causal CLI tests from its pinned source build, including terminal conflict rejection and canonical retention. Its first test-host attempt aborted before executing tests because the configured runtime roll-forward policy excluded the installed patch; a fresh test-only attempt with the installed patch passed 2/2. Earlier local restore/compiler/test-helper failures and the first synthetic assignment-scaffold refusal remain retained in the private qualification record. These checks used disposable source fixtures and temporary stores; they did not ingest into an installed observer or establish native provenance.

Source order is merged A1–A3, C1 receiver, C2 producer, then C3 exact composition. Publication and installed adoption remain separate: adopt a compatible receiver before enabling new producer emission. This source window does not select a dependency wait or change fresh-workspace defaults. LEARN-01.2 and LEARN-01.4 remain open pending installed custody, independent population and shared-cost evidence, and the later qualified wait/lifecycle reduction.

## Advisory lifecycle evidence

The [private analyzer](../../tools/learn-01-analysis.py) adds `lifecycleObservation`
from the existing selected snapshot's `starts`, `terminals` and `times` relations.
It reports process-start and terminal presence for admitted invocations, terminal
outcome categories, timestamp/clock-field presence, multiple observations and
apparent within-row timestamp reversals. These diagnostics do not change token,
native-source, shared-cost or enrollment qualification.

Process-start presence requires a process row. Thread and turn rows cannot replace
it. Phase and PID alone are not uniqueness keys: distinct process observations,
threads and turns remain visible. Duplicate retained identities and the receiver's
actual thread `(invocation, thread)` and turn `(invocation, thread, sequence)` keys
refuse. Nullable historical thread fields retain their existing meaning. Multiple
time observations remain visible rather than becoming inferred starts or ends.

An absent historical relation is `unavailable`, with missing-presence diagnostics
set to null; a present empty relation reports missing evidence. Older summaries
without retained identity/outcome columns expose those gaps. Malformed present
relations, foreign joins and relations above 10,000 rows refuse within the existing
snapshot byte bounds. Producer text retains its non-whitespace validation without
an added identity length limit. Diagnostic samples contain at most 20 entries
with exact counts and omitted counts. A sample string above 512 bytes in its
ASCII JSON encoding is rendered as a 48-character prefix, original character
count and `jsonSha256` of that full encoded string. Joins, duplicate checks and
counts still use complete input identities. Replaying or reordering the same
snapshot preserves the result; late evidence belongs to a separate snapshot result.

A missing terminal remains unresolved, including after interruption or restart.
Cancellation intent, actor exit and receiver observation order cannot supply an
end or descendant retirement. Clock labels alone do not establish a shared clock
domain; timestamps require the receiver's RFC 3339 shape and valid calendar/offset
values. Apparent timestamp reversals preserve fractional ordering but remain
evidence warnings, not duration or causal calculations.
`clockComparability=unverified`, `waitCoverage=unknown` and
`criticalPath=not-evaluated` remain explicit. Native population coverage is not
assessed by this audit. Boundary-owned wait observations and qualified interval
reduction, authentic collection, installed adoption and full LEARN acceptance
remain separate work; this source capability grants no operating authority.
9 changes: 7 additions & 2 deletions registry/driver-skill-manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
"id": "atlas",
"scope": "driver",
"sha256": "c18e56fcc56abf80903e2fc6829cd94b44f42947724a26318ebcbf1ac5e1b35b",
"tree-sha256": "121f48b56fb9081e56fddb2ee4ab22b72113fe5c41c80ae4b383a0873861a851",
"tree-sha256": "7f65cffa31aca3b850179a3fed9b9883c6ae5ca018c0068f37b065276fd8abdd",
"files": [
{
"path": "SKILL.md",
Expand All @@ -24,7 +24,7 @@
},
{
"path": "assets/seed/catalog.json",
"sha256": "b69b0222080db6e617a61f3d9973e2af93056189c88a2f421fed670e039a827a",
"sha256": "aa6c65f7a1dce76313aca83c20c854e34995094c25d4be16a98c449e792e3fd6",
"executable": false
},
{
Expand Down Expand Up @@ -657,6 +657,11 @@
"sha256": "6a34d9279cae58765d6ee4a980192c0e15f3ca217b9f1815861d472a281b3cf8",
"executable": false
},
{
"path": "assets/seed/records/6b00dccaa7deabc750679ab085b237a2bd025bd971ee1eb7bdc333b393b19084.json",
"sha256": "6b00dccaa7deabc750679ab085b237a2bd025bd971ee1eb7bdc333b393b19084",
"executable": false
},
{
"path": "assets/seed/records/6c3c592efe9c684ada5661b8cc88a5c3f6e57c841db06b9e070687504cbf6236.json",
"sha256": "6c3c592efe9c684ada5661b8cc88a5c3f6e57c841db06b9e070687504cbf6236",
Expand Down
Loading
Loading