Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1057 commits
Select commit Hold shift + click to select a range
0d23f4e
docs(maintenance): retain Session issue readbacks and qualification c…
sanchuanhehe Oct 16, 2026
0732f9d
feat(test): add paired window and xHCI measurement controls
sanchuanhehe Oct 16, 2026
e34c7b7
fix(test): verify trace capacity using the actual ring buffer layout
sanchuanhehe Oct 16, 2026
5338ddc
docs(progress): track live measurement matrix and open issue readbacks
sanchuanhehe Oct 16, 2026
dbc620a
fix(test): require integer trace request and endpoint layouts
sanchuanhehe Oct 16, 2026
3e5b9a1
test(ws73): seal paired trace and window measurement evidence
sanchuanhehe Oct 16, 2026
7f4c41d
docs(qualification): advance exact paired baseline and retain origina…
sanchuanhehe Oct 16, 2026
33f17a8
docs(maintenance): retain paired baseline issue and integrity receipts
sanchuanhehe Oct 16, 2026
955a885
test(ws73): retain U23 lifecycle regression and controller model change
sanchuanhehe Oct 16, 2026
0969f90
docs(qualification): sync U23 lifecycle scope and mixed controller in…
sanchuanhehe Oct 16, 2026
2c23b49
docs(maintenance): retain lifecycle issue readbacks and scoped integr…
sanchuanhehe Oct 16, 2026
03ef98f
test(ws73): retain initial bounded-TX evidence and match kernel CI pin
sanchuanhehe Oct 16, 2026
5891947
docs(qualification): distinguish initial TX gates from unproved P2d exit
sanchuanhehe Oct 16, 2026
b70222b
docs(maintenance): retain TX issue receipts and limited qualification…
sanchuanhehe Oct 16, 2026
8a7f11f
test(sparklink): correlate VM Session service stages with USB submission
sanchuanhehe Oct 16, 2026
969f032
docs(evidence): retain fresh c4 two-controller lifecycle qualification
sanchuanhehe Oct 16, 2026
c5ba720
docs(qualification): register c4 lifecycle exit without transferring …
sanchuanhehe Oct 16, 2026
e08a228
fix(test): size bounded Session trace from measured burst capture
sanchuanhehe Oct 16, 2026
f6d6368
docs(evidence): preserve real Session trace closure and original over…
sanchuanhehe Oct 16, 2026
8a51d7c
docs(qualification): sync Session trace scope, failures and next data…
sanchuanhehe Oct 16, 2026
8ba199b
docs(maintenance): retain Session trace issue and integrity receipts
sanchuanhehe Oct 16, 2026
9cd53fe
test(sparklink): coordinate real concurrent short and long channel ex…
sanchuanhehe Oct 16, 2026
1f0f628
docs(evidence): retain c4 length passes and original burst drain failure
sanchuanhehe Oct 16, 2026
1453984
docs(evidence): retain real concurrent short and long channel progress
sanchuanhehe Oct 16, 2026
6a4ba45
docs(evidence): bind full tool replay to the clean signed source tree
sanchuanhehe Oct 16, 2026
2bfad44
docs(qualification): distinguish length and concurrent progress from …
sanchuanhehe Oct 16, 2026
47ab35e
docs(maintenance): retain concurrent gate issue and source receipts
sanchuanhehe Oct 16, 2026
f8fe9a0
feat(sparklink): bridge read-only Session status through existing owner
sanchuanhehe Oct 16, 2026
42ecc6f
test(sparklink): bound dynamic close observation by real Session state
sanchuanhehe Oct 16, 2026
daee6eb
test(sparklink): seal real bounded Session close observations
sanchuanhehe Oct 16, 2026
5a229fc
docs(sparklink): register scoped close observation qualification
sanchuanhehe Oct 16, 2026
3e62f89
test(sparklink): seal new-artifact data and lifetime regressions
sanchuanhehe Oct 16, 2026
03eb115
docs(sparklink): synchronize completed scoped regression records
sanchuanhehe Oct 16, 2026
b2e1204
docs(sparklink): record final issue receipts and next execution slice
sanchuanhehe Oct 16, 2026
f2fa4e1
test(sparklink): pass bounded native workloads through existing slktest
sanchuanhehe Oct 16, 2026
230ceff
test(sparklink): seal matched WS73 workload observations and limits
sanchuanhehe Oct 16, 2026
3b65845
docs(sparklink): make matched firmware and instrumentation identities…
sanchuanhehe Oct 16, 2026
4207043
docs(sparklink): register finite matched workload scope without perfo…
sanchuanhehe Oct 16, 2026
8390f1d
docs(sparklink): retain matched workload issue and verification receipts
sanchuanhehe Oct 16, 2026
e162e6e
docs(sparklink): scope installation-reply barrier evidence and next r…
sanchuanhehe Oct 16, 2026
75d8b06
docs(sparklink): register scoped reply-barrier checks without physica…
sanchuanhehe Oct 16, 2026
84532c6
docs(sparklink): retain reply-barrier maintenance and open issue rece…
sanchuanhehe Oct 16, 2026
7fd330c
test(sparklink): wire controlled in-flight installation cancellation …
sanchuanhehe Oct 16, 2026
c0509cc
fix(sparklink): forward installation witness mode through guest init
sanchuanhehe Oct 16, 2026
6166b91
fix(sparklink): use ordinary caller evidence directory for install ba…
sanchuanhehe Oct 16, 2026
494db77
docs(sparklink): retain two-role real installation cancellation and p…
sanchuanhehe Oct 16, 2026
c9994a2
docs(sparklink): register exact installation-cancel qualifications an…
sanchuanhehe Oct 16, 2026
d77e3f0
docs(sparklink): retain installation-cancel maintenance and open issu…
sanchuanhehe Oct 16, 2026
862b95b
feat(sparklink): bind numeric decisions and VM gates to the original …
sanchuanhehe Oct 16, 2026
f69554c
test(sparklink): reject incomplete numeric decision evidence explicitly
sanchuanhehe Oct 16, 2026
e53b237
fix(sparklink): synchronize numeric ABI CI pin and generated C header
sanchuanhehe Oct 16, 2026
d9e4a66
docs(sparklink): retain two-role numeric mechanism evidence and remai…
sanchuanhehe Oct 16, 2026
f706471
docs(sparklink): register scoped numeric evidence without completing …
sanchuanhehe Oct 16, 2026
7edba41
ci(sparklink): exercise the complete numeric authorization matrix
sanchuanhehe Oct 16, 2026
88fad09
style(sparklink): apply the workspace Rust formatting edition
sanchuanhehe Oct 16, 2026
0bbd99a
docs(sparklink): retain numeric CI and open issue maintenance receipts
sanchuanhehe Oct 16, 2026
b87318b
feat(sparklink): bind numeric Agent confirmation to the original nati…
sanchuanhehe Oct 16, 2026
59c0cab
test(sparklink): audit rejected numeric traffic through physical disc…
sanchuanhehe Oct 16, 2026
9cc1d47
docs(sparklink): retain real numeric Agent delivery and remaining tru…
sanchuanhehe Oct 16, 2026
5209e22
docs(sparklink): register bounded numeric Agent qualification and unp…
sanchuanhehe Oct 16, 2026
9dbc086
docs(sparklink): retain numeric Agent issue and CI receipts
sanchuanhehe Oct 16, 2026
691f40c
feat(sparklink): expose kernel-backed live connection security snapshots
sanchuanhehe Oct 16, 2026
13bb050
test(sparklink): observe current Session security around real Agent p…
sanchuanhehe Oct 16, 2026
6c8b254
test(sparklink): correlate live security epochs with captured ingress…
sanchuanhehe Oct 16, 2026
4c90283
docs(sparklink): retain real Session security snapshots and unproved …
sanchuanhehe Oct 16, 2026
ec6a481
docs(sparklink): register live mechanism qualification and remaining …
sanchuanhehe Oct 16, 2026
b9f9fd2
docs(sparklink): retain live security issue receipts and proof limits
sanchuanhehe Oct 16, 2026
73a2898
feat(sparklink): delegate fixed channels with explicit security requi…
sanchuanhehe Oct 16, 2026
02ac763
test(sparklink): require protected fd witnesses in positive security …
sanchuanhehe Oct 16, 2026
d7eabe8
test(sparklink): record real fixed-channel security grant delivery
sanchuanhehe Oct 16, 2026
24c6049
docs(sparklink): register scoped grant qualification and keep lifecyc…
sanchuanhehe Oct 16, 2026
25b9ae1
test(sparklink): retain ten plain-channel lifecycle gates on grant ke…
sanchuanhehe Oct 16, 2026
b6376f6
docs(sparklink): retain plain lifecycle qualification and open protec…
sanchuanhehe Oct 16, 2026
c51d8dd
test(sparklink): compose protected first bind with existing lifecycle…
sanchuanhehe Oct 16, 2026
390a634
fix(sparklink): account only verified security commands in lifecycle …
sanchuanhehe Oct 17, 2026
a5ddad0
test(sparklink): record protected lifecycle and complete long-message…
sanchuanhehe Oct 17, 2026
67f0cfb
docs(sparklink): qualify protected lifecycle and advance the sole SSA…
sanchuanhehe Oct 17, 2026
002c1c0
docs(sparklink): retain protected gate provenance and seven open issu…
sanchuanhehe Oct 17, 2026
3319502
feat(sparklink): bind the sole SSAP transport to a frozen security re…
sanchuanhehe Oct 17, 2026
f46f740
test(sparklink): audit the complete SMTC window before consuming evid…
sanchuanhehe Oct 17, 2026
0b1a306
test(sparklink): preserve protected SSAP delivery and the default Dow…
sanchuanhehe Oct 17, 2026
21e157d
test(sparklink): seal clean SSAP test identities separately from real…
sanchuanhehe Oct 17, 2026
52175f1
docs(sparklink): separate protected SSAP qualification from the faile…
sanchuanhehe Oct 17, 2026
8bda4e0
fix(sparklink): request SLE remote-user termination for native discon…
sanchuanhehe Oct 17, 2026
88aebcc
test(sparklink): qualify reason10 SSAP paths and retain the legacy co…
sanchuanhehe Oct 17, 2026
71efa05
docs(sparklink): retain the controller-side timeout timeline without …
sanchuanhehe Oct 17, 2026
5636d74
docs(sparklink): advance SSAP security while retaining unresolved tim…
sanchuanhehe Oct 17, 2026
f2a02d3
feat(sparklink): expose checked per-message receive security context
sanchuanhehe Oct 17, 2026
6251931
test(sparklink): verify receive context through the sole slktest loop
sanchuanhehe Oct 17, 2026
c8d219b
docs(sparklink): scope receipt security foundation and pending attrib…
sanchuanhehe Oct 17, 2026
4076e9e
docs(sparklink): seal real receive-context gates and bounded helper e…
sanchuanhehe Oct 17, 2026
96891fb
docs(sparklink): synchronize scoped RX qualification and open work
sanchuanhehe Oct 17, 2026
4de4295
feat(sparklink): pin SSAP responses to original receive security and …
sanchuanhehe Oct 17, 2026
b4ad7dc
test(sparklink): exercise real constrained replies and stale-intent r…
sanchuanhehe Oct 17, 2026
0a636f8
docs(sparklink): record restrictive TX and SSAP response acceptance b…
sanchuanhehe Oct 17, 2026
1865e58
docs(sparklink): seal constrained SSAP response qualification and fai…
sanchuanhehe Oct 17, 2026
e729be1
docs(sparklink): synchronize constrained-response qualification and r…
sanchuanhehe Oct 17, 2026
7d5716b
feat(sparklink): enforce per-attribute access on original SSAP receipts
sanchuanhehe Oct 17, 2026
d4a13e9
test(sparklink): corroborate attribute access on both physical USB en…
sanchuanhehe Oct 17, 2026
8565cd0
fix(verification): canonicalize the dependency-free Kani lock before …
sanchuanhehe Oct 17, 2026
82a60e4
fix(test): include the attribute verifier in hashed guest inputs
sanchuanhehe Oct 17, 2026
49a6488
fix(test): inspect the locked guest preparation function
sanchuanhehe Oct 17, 2026
81ae6be
test(ws73): seal six real attribute-access and data-path gates
sanchuanhehe Oct 17, 2026
6d1c37e
docs(sparklink): synchronize attribute qualification and original-sco…
sanchuanhehe Oct 17, 2026
3d32c92
docs(sparklink): record open issue readbacks and exact provenance repair
sanchuanhehe Oct 17, 2026
9fd74a1
test(sparklink): exercise cached TX intents through real lifecycle wo…
sanchuanhehe Oct 17, 2026
bf33498
docs(sparklink): pin current-artifact lifecycle matrix exit conditions
sanchuanhehe Oct 17, 2026
8362502
fix(test): distinguish expired-intent rejection from inactive Session…
sanchuanhehe Oct 17, 2026
69b7cce
test(sparklink): capture SDK110 platform replies and track firmware t…
sanchuanhehe Oct 17, 2026
82cb68a
test(sparklink): isolate mixed-board runtime adoption and verify HCC …
sanchuanhehe Oct 17, 2026
e513479
fix(sparklink): bind channel evidence budgets to each controller DLI …
sanchuanhehe Oct 17, 2026
7f8c39d
test(sparklink): include controller buffers in fairness evidence fixture
sanchuanhehe Oct 17, 2026
8c59cc3
docs(sparklink): seal scoped E/U110 HCC and real data evidence
sanchuanhehe Oct 17, 2026
0fcb378
docs(sparklink): synchronize scoped110 qualifications goal and open i…
sanchuanhehe Oct 17, 2026
ee8c4d2
fix(sparklink): normalize relative VM artifact roots before identity …
sanchuanhehe Oct 17, 2026
fd90795
docs(sparklink): seal30 real110 intent lifecycle gates and original t…
sanchuanhehe Oct 17, 2026
b01aee8
docs(sparklink): seal timed HCC new-kernel data regressions
sanchuanhehe Oct 17, 2026
ac52167
docs(sparklink): sync HCC110 qualified slices and remaining lifecycle…
sanchuanhehe Oct 17, 2026
35cae0c
docs(sparklink): seal SDK110 protected SSAP real delivery and authori…
sanchuanhehe Oct 17, 2026
d618c87
test(sparklink): add fail-closed VM ROM chip candidate observations
sanchuanhehe Oct 17, 2026
d4b681c
test(sparklink): retain ambiguous zero U observations without grantin…
sanchuanhehe Oct 17, 2026
0ab1f9d
test(sparklink): corroborate ROM chip bytes before explicit upload
sanchuanhehe Oct 17, 2026
0eddfaf
docs(sparklink): seal ROM strap comparisons with cold selection unproved
sanchuanhehe Oct 17, 2026
70c2543
fix(sparklink): retire unverifiable qualification bundles without era…
sanchuanhehe Oct 17, 2026
0317cc4
test(sparklink): run retirement guards through direct test entry
sanchuanhehe Oct 17, 2026
24c9149
style(sparklink): format SSAP access constant assertions
sanchuanhehe Oct 17, 2026
3ab2068
docs(sparklink): integrate ROM candidate limits and source-bound qual…
sanchuanhehe Oct 17, 2026
6be14aa
feat(sparklink): bind SSAP local authorization to service owners and …
sanchuanhehe Oct 17, 2026
881987f
test(sparklink): exercise owned SSAP policies through the real VM path
sanchuanhehe Oct 17, 2026
c6f9d8b
test(sparklink): define service-only policy group in the guest root
sanchuanhehe Oct 17, 2026
b2adb23
docs(sparklink): seal new-artifact owned SSAP and length regression e…
sanchuanhehe Oct 17, 2026
12c58b5
docs(sparklink): integrate owned SSAP qualification and remaining lif…
sanchuanhehe Oct 17, 2026
a2f4a71
test(sparklink): qualify service-only SSAP ownership on the guest sys…
sanchuanhehe Oct 17, 2026
d795a3a
fix(sparklink): keep SSAP terminal approval tokens unique across conn…
sanchuanhehe Oct 17, 2026
cd35db3
fix(sparklink): retire false power and legacy metadata Bond interfaces
sanchuanhehe Oct 17, 2026
0568a3d
test(sparklink): give the service-only CLI its own input pipe
sanchuanhehe Oct 17, 2026
e28d1ab
fix(sparklink): preserve administrator configuration during uninstall
sanchuanhehe Oct 17, 2026
7216270
docs(sparklink): align manuals with owned services and retired state
sanchuanhehe Oct 17, 2026
9fa8359
docs(sparklink): seal retirement and owned-service VM regression evid…
sanchuanhehe Oct 17, 2026
748aabb
test(sparklink): enforce default production dependency direction
sanchuanhehe Oct 17, 2026
1403659
docs(sparklink): reconcile retirement qualification and adopt the thr…
sanchuanhehe Oct 17, 2026
6aadcb4
fix(sparklink): bound discovery observations and retry owned object p…
sanchuanhehe Oct 17, 2026
213e245
docs(sparklink): seal exact R2 observation preservation evidence
sanchuanhehe Oct 17, 2026
1709d70
docs(sparklink): bind R2 qualification and sequence architecture migr…
sanchuanhehe Oct 17, 2026
17ed95f
refactor(sparklink): isolate authorized channel operations from proto…
sanchuanhehe Oct 17, 2026
82109ac
refactor(sparklink): move Native operations and consumers to their ow…
sanchuanhehe Oct 17, 2026
f61cd34
docs(sparklink): seal exact channel boundary preservation qualification
sanchuanhehe Oct 17, 2026
edb8f25
docs(sparklink): reconcile exact Channel qualification and remaining …
sanchuanhehe Oct 17, 2026
b0f69b8
refactor(sparklink): enforce application and Native client boundaries
sanchuanhehe Oct 17, 2026
6d30c0f
fix(sparklink): isolate selected controller admission in application …
sanchuanhehe Oct 17, 2026
5b65a74
docs(sparklink): seal new application SDK path qualification
sanchuanhehe Oct 17, 2026
8ff1f68
docs(sparklink): clarify unsealed migration failure provenance
sanchuanhehe Oct 17, 2026
e306c81
docs(sparklink): reconcile SDK qualification and consolidate retireme…
sanchuanhehe Oct 17, 2026
98c4b65
refactor(sparklink): retire controller-wide security facades across c…
sanchuanhehe Oct 17, 2026
6434055
refactor(sparklink): retire legacy SSAP facades across production cal…
sanchuanhehe Oct 17, 2026
d99e6cc
test(sparklink): seal exact controller-security retirement regression
sanchuanhehe Oct 17, 2026
b112b61
docs(sparklink): register exact R4a qualification and active R4b gates
sanchuanhehe Oct 17, 2026
1e1b90e
test(sparklink): seal SSAP facade retirement and preserved real paths
sanchuanhehe Oct 17, 2026
ba4c0dd
docs(sparklink): register exact SSAP retirement qualification and rem…
sanchuanhehe Oct 17, 2026
6841e4e
refactor(sparklink): retire mixed Native event and unused daemon Prof…
sanchuanhehe Oct 17, 2026
9298a74
test(sparklink): seal exact Native event retirement regression
sanchuanhehe Oct 17, 2026
5a961ba
fix(sparklink): derive registration count from Core bitmap and preser…
sanchuanhehe Oct 17, 2026
7927f8f
docs(sparklink): register event retirement qualification and active N…
sanchuanhehe Oct 17, 2026
997ea19
refactor(sparklink): retire unsupported Native controls and their pro…
sanchuanhehe Oct 17, 2026
b4fdec7
test(sparklink): seal R4d Native retirement device evidence
sanchuanhehe Oct 17, 2026
0a7a605
docs(sparklink): synchronize R4d qualification and kernel retirement …
sanchuanhehe Oct 17, 2026
23f1da7
test(sparklink): compare actual C exports with independent headers
sanchuanhehe Oct 17, 2026
ef746cb
test(sparklink): seal exact kernel registry retirement gates
sanchuanhehe Oct 17, 2026
9e5813c
docs(sparklink): bind selected qualification and retire progress narr…
sanchuanhehe Oct 17, 2026
f93caf7
test(sparklink): seal typed command retirement device gates
sanchuanhehe Oct 17, 2026
c032da7
docs(sparklink): select exact typed command retirement qualification
sanchuanhehe Oct 17, 2026
c9c0b9f
test(sparklink): seal DLI metadata retirement preservation gates
sanchuanhehe Oct 17, 2026
55e0874
docs(sparklink): bind DLI retirement qualification and remaining arch…
sanchuanhehe Oct 17, 2026
8a648bf
fix(sparklink): reject independent nested qualification identities
sanchuanhehe Oct 17, 2026
2b42f6a
test(sparklink): seal controller fault and preservation gate identities
sanchuanhehe Oct 17, 2026
2bd9873
docs(sparklink): qualify critical fault slice and retain architecture…
sanchuanhehe Oct 17, 2026
d7fd1ed
test(sparklink): seal event and registry retirement gate identities
sanchuanhehe Oct 17, 2026
811ae67
docs(sparklink): select event retirement gates and schedule full ABI …
sanchuanhehe Oct 17, 2026
8e849d1
test(sparklink): retain parser budget dependency counterexample
sanchuanhehe Oct 17, 2026
061a0a6
fix(sparklink): downgrade the parser budget aggregate qualification
sanchuanhehe Oct 17, 2026
23132b1
test(sparklink): seal corrected parser dependency proof scope
sanchuanhehe Oct 17, 2026
5692a78
docs(sparklink): select corrected dependency qualification without re…
sanchuanhehe Oct 17, 2026
2c8e05c
refactor(sparklink): privatize retired raw layouts and migrate VM cal…
sanchuanhehe Oct 17, 2026
9d50a07
docs(sparklink): align architecture execution and raw ABI exit gates
sanchuanhehe Oct 17, 2026
29268b7
test(sparklink): bind retired syscall receipts to actual VM artifacts
sanchuanhehe Oct 17, 2026
a7450b0
test(sparklink): seal exact raw ABI retirement and preservation evidence
sanchuanhehe Oct 17, 2026
9f2b5d3
docs(sparklink): select scoped retirement evidence and advance archit…
sanchuanhehe Oct 17, 2026
5ef32b9
fix(ci): supply actual multilib witnesses and format retired layout gaps
sanchuanhehe Oct 17, 2026
a37c4cb
refactor(sparklink): route remote SSAP CLI through the existing appli…
sanchuanhehe Oct 17, 2026
0f98c5e
test(sparklink): seal application-client peer evidence without wideni…
sanchuanhehe Oct 17, 2026
7ec5803
docs(sparklink): bind client qualification and retain full architectu…
sanchuanhehe Oct 17, 2026
e3b5aa0
docs(sparklink): retain maintenance receipts and scope remaining call…
sanchuanhehe Oct 17, 2026
81d33ea
refactor(sparklink): pin controller management callers to the existin…
sanchuanhehe Oct 17, 2026
4736dd2
fix(sparklink): reject foreign Peer paths before touching another con…
sanchuanhehe Oct 17, 2026
7f15621
test(sparklink): seal controller client VM preservation and owner cou…
sanchuanhehe Oct 17, 2026
4772063
docs(sparklink): bind management qualification and typed observation …
sanchuanhehe Oct 17, 2026
0fe37cb
refactor(sparklink): unify bounded typed Peer observations and retire…
sanchuanhehe Oct 17, 2026
8aa7dbd
test(sparklink): migrate live connection observations and retain firs…
sanchuanhehe Oct 17, 2026
9f815f9
test(sparklink): seal typed Peer SDK and canonical lifecycle VM evidence
sanchuanhehe Oct 17, 2026
7945950
docs(sparklink): bind Peer qualification and retain remaining archite…
sanchuanhehe Oct 17, 2026
931f035
docs(sparklink): retain Peer maintenance receipts and remaining calle…
sanchuanhehe Oct 17, 2026
bcd7cd0
fix(sparklink): share terminal daemon scope and migrate local staging…
sanchuanhehe Oct 17, 2026
41ae994
refactor(sparklink): route Owned and Agent clients through one broker…
sanchuanhehe Oct 17, 2026
26813e4
fix(sparklink): qualify CLI approval with the existing secured channe…
sanchuanhehe Oct 17, 2026
7a2ed4f
test(sparklink): seal real Owned and Agent client qualification
sanchuanhehe Oct 17, 2026
1894642
chore(sparklink): bind current qualification views to the sealed clie…
sanchuanhehe Oct 17, 2026
de7af3b
docs(sparklink): retain client qualification maintenance and open iss…
sanchuanhehe Oct 17, 2026
dd72c58
fix(sparklink): unify deployment layout and explicit SDK library iden…
sanchuanhehe Oct 17, 2026
4008c55
fix(sparklink): load runtime SDK ABI majors and retain deployment gat…
sanchuanhehe Oct 17, 2026
668adeb
test(sparklink): preflight actual embedded deployment probes
sanchuanhehe Oct 17, 2026
9214562
test(sparklink): seal clean-VM deployment and installed SDK evidence
sanchuanhehe Oct 17, 2026
3ad0fde
docs(sparklink): register bounded deployment qualification and remain…
sanchuanhehe Oct 17, 2026
9ce9e2a
fix(sparklink): use installed Cargo throughout Debian package cleanup
sanchuanhehe Oct 17, 2026
6cbf6ed
test(sparklink): enforce real unprivileged config read failures under…
sanchuanhehe Oct 17, 2026
247e3a9
fix(sparklink): create packaged roles before service activation and p…
sanchuanhehe Oct 17, 2026
3273a8a
test(sparklink): seal actual package roles SDK and removal evidence
sanchuanhehe Oct 17, 2026
492bfef
docs(sparklink): register actual package qualification and remaining …
sanchuanhehe Oct 17, 2026
40c4757
feat(sparklink): share the application broker client with C and Python
sanchuanhehe Oct 17, 2026
8e50dde
test(sparklink): retain actual cross-language client execution materials
sanchuanhehe Oct 17, 2026
8675518
test(sparklink): reject unexpected application consumer diagnostics
sanchuanhehe Oct 17, 2026
f0c9d82
docs(sparklink): seal the finite application-language client regression
sanchuanhehe Oct 17, 2026
1d8932b
fix(sparklink): stage canonical runtime ABI names in the native VM
sanchuanhehe Oct 17, 2026
4f59fb5
docs(sparklink): align client qualification and remaining architectur…
sanchuanhehe Oct 17, 2026
5bfe6fa
test(sparklink): exercise public C and Python clients through real ch…
sanchuanhehe Oct 17, 2026
ccc5953
fix(sparklink): verify the image before checking application client p…
sanchuanhehe Oct 17, 2026
59b0faf
test(sparklink): use the qualified SDK110 connection posture explicitly
sanchuanhehe Oct 17, 2026
7817ccf
fix(sparklink): freeze the staged SDK environment for real client probes
sanchuanhehe Oct 17, 2026
3ff5296
fix(sparklink): wrap delegated Python datagrams without address autod…
sanchuanhehe Oct 17, 2026
d7abc65
test(sparklink): receive client data through the shared channel recei…
sanchuanhehe Oct 17, 2026
004c746
docs(sparklink): resolve the retained Python receive failure source i…
sanchuanhehe Oct 17, 2026
40f50cf
docs(sparklink): seal real C and Python application client delivery
sanchuanhehe Oct 17, 2026
3194342
docs(sparklink): seal exact-artifact original channel preservation gates
sanchuanhehe Oct 17, 2026
33621dc
docs(sparklink): reconcile architecture remediation and exact SDK qua…
sanchuanhehe Oct 17, 2026
22cd8cb
feat(sparklink): share pinned connection views across C and Python SS…
sanchuanhehe Oct 17, 2026
f7c5c68
docs(sparklink): seal pinned C and Python connection client offline s…
sanchuanhehe Oct 17, 2026
c440189
docs(sparklink): register bounded connection client checks and remain…
sanchuanhehe Oct 17, 2026
17b4abb
test(sparklink): route real SSAP gates through the public C and Pytho…
sanchuanhehe Oct 18, 2026
537c93a
docs(sparklink): seal real C and Python SSAP delivery through the sha…
sanchuanhehe Oct 18, 2026
071ea73
test(sparklink): retain the original channel collector exception trac…
sanchuanhehe Oct 18, 2026
133497b
docs(sparklink): seal exact-artifact preservation and retain the unre…
sanchuanhehe Oct 18, 2026
48688df
docs(sparklink): reconcile shared-client real evidence without promot…
sanchuanhehe Oct 18, 2026
a6b968d
test(sparklink): exercise the shared application clients without mana…
sanchuanhehe Oct 18, 2026
a421470
test(sparklink): seal role request permissions before publishing the …
sanchuanhehe Oct 18, 2026
6dafd78
docs(sparklink): retain the real application-only GetInfo denial and …
sanchuanhehe Oct 18, 2026
fa31031
fix(sparklink): allow application channel clients to observe their co…
sanchuanhehe Oct 18, 2026
dff8238
docs(sparklink): seal application-only SDK delivery and exact-artifac…
sanchuanhehe Oct 18, 2026
2c9566e
docs(sparklink): reconcile actual application roles and the remaining…
sanchuanhehe Oct 18, 2026
81bd754
refactor(sparklink): keep privileged channel creation in Native and w…
sanchuanhehe Oct 18, 2026
81d031b
test(sparklink): seal exact Native creator migration evidence
sanchuanhehe Oct 18, 2026
aa46ae4
docs(sparklink): reconcile Native migration and remaining architectur…
sanchuanhehe Oct 18, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .agents/skills/sparklink-compliance-audit/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ cd ~/Documents/sparklink && cargo test --workspace 2>&1 | grep 'test result'

