Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
15b3474
test(sccm): prepare distribution point corpus
adamgell Jul 31, 2026
5e43b61
test(sccm): harden distribution point corpus
adamgell Jul 31, 2026
d07ab15
test(sccm): enforce DP producer provenance
adamgell Jul 31, 2026
98a72fe
test(sccm): harden DP executable probe
adamgell Jul 31, 2026
0a915dc
test(sccm): harden DP corpus review boundaries
adamgell Jul 31, 2026
79e6c5a
test(sccm): require explicit DP topology arrays
adamgell Jul 31, 2026
b229741
test(sccm): reject malformed source-local artifact ids
adamgell Jul 31, 2026
dfe32e9
test(sccm): bind source-local evidence to physical lines
adamgell Jul 31, 2026
71158c1
test(sccm): close distribution point contract gaps
adamgell Jul 31, 2026
00896d0
test(sccm): align distribution point coverage requests
adamgell Jul 31, 2026
a620cd4
Merge commit 'a8a367c661cd17bd1e73b87724c143ec8565ffc7' into codex/re…
adamgell Jul 31, 2026
eda8210
test(sccm): reproduce DP content fail-open mutations
adamgell Jul 31, 2026
0d94008
fix(sccm): close DP content evidence gaps
adamgell Jul 31, 2026
eecb54c
test(sccm): require explicit DP terminal markers
adamgell Jul 31, 2026
9a63b6b
fix(sccm): fail closed on missing DP terminal markers
adamgell Jul 31, 2026
3bcfdd0
test(sccm): reproduce DP semantic review gaps
adamgell Jul 31, 2026
ee168cc
fix(sccm): close DP evidence and role gaps
adamgell Jul 31, 2026
44c2fad
test(sccm): reproduce stale DP outcome accepts
adamgell Jul 31, 2026
4f8bd3b
fix(sccm): bind DP state to latest evidence
adamgell Jul 31, 2026
2e54a20
test(sccm): reproduce equal-time DP ordering gaps
adamgell Jul 31, 2026
b45c4b6
fix(sccm): order equal-time DP evidence by provenance
adamgell Jul 31, 2026
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
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# Synthetic Distribution Point fixture corpus

This directory is test-only input for Issue `#329`.

Site-server logs are physical captures, not per-DP projections. The multi-DP
scenario therefore stores `distmgr.log` and `PkgXferMgr.log` once and binds
exact DP/content/version identity from each normalized logical CCM record.

- Every evidence file is authored synthetic CCM text and contains the literal
`SYNTHETIC FIXTURE` marker.
- `manifest.json` records physical producer, workflow subject, coverage,
rotation, bounded path, encoding, and exact byte-count provenance.
Comment on lines +11 to +12
- `expected.json` is a preparation label, not a frozen production API.
- Exact package/content/version/DP/profile keys keep versions and DPs
independent.
- Case-folded path fingerprints stay unique, sanitized roots and rotated
basenames stay synthetic, and topology arrays retain only typed declared
handles.
- Rotation lineage/fragment fields, observation IDs, evidence references, and
coverage-gap IDs fail closed on malformed, empty, duplicate, or reused
values.
- Every source-local observation cites a nonempty closed array of exact raw
physical artifact/line ranges. Citing a fragment or malformed raw line does
not promote it to a logical transaction or make it correlation-eligible.
- Missing, denied, malformed, capped, or split evidence is coverage only.
- Client records and timestamps alone never establish a DP transaction or
cross-side cause.