## 步骤 5:输出格式

### 标准型输出(写入 `docs/AUDIT.md`)
### 标准型输出(写入 `history/cleanup/audit.md`)

```markdown
## 审计日期:YYYY-MM-DD
Expand Down
8 changes: 4 additions & 4 deletions .agents/skills/sparklink-kernel-dev/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -268,7 +268,7 @@ Tests: N passed."
| `data/dbus/sparklink.conf` | D-Bus 策略文件 |
| `data/udev/99-sparklink.rules` | udev 规则 |
| `data/pkgconfig/sparklink.pc` | pkg-config 文件 |
| `docs/API.md` | ioctl 参考(126 命令) |
| `docs/ARCHITECTURE.md` | 架构总览 |
| `docs/AUDIT.md` | 覆盖率审计 |
| `docs/BLUEZ_COMPARISON.md` | BlueZ 对比分析 |
| `project/reference/management/api.md` | 历史 API 索引;当前接口以源码和能力入口为准 |
| `project/architecture.md` | 架构总览 |
| `history/cleanup/audit.md` | 覆盖率审计 |
| `project/reference/architecture/bluez-comparison.md` | BlueZ 对比分析 |
12 changes: 12 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
## 行为与契约

说明本批生产行为、受影响读者任务、接口/权限/生命周期或配置变化。

## 文档与验收

- 同批更新对应参考、指南、绑定/CLI/man/示例;无文档影响时说明原因。
- 记录本批必要门禁的准确源码、命令、结果、限定范围、未执行项及剩余条件。
- 文档/静态/形式化与真实设备结果分开;保持 VM-only 和历史失败证据。
- 更新唯一计划、资格记录及关联 issues;部分成果不关闭整项。

持续维护规则见 [AGENTS.md](../AGENTS.md)。
225 changes: 217 additions & 8 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,13 @@ jobs:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- run: cargo check --workspace
- name: Default/all-features production boundaries and retired entry guard
run: |
python3 -m unittest discover -s tools/tests -p test_production_dependencies.py -v
python3 tools/check_production_dependencies.py
python3 -m unittest discover -s tools/tests -p test_retired_interfaces.py -v
python3 tools/check_retired_interfaces.py
- run: cargo check --locked --workspace --all-targets --all-features

test:
name: cargo test
Expand All @@ -28,7 +34,37 @@ jobs:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- run: cargo test --workspace
- name: Install private D-Bus regression dependency
run: sudo apt-get update && sudo apt-get install -y dbus-daemon
- name: Test workspace and export actual local application reports
env:
SLKTEST_REPORT_FIXTURE_DIR: ${{ runner.temp }}/slktest-report-fixtures
SPARKLINK_APPLICATION_FFI_ARTIFACT_DIR: ${{ runner.temp }}/application-client-fixtures
run: cargo test --locked --workspace --all-features
- name: Independently check actual production schema2 reports (AF_UNIX only)
env:
PYTHONPATH: tools
run: |
python3 -m unittest discover -s tools/tests -p test_ws73_benchmark.py -v
for mode in rate window duplex; do
python3 tools/ws73_benchmark.py --fixture --left "$RUNNER_TEMP/slktest-report-fixtures/$mode-0.json" --right "$RUNNER_TEMP/slktest-report-fixtures/$mode-1.json" --output "$RUNNER_TEMP/slktest-report-fixtures/$mode-check.json"
done
- name: Retain local report fixtures; not performance or hardware qualification
if: always()
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
with:
name: slktest-local-reports-not-performance-qualification
path: ${{ runner.temp }}/slktest-report-fixtures
if-no-files-found: error
retention-days: 14
- name: Retain actual C/Python consumer executable and outputs; not device qualification
if: always()
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
with:
name: application-client-private-bus-not-device-qualification
path: ${{ runner.temp }}/application-client-fixtures
if-no-files-found: error
retention-days: 14

clippy:
name: clippy
Expand All @@ -40,7 +76,7 @@ jobs:
with:
components: clippy
- uses: Swatinem/rust-cache@v2
- run: cargo clippy --workspace -- -W clippy::all
- run: cargo clippy --locked --workspace --all-targets --all-features -- -W clippy::all

fmt:
name: rustfmt
Expand All @@ -60,12 +96,17 @@ jobs:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- run: cargo install cbindgen --locked
- run: cargo install cbindgen --version 0.29.4 --locked
- name: Generate sparklink.h
working-directory: crates/libsparklink
run: cbindgen --config cbindgen.toml --crate libsparklink --output /tmp/sparklink.h
- name: Verify header unchanged
run: diff -u crates/libsparklink/include/sparklink.h /tmp/sparklink.h
- name: Generate Native header
working-directory: crates/slk-native
run: cbindgen --config cbindgen.toml --crate slk-native --output /tmp/sparklink_native.h
- name: Verify independent Native header
run: diff -u crates/slk-native/include/sparklink_native.h /tmp/sparklink_native.h

build-release:
name: release build
Expand All @@ -75,7 +116,7 @@ jobs:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- run: cargo build --release --workspace
- run: cargo build --locked --release --workspace
- name: Upload binaries
uses: actions/upload-artifact@v4
with:
Expand All @@ -84,19 +125,187 @@ jobs:
target/release/slkd
target/release/slkconfig
target/release/slctl
target/release/slktest
target/release/slkmon
target/release/slkdump
target/release/libsparklink.so
target/release/liblibsparklink.so
target/release/libslk_native.so
retention-days: 14

python-check:
name: Python binding lint
name: Python bindings and kernel ABI conformance
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- name: Check out matching canonical kernel UAPI
uses: actions/checkout@v4
with:
repository: OpenSparklink/linux
# Update this pin together with intentional kernel UAPI changes.
ref: 2fc210af68ee3bce0eed3553117d8be635dfdd15
path: .kernel-uapi
sparse-checkout: |
include/uapi/linux/sparklink_ioctl.h
include/uapi/linux/sparklink.h
include/uapi/linux/sparklink_socket.h
sparse-checkout-cone-mode: false
- uses: dtolnay/rust-toolchain@stable
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Prepare 32-bit header compilation and actual cdylib
run: |
sudo apt-get update
sudo apt-get install -y gcc-multilib
cargo build --locked -p libsparklink -p slk-native --lib
- name: Compare both actual cdylib exports with their independent public headers
run: |
PYTHONPATH=tools python3 -m unittest discover -s tools/tests -p test_public_symbols.py -v
python3 tools/check_public_symbols.py --application-library target/debug/liblibsparklink.so --native-library target/debug/libslk_native.so
- name: Compare actual C and broker socket v2/v3 layout
run: CC=cc python tools/channel_socket_contract.py --kernel .kernel-uapi
- run: python -m py_compile bindings/python/sparklink/__init__.py
- run: python -m py_compile bindings/python/sparklink/structs.py
- run: python -m py_compile bindings/python/sparklink/adapter.py
- run: python -m compileall -q bindings/python/sparklink
- run: python -m py_compile bindings/python/sparklink/native.py
- name: Run Python unit and compiled C/Rust ABI tests
env:
PYTHONPATH: bindings/python
LIBSPARKLINK_PATH: ${{ github.workspace }}/target/debug/liblibsparklink.so
LIBSLK_NATIVE_PATH: ${{ github.workspace }}/target/debug/libslk_native.so
SPARKLINK_KERNEL_UAPI: ${{ github.workspace }}/.kernel-uapi/include/uapi/linux/sparklink_ioctl.h
SPARKLINK_KERNEL_SOURCE: ${{ github.workspace }}/.kernel-uapi
run: python -m unittest discover -s bindings/python/tests -v

tooling-test:
name: WS73 tooling and evidence validation (no hardware)
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- name: Check out matching kernel lab helpers
uses: actions/checkout@v4
with:
repository: OpenSparklink/linux
ref: 2fc210af68ee3bce0eed3553117d8be635dfdd15
path: .kernel-tools
# Raw worker ioctls also compile against the canonical pinned UAPI.
sparse-checkout: |
tools/testing/selftests/sparklink
include/uapi/linux
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- run: python -m unittest discover -s tools/tests -v
env:
SPARKLINK_KERNEL_SOURCE: ${{ github.workspace }}/.kernel-tools

kernel-containment:
name: Kernel crypto/wire and archived protocol boundaries
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
with:
path: .registration-contract
sparse-checkout: tools/backend_registration_contract.py
- uses: actions/checkout@v4
with:
repository: OpenSparklink/linux
ref: 2fc210af68ee3bce0eed3553117d8be635dfdd15
path: .kernel-containment
sparse-checkout: |
net/sparklink
drivers/sparklink
include/linux/sparklink_connection.h
include/linux/sparklink_backend.h
include/linux/sparklink_native.h
include/trace/events/sparklink.h
include/linux/sparklink_usb.h
include/linux/sparklink_discovery.h
tools/testing/selftests/sparklink
include/uapi/linux/sparklink_ioctl.h
include/uapi/linux/sparklink.h
include/uapi/linux/sparklink_socket.h
- uses: dtolnay/rust-toolchain@stable
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Check actual common Backend descriptor admission
working-directory: .kernel-containment
run: |
cc -std=c11 -Wall -Wextra -Werror -I include tools/testing/selftests/sparklink/sparklink_backend_test.c -o /tmp/sparklink-backend-test
/tmp/sparklink-backend-test
- name: Install compiler and sanitizer runtimes
run: sudo apt-get update && sudo apt-get install -y clang gcc-multilib
- name: Check actual registration rejects before following ops
run: python .registration-contract/tools/backend_registration_contract.py --kernel .kernel-containment
- name: Check actual WS73 DLI and security envelopes (synthetic only)
working-directory: .kernel-containment
run: |
clang -std=gnu11 -Wall -Wextra -Werror -O1 -g -fsanitize=address,undefined tools/testing/selftests/sparklink/ws73_dli_test.c drivers/sparklink/ws73/wire.c drivers/sparklink/ws73/dli.c -o /tmp/ws73-dli-test
/tmp/ws73-dli-test
- name: Execute actual source failure boundaries (not RF or crypto vectors)
working-directory: .kernel-containment
env:
CC: clang
run: |
python tools/testing/selftests/sparklink/run_security_remediation.py
python tools/testing/selftests/sparklink/run_crypto_mechanism_faults.py
python tools/testing/selftests/sparklink/run_security_relay.py
python tools/testing/selftests/sparklink/run_backend_containment.py
python tools/testing/selftests/sparklink/run_connection_tx.py
python tools/testing/selftests/sparklink/run_native_connection_contract.py
python tools/testing/selftests/sparklink/run_runtime_ingress.py
python tools/testing/selftests/sparklink/run_snoop_redaction.py
python tools/testing/selftests/sparklink/run_usb_registration.py
python tools/testing/selftests/sparklink/run_native_data.py
python tools/testing/selftests/sparklink/run_native_ticket_driver.py
python tools/testing/selftests/sparklink/run_native_ticket_driver.py --command
python tools/testing/selftests/sparklink/run_session_dispatch.py
python tools/testing/selftests/sparklink/run_session_wake.py
clang -O2 -std=c11 -Wall -Wextra -Werror tools/testing/selftests/sparklink/sle_channel_table_test.c -o /tmp/sle-channel-table-test
/tmp/sle-channel-table-test
clang -std=c11 -Wall -Wextra -Werror -fsanitize=address,undefined -fno-omit-frame-pointer tools/testing/selftests/sparklink/ws73_acb_test.c drivers/sparklink/ws73/wire.c -o /tmp/ws73-acb-test
/tmp/ws73-acb-test
clang -std=c11 -Wall -Wextra -Werror -fsanitize=address,undefined tools/testing/selftests/sparklink/sle_channel_wire_test.c net/sparklink/sle_channel_wire.c -o /tmp/sle-channel-wire-test
/tmp/sle-channel-wire-test
clang -std=c11 -Wall -Wextra -Werror -fsanitize=address,undefined tools/testing/selftests/sparklink/sle_channel_signal_test.c net/sparklink/sle_channel_wire.c -o /tmp/sle-channel-signal-test
/tmp/sle-channel-signal-test
python tools/testing/selftests/sparklink/run_ssap_containment.py
python tools/testing/selftests/sparklink/run_event_copy.py
python tools/testing/selftests/sparklink/run_phy_model.py
CC=clang python tools/testing/selftests/sparklink/run_raw_uapi_retirement.py
python tools/testing/selftests/sparklink/run_power_retirement.py --output /tmp/power-retirement
python tools/testing/selftests/sparklink/run_diagnostic_result.py
python tools/testing/selftests/sparklink/run_management_release.py
python tools/testing/selftests/sparklink/run_link_observation.py
python tools/testing/selftests/sparklink/run_usb_firmware.py
python tools/testing/selftests/sparklink/run_usb_discovery.py
python tools/testing/selftests/sparklink/run_backend_command_port.py
python tools/testing/selftests/sparklink/run_usb_bootstrap_metadata.py
python tools/testing/selftests/sparklink/run_usb_binding.py
python tools/testing/selftests/sparklink/run_standard_provider.py
python tools/testing/selftests/sparklink/run_standard_driver.py
cc -std=gnu11 -Wall -Wextra -Werror -fsanitize=address,undefined -I include tools/testing/selftests/sparklink/virtual_codec_test.c -o /tmp/sparklink-virtual-codec-test
/tmp/sparklink-virtual-codec-test
python tools/testing/selftests/sparklink/run_usb_codec_isolation.py
python tools/testing/selftests/sparklink/run_backend_bus.py
python tools/testing/selftests/sparklink/run_backend_install.py
python tools/testing/selftests/sparklink/run_backend_pending_driver.py
- name: Check complete ioctl authorization and queue contracts
working-directory: .kernel-containment
run: |
python -m unittest discover -s tools/testing/selftests/sparklink -p test_authorization_contract.py -v
python -m unittest discover -s tools/testing/selftests/sparklink -p test_daemon_lifecycle.py -v
python3 tools/testing/selftests/sparklink/run_host_plan.py
clang -std=c11 -O2 -Wall -Wextra -Werror tools/testing/selftests/sparklink/kernel_authorization_test.c -o /tmp/kernel-authorization-probe
- name: Check pinned QEMU host test boundaries (no live USB or guest execution)
working-directory: .kernel-containment
run: |
curl --fail --location --retry 3 --output "$RUNNER_TEMP/qemu-9.2.0.tar.xz" https://download.qemu.org/qemu-9.2.0.tar.xz
python tools/testing/selftests/sparklink/qemu-sle-dli/run-usb-host-boundaries.py --archive "$RUNNER_TEMP/qemu-9.2.0.tar.xz" --cc clang --output "$RUNNER_TEMP/qemu-host-boundaries"
python tools/testing/selftests/sparklink/qemu-sle-dli/check-ws73-model-hold.py --cc clang --sanitize --output "$RUNNER_TEMP/qemu-model-hold-boundaries"
- name: Compile live VFS probe (not executed without a qualified VM)
working-directory: .kernel-containment
run: |
clang -std=c11 -O2 -Wall -Wextra -Werror tools/testing/selftests/sparklink/sparklink_event_copy_test.c -o /tmp/event-copy-probe
clang -std=c11 -O2 -Wall -Wextra -Werror tools/testing/selftests/sparklink/sparklink_diagnostic_result_test.c -o /tmp/diagnostic-result-probe
63 changes: 63 additions & 0 deletions .github/workflows/codec-fuzz.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
name: Production codec bounded fuzz

on:
push:
branches: [master, codex/sparklink-ws73]
paths: ['.github/workflows/codec-fuzz.yml']
pull_request:
paths: ['.github/workflows/codec-fuzz.yml']
schedule:
- cron: '41 3 * * *'
workflow_dispatch:

permissions:
contents: read

jobs:
ws73-codec:
name: WS73 production C corpus and bounded sanitizer exploration
runs-on: ubuntu-24.04
timeout-minutes: 15
env:
CC: clang-18
LLVM_PROFDATA: llvm-profdata-18
LLVM_COV: llvm-cov-18
FUZZ_RUNS: ${{ github.event_name == 'schedule' && '100000' || '20000' }}
steps:
- uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4
with:
repository: OpenSparklink/linux
# Review/bump with changes to these production codecs or the harness.
# This is an explicit source pin; it does not silently follow a branch.
ref: 400bd6812608935e2845d6d2b80ec58e7a6a6415
path: kernel
sparse-checkout: |
drivers/sparklink/ws73/wire.c
drivers/sparklink/ws73/wire.h
drivers/sparklink/ws73/dli.c
drivers/sparklink/ws73/dli.h
drivers/sparklink/ws73/bsle.h
net/sparklink/sle_channel_wire.c
net/sparklink/sle_channel_wire.h
tools/testing/selftests/sparklink/channel
tools/testing/selftests/sparklink/run_ws73_codec_fuzz.py
tools/testing/selftests/sparklink/fuzz
sparse-checkout-cone-mode: false
- name: Install named compiler and matching coverage/sanitizer tools
run: sudo apt-get update && sudo apt-get install -y clang-18 llvm-18 libclang-rt-18-dev binutils
- name: Check supervisor negative controls
run: python3 kernel/tools/testing/selftests/sparklink/fuzz/test_ws73_codec_verdict.py
- name: Replay fixed corpus and explore (not a proof or hardware qualification)
run: python3 kernel/tools/testing/selftests/sparklink/run_ws73_codec_fuzz.py --output fuzz-result --runs "$FUZZ_RUNS" --seed 730111
- name: Replay and explore actual dynamic CMTC codec
run: python3 kernel/tools/testing/selftests/sparklink/run_ws73_codec_fuzz.py --contract cmtc --output cmtc-fuzz-result --runs "$FUZZ_RUNS" --seed 730111
- name: Preserve all results, failures, corpus and coverage
if: always()
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
with:
name: bounded-codec-fuzz-not-hardware-qualification
path: |
fuzz-result/
cmtc-fuzz-result/
if-no-files-found: error
retention-days: 14
Loading
Loading