The focused Rust contract resolves every manifest path, runs captured CCM
files through the existing SCCM logical-record envelope, verifies normalized
timestamp/line provenance, and rejects adversarial mutations.
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"contractState": "proposedPendingReviewed318And335",
"workflow": "distributionPoint",
"scenario": "absent-dp",
"stateChain": ["receiveContent", "distribute", "transfer", "validate", "makeAvailable", "serveOrReport"],
"analysisContract": {"independentReducer": true, "consumesClientOutput": false, "crossSideCorrelationPerformed": false},
"extractionProfile": {"selectionState": "selectedSynthetic", "profileId": "dp-server-5.00.test-v1", "validatedRole": "distributionPoint"},
"roleAssessment": {"distributionPointObserved": true, "roleAbsentInferred": false, "missingDefaultPathInterpretation": "sourceCoverageOnly"},
"coverage": [
{"artifactId": "dp-absent-01-distmgr", "state": "absent"},
{"artifactId": "dp-absent-02-provider", "state": "absent"}
],
"transactions": [],
"sourceLocalObservations": [],
"artifactRequests": [
{"sourceId": "server-dp-distribution", "reasonCode": "coverageAbsent"}
],
"clientCausalClaims": [],
"correlationHandoff": {"issue": "#333", "performed": false, "timeOnlyEligible": false}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
{
"sccmManifestVersion": 1,
"proposalOnly": true,
"syntheticFixture": true,
"bundle": {"bundleRole": "server", "workflow": "distributionPoint", "capturedUtc": "2026-07-30T12:30:00Z"},
"topology": {"siteCode": "LAB", "distributionPointHandle": "safe:dp:lab-dp-01", "distributionPointHandles": ["safe:dp:lab-dp-01"], "rolesObserved": ["distributionPoint", "siteServer"]},
"artifacts": [
{
"artifactId": "dp-absent-01-distmgr",
"sourceId": "server-dp-distribution",
"producerRole": "siteServer",
"producerHostHandle": "safe:server:lab-pri-01",
"workflowSubjectRole": "distributionPoint",
"workflowSubjectHandle": "safe:dp:lab-dp-01",
"sourceKind": "ccmLog",
"originalBasename": "distmgr.log",
"sanitizedSourcePath": "SYNTHETIC://default-site-root/Logs/distmgr.log",
"pathFingerprint": "synthetic:absent-distmgr",
"rotation": {"kind": "current", "lineageId": "absent-distmgr"},
"captureState": "absent",
"sourceVersion": "5.00.TEST.0001",
"collectedUtc": "2026-07-30T12:20:00Z"
},
{
"artifactId": "dp-absent-02-provider",
"sourceId": "server-dp-distribution",
"producerRole": "distributionPoint",
"producerHostHandle": "safe:dp:lab-dp-01",
"workflowSubjectRole": "distributionPoint",
"workflowSubjectHandle": "safe:dp:lab-dp-01",
"sourceKind": "ccmLog",
"originalBasename": "SMSDPProv.log",
"sanitizedSourcePath": "SYNTHETIC://default-dp-root/Logs/SMSDPProv.log",
"pathFingerprint": "synthetic:absent-provider",
"rotation": {"kind": "current", "lineageId": "absent-provider"},
"captureState": "absent",
"sourceVersion": "5.00.TEST.0001",
"collectedUtc": "2026-07-30T12:20:00Z"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<![LOG[SYNTHETIC FIXTURE; Phase=transfer; Disposition=failed; Terminal=true; ContentId=content-client-only; ContentVersion=1; SiteCode=LAB; DpHandle=safe:dp:lab-dp-01; ClientHandle=safe:client:lab-client-01; RequestId=client-request-01]LOG]!><time="12:07:00.000+000" date="07-30-2026" component="DataTransferService" context="" type="3" thread="701" file="datatransferservice.cpp:701">
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
{
"contractState": "proposedPendingReviewed318And335",
"workflow": "distributionPoint",
"scenario": "client-only-looking-request",
"stateChain": ["receiveContent", "distribute", "transfer", "validate", "makeAvailable", "serveOrReport"],
"analysisContract": {"independentReducer": true, "consumesClientOutput": false, "crossSideCorrelationPerformed": false},
"extractionProfile": {"selectionState": "selectedSynthetic", "profileId": "dp-server-5.00.test-v1", "validatedRole": "distributionPoint"},
"roleAssessment": {"distributionPointObserved": false, "roleAbsentInferred": false, "missingDefaultPathInterpretation": "sourceCoverageOnly"},
"coverage": [
{"artifactId": "dp-client-control-01-data-transfer", "state": "captured"},
{"artifactId": "dp-client-control-02-server-absent", "state": "absent"}
],
"transactions": [],
"sourceLocalObservations": [
{
"observationId": "client-control-01",
"classification": "ignoredClientEvidence",
"confidence": "low",
"confidenceCeiling": "low",
"correlationEligible": false,
"artifactIds": ["dp-client-control-01-data-transfer"],
"evidence": [{"artifactId": "dp-client-control-01-data-transfer", "startLine": 1, "endLine": 1}]
}
],
"artifactRequests": [
{"sourceId": "server-dp-distribution", "reasonCode": "coverageAbsent"}
],
"clientCausalClaims": [],
"correlationHandoff": {"issue": "#333", "performed": false, "timeOnlyEligible": false}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
{
"sccmManifestVersion": 1,
"proposalOnly": true,
"syntheticFixture": true,
"bundle": {"bundleRole": "server", "workflow": "distributionPoint", "capturedUtc": "2026-07-30T12:30:00Z"},
"topology": {"siteCode": "LAB", "distributionPointHandle": "safe:dp:lab-dp-01", "distributionPointHandles": ["safe:dp:lab-dp-01"], "rolesObserved": ["siteServer"]},
"artifacts": [
{
"artifactId": "dp-client-control-01-data-transfer",
"sourceId": "client-content-control",
"producerRole": "client",
"producerHostHandle": "safe:client:lab-client-01",
"workflowSubjectRole": "distributionPoint",
"workflowSubjectHandle": "safe:dp:lab-dp-01",
"sourceKind": "ccmLog",
"originalBasename": "DataTransferService.log",
"sanitizedSourcePath": "SYNTHETIC://client-control/Logs/DataTransferService.log",
"pathFingerprint": "synthetic:client-only-data-transfer",
"rotation": {"kind": "current", "lineageId": "client-only-data-transfer", "fragmentComplete": true},
"captureState": "captured",
"sourceVersion": "5.00.TEST.0001",
"collectedUtc": "2026-07-30T12:20:00Z",
"encoding": "utf-8",
"collectionLimit": {"byteLimit": 4096, "limitApplied": false},
"bytesCopied": 386,
"relativePath": "evidence/client-content-control/current/DataTransferService.log"
},
{
"artifactId": "dp-client-control-02-server-absent",
"sourceId": "server-dp-distribution",
"producerRole": "siteServer",
"producerHostHandle": "safe:server:lab-pri-01",
"workflowSubjectRole": "distributionPoint",
"workflowSubjectHandle": "safe:dp:lab-dp-01",
"sourceKind": "ccmLog",
"originalBasename": "distmgr.log",
"sanitizedSourcePath": "SYNTHETIC://site-root/Logs/distmgr.log",
"pathFingerprint": "synthetic:client-only-server-absent",
"rotation": {"kind": "current", "lineageId": "client-only-server-absent"},
"captureState": "absent",
"sourceVersion": "5.00.TEST.0001",
"collectedUtc": "2026-07-30T12:20:00Z"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<![LOG[SYNTHETIC FIXTURE; Phase=validate; Disposition=succeeded; Terminal=false; PackageId=LAB00005; ContentId=content-epsilon; ContentVersion=1; SiteCode=LAB; DpHandle=safe:dp:lab-dp-02; ProfileId=dp-server-5.00.test-v1]LOG]!><time="12:10:03.000+000" date="07-30-2026" component="SMSDPProv" context="" type="1" thread="508" file="smsdpprov.cpp:513">
<![LOG[SYNTHETIC FIXTURE; Phase=makeAvailable; Disposition=succeeded; Terminal=false; PackageId=LAB00005; ContentId=content-epsilon; ContentVersion=1; SiteCode=LAB; DpHandle=safe:dp:lab-dp-02; ProfileId=dp-server-5.00.test-v1]LOG]!><time="12:10:04.000+000" date="07-30-2026" component="SMSDPProv" context="" type="1" thread="508" file="smsdpprov.cpp:514">
<![LOG[SYNTHETIC FIXTURE; Phase=serveOrReport; Disposition=succeeded; Terminal=true; PackageId=LAB00005; ContentId=content-epsilon; ContentVersion=1; SiteCode=LAB; DpHandle=safe:dp:lab-dp-02; ProfileId=dp-server-5.00.test-v1]LOG]!><time="12:10:05.000+000" date="07-30-2026" component="SMSDPProv" context="" type="1" thread="508" file="smsdpprov.cpp:515">
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<![LOG[SYNTHETIC FIXTURE; Phase=validate; Disposition=succeeded; Terminal=false; PackageId=LAB00005; ContentId=content-epsilon; ContentVersion=1; SiteCode=LAB; DpHandle=safe:dp:lab-dp-01; ProfileId=dp-server-5.00.test-v1]LOG]!><time="12:05:03.000+000" date="07-30-2026" component="SMSDPProv" context="" type="1" thread="505" file="smsdpprov.cpp:507">
<![LOG[SYNTHETIC FIXTURE; Phase=makeAvailable; Disposition=succeeded; Terminal=false; PackageId=LAB00005; ContentId=content-epsilon; ContentVersion=1; SiteCode=LAB; DpHandle=safe:dp:lab-dp-01; ProfileId=dp-server-5.00.test-v1]LOG]!><time="12:05:04.000+000" date="07-30-2026" component="SMSDPProv" context="" type="1" thread="505" file="smsdpprov.cpp:508">
<![LOG[SYNTHETIC FIXTURE; Phase=serveOrReport; Disposition=succeeded; Terminal=true; PackageId=LAB00005; ContentId=content-epsilon; ContentVersion=1; SiteCode=LAB; DpHandle=safe:dp:lab-dp-01; ProfileId=dp-server-5.00.test-v1]LOG]!><time="12:05:05.000+000" date="07-30-2026" component="SMSDPProv" context="" type="1" thread="505" file="smsdpprov.cpp:509">
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<![LOG[SYNTHETIC FIXTURE; Phase=transfer; Disposition=succeeded; Terminal=false; PackageId=LAB00005; ContentId=content-epsilon; ContentVersion=1; SiteCode=LAB; DpHandle=safe:dp:lab-dp-01; ProfileId=dp-server-5.00.test-v1]LOG]!><time="12:05:02.000+000" date="07-30-2026" component="PkgXferMgr" context="" type="1" thread="503" file="pkgxfermgr.cpp:505">
<![LOG[SYNTHETIC FIXTURE; Phase=transfer; Disposition=succeeded; Terminal=false; PackageId=LAB00005; ContentId=content-epsilon; ContentVersion=1; SiteCode=LAB; DpHandle=safe:dp:lab-dp-02; ProfileId=dp-server-5.00.test-v1]LOG]!><time="12:10:02.000+000" date="07-30-2026" component="PkgXferMgr" context="" type="1" thread="507" file="pkgxfermgr.cpp:512">
<![LOG[SYNTHETIC FIXTURE; Phase=transfer; Disposition=retrying; Terminal=false; PackageId=LAB00005; ContentId=content-epsilon; ContentVersion=2; SiteCode=LAB; DpHandle=safe:dp:lab-dp-01; ProfileId=dp-server-5.00.test-v1]LOG]!><time="12:15:02.000+000" date="07-30-2026" component="PkgXferMgr" context="" type="2" thread="504" file="pkgxfermgr.cpp:506">
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<![LOG[SYNTHETIC FIXTURE; Phase=receiveContent; Disposition=succeeded; Terminal=false; PackageId=LAB00005; ContentId=content-epsilon; ContentVersion=1; SiteCode=LAB; DpHandle=safe:dp:lab-dp-01; ProfileId=dp-server-5.00.test-v1]LOG]!><time="12:05:00.000+000" date="07-30-2026" component="distmgr" context="" type="1" thread="501" file="distmgr.cpp:501">
<![LOG[SYNTHETIC FIXTURE; Phase=distribute; Disposition=succeeded; Terminal=false; PackageId=LAB00005; ContentId=content-epsilon; ContentVersion=1; SiteCode=LAB; DpHandle=safe:dp:lab-dp-01; ProfileId=dp-server-5.00.test-v1]LOG]!><time="12:05:01.000+000" date="07-30-2026" component="distmgr" context="" type="1" thread="501" file="distmgr.cpp:502">
<![LOG[SYNTHETIC FIXTURE; Phase=receiveContent; Disposition=succeeded; Terminal=false; PackageId=LAB00005; ContentId=content-epsilon; ContentVersion=1; SiteCode=LAB; DpHandle=safe:dp:lab-dp-02; ProfileId=dp-server-5.00.test-v1]LOG]!><time="12:10:00.000+000" date="07-30-2026" component="distmgr" context="" type="1" thread="506" file="distmgr.cpp:510">
<![LOG[SYNTHETIC FIXTURE; Phase=distribute; Disposition=succeeded; Terminal=false; PackageId=LAB00005; ContentId=content-epsilon; ContentVersion=1; SiteCode=LAB; DpHandle=safe:dp:lab-dp-02; ProfileId=dp-server-5.00.test-v1]LOG]!><time="12:10:01.000+000" date="07-30-2026" component="distmgr" context="" type="1" thread="506" file="distmgr.cpp:511">
<![LOG[SYNTHETIC FIXTURE; Phase=receiveContent; Disposition=succeeded; Terminal=false; PackageId=LAB00005; ContentId=content-epsilon; ContentVersion=2; SiteCode=LAB; DpHandle=safe:dp:lab-dp-01; ProfileId=dp-server-5.00.test-v1]LOG]!><time="12:15:00.000+000" date="07-30-2026" component="distmgr" context="" type="1" thread="502" file="distmgr.cpp:503">
<![LOG[SYNTHETIC FIXTURE; Phase=distribute; Disposition=succeeded; Terminal=false; PackageId=LAB00005; ContentId=content-epsilon; ContentVersion=2; SiteCode=LAB; DpHandle=safe:dp:lab-dp-01; ProfileId=dp-server-5.00.test-v1]LOG]!><time="12:15:01.000+000" date="07-30-2026" component="distmgr" context="" type="1" thread="502" file="distmgr.cpp:504">
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
{
"contractState": "proposedPendingReviewed318And335",
"workflow": "distributionPoint",
"scenario": "content-version-mismatch",
"stateChain": ["receiveContent", "distribute", "transfer", "validate", "makeAvailable", "serveOrReport"],
"analysisContract": {"independentReducer": true, "consumesClientOutput": false, "crossSideCorrelationPerformed": false},
"extractionProfile": {"selectionState": "selectedSynthetic", "profileId": "dp-server-5.00.test-v1", "validatedRole": "distributionPoint"},
"roleAssessment": {"distributionPointObserved": true, "roleAbsentInferred": false, "missingDefaultPathInterpretation": "sourceCoverageOnly"},
"coverage": [
{"artifactId": "dp-version-01-distmgr", "state": "captured"},
{"artifactId": "dp-version-02-pkgxfer", "state": "captured"},
{"artifactId": "dp-version-03-provider", "state": "captured"},
{"artifactId": "dp-version-04-provider-dp02", "state": "captured"}
],
"transactions": [
{
"transactionId": "dp:LAB00005:content-epsilon:v1:safe:dp:lab-dp-01",
"key": {"packageId": "LAB00005", "contentId": "content-epsilon", "contentVersion": 1, "siteCode": "LAB", "distributionPointHandle": "safe:dp:lab-dp-01", "confidence": "exact", "extractionProfileId": "dp-server-5.00.test-v1"},
"topologyCompatibility": "exact",
"correlationEligible": true,
"state": "succeeded",
"classification": "success",
"confidence": "high",
"confidenceCeiling": "high",
"lastSuccessfulPhase": "serveOrReport",
"nextSourceId": null,
"coverageGapArtifactIds": [],
"observations": [
{"observationId": "01-v1-receive", "phase": "receiveContent", "disposition": "succeeded", "terminal": false, "evidence": [{"artifactId": "dp-version-01-distmgr", "startLine": 1, "endLine": 1}]},
{"observationId": "02-v1-distribute", "phase": "distribute", "disposition": "succeeded", "terminal": false, "evidence": [{"artifactId": "dp-version-01-distmgr", "startLine": 2, "endLine": 2}]},
{"observationId": "03-v1-transfer", "phase": "transfer", "disposition": "succeeded", "terminal": false, "evidence": [{"artifactId": "dp-version-02-pkgxfer", "startLine": 1, "endLine": 1}]},
{"observationId": "04-v1-validate", "phase": "validate", "disposition": "succeeded", "terminal": false, "evidence": [{"artifactId": "dp-version-03-provider", "startLine": 1, "endLine": 1}]},
{"observationId": "05-v1-available", "phase": "makeAvailable", "disposition": "succeeded", "terminal": false, "evidence": [{"artifactId": "dp-version-03-provider", "startLine": 2, "endLine": 2}]},
{"observationId": "06-v1-report", "phase": "serveOrReport", "disposition": "succeeded", "terminal": true, "evidence": [{"artifactId": "dp-version-03-provider", "startLine": 3, "endLine": 3}]}
]
},
{
"transactionId": "dp:LAB00005:content-epsilon:v1:safe:dp:lab-dp-02",
"key": {"packageId": "LAB00005", "contentId": "content-epsilon", "contentVersion": 1, "siteCode": "LAB", "distributionPointHandle": "safe:dp:lab-dp-02", "confidence": "exact", "extractionProfileId": "dp-server-5.00.test-v1"},
"topologyCompatibility": "exact",
"correlationEligible": true,
"state": "succeeded",
"classification": "success",
"confidence": "high",
"confidenceCeiling": "high",
"lastSuccessfulPhase": "serveOrReport",
"nextSourceId": null,
"coverageGapArtifactIds": [],
"observations": [
{"observationId": "01-dp02-receive", "phase": "receiveContent", "disposition": "succeeded", "terminal": false, "evidence": [{"artifactId": "dp-version-01-distmgr", "startLine": 3, "endLine": 3}]},
{"observationId": "02-dp02-distribute", "phase": "distribute", "disposition": "succeeded", "terminal": false, "evidence": [{"artifactId": "dp-version-01-distmgr", "startLine": 4, "endLine": 4}]},
{"observationId": "03-dp02-transfer", "phase": "transfer", "disposition": "succeeded", "terminal": false, "evidence": [{"artifactId": "dp-version-02-pkgxfer", "startLine": 2, "endLine": 2}]},
{"observationId": "04-dp02-validate", "phase": "validate", "disposition": "succeeded", "terminal": false, "evidence": [{"artifactId": "dp-version-04-provider-dp02", "startLine": 1, "endLine": 1}]},
{"observationId": "05-dp02-available", "phase": "makeAvailable", "disposition": "succeeded", "terminal": false, "evidence": [{"artifactId": "dp-version-04-provider-dp02", "startLine": 2, "endLine": 2}]},
{"observationId": "06-dp02-report", "phase": "serveOrReport", "disposition": "succeeded", "terminal": true, "evidence": [{"artifactId": "dp-version-04-provider-dp02", "startLine": 3, "endLine": 3}]}
]
},
{
"transactionId": "dp:LAB00005:content-epsilon:v2:safe:dp:lab-dp-01",
"key": {"packageId": "LAB00005", "contentId": "content-epsilon", "contentVersion": 2, "siteCode": "LAB", "distributionPointHandle": "safe:dp:lab-dp-01", "confidence": "exact", "extractionProfileId": "dp-server-5.00.test-v1"},
"topologyCompatibility": "exact",
"correlationEligible": true,
"state": "deferred",
"classification": "blockedOrDeferred",
"confidence": "medium",
"confidenceCeiling": "medium",
"lastSuccessfulPhase": "distribute",
"nextSourceId": null,
"coverageGapArtifactIds": [],
"observations": [
{"observationId": "01-v2-receive", "phase": "receiveContent", "disposition": "succeeded", "terminal": false, "evidence": [{"artifactId": "dp-version-01-distmgr", "startLine": 5, "endLine": 5}]},
{"observationId": "02-v2-distribute", "phase": "distribute", "disposition": "succeeded", "terminal": false, "evidence": [{"artifactId": "dp-version-01-distmgr", "startLine": 6, "endLine": 6}]},
{"observationId": "03-v2-transfer-retry", "phase": "transfer", "disposition": "retrying", "terminal": false, "evidence": [{"artifactId": "dp-version-02-pkgxfer", "startLine": 3, "endLine": 3}]}
]
}
],
"sourceLocalObservations": [],
"artifactRequests": [],
"clientCausalClaims": [],
"correlationHandoff": {"issue": "#333", "performed": false, "timeOnlyEligible": false}
}
Loading