Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
253 commits
Select commit Hold shift + click to select a range
953e6dc
docs(agent-identity): close three RFC 9421 gaps a .NET authority woul…
CBenoit Oct 20, 2026
dcdcd4a
docs(agent-identity): keep only the conformance claim in the contract
CBenoit Oct 20, 2026
fd86a92
docs(agent-identity): drop the conformance section from the contract
CBenoit Oct 20, 2026
4cfe4f5
docs(agent-identity): move the shared vectors out of the contract
CBenoit Oct 20, 2026
fd727bc
docs(agent-identity): fix friendly-name citations after the move
CBenoit Oct 20, 2026
e33ef6e
build(agent): forbid infallible signing in device-key and its signer …
CBenoit Oct 20, 2026
8469014
fix(agent): refuse hard-linked device key files
CBenoit Oct 20, 2026
0e597dc
fix(agent): serialize machine-key creation across processes
CBenoit Oct 20, 2026
bd6a67c
docs(agent-identity): record the DVLS intent grill
CBenoit Oct 20, 2026
4489ec0
docs(agent-identity): settle the signature-profile readings
CBenoit Oct 20, 2026
4bb5b80
docs(agent-identity): require canonical keyid and nonce encodings
CBenoit Oct 20, 2026
d122f20
docs(agent-identity): state that notBefore is not checked
CBenoit Oct 20, 2026
980d8f4
docs(agent-identity): settle the library lead's parsing questions
CBenoit Oct 20, 2026
8e2c2e1
docs(agent-identity): settle the renewal runner's questions
CBenoit Oct 20, 2026
40ee01e
docs(agent-identity): settle the DVLS lead's questions
CBenoit Oct 20, 2026
7603eab
docs(agent-identity): anchor renewal where the agent got the certificate
CBenoit Oct 20, 2026
d988ae6
docs(agent-identity): authenticate a token by its secret alone
CBenoit Oct 20, 2026
067e453
docs(agent-identity): leave DVLS management routes to its public API
CBenoit Oct 20, 2026
2ee0d13
docs(agent-identity): keep attributes out of the agent's CSR
CBenoit Oct 20, 2026
03a6445
docs(agent-identity): spell the agent CSR's empty attribute set
CBenoit Oct 20, 2026
3d8ad6b
docs(agent-identity): tolerate an empty extensionRequest at the server
CBenoit Oct 20, 2026
1958060
docs(agent-identity): keep the newest expired pending key on repeated…
CBenoit Oct 20, 2026
f0fc71a
test(agent-identity-mock): align with identity contract
CBenoit Oct 20, 2026
838e27e
docs(agent-identity-mock): cite governing sections
CBenoit Oct 20, 2026
eb24322
fix(agent): name the authority's record an identity
CBenoit Oct 20, 2026
af29f93
refactor(agent): gather Agent Identity in the identity module
CBenoit Oct 20, 2026
6ec7280
fix(agent): keep an identity whose current key is lost
CBenoit Oct 20, 2026
d7063f3
feat(agent): stop Agent Identity on an unavailable key backend
CBenoit Oct 20, 2026
56e63cd
fix(agent): treat an unsupported config version as transient
CBenoit Oct 20, 2026
d10c909
build(agent): embed the Event Log catalog in every Windows build
CBenoit Oct 20, 2026
7f0616d
test(agent): check the identity key-backend event's catalog message
CBenoit Oct 20, 2026
7bc75e1
fix(agent): bind the machine-key creation lock to the caller's account
CBenoit Oct 20, 2026
01afe60
test(agent): tolerate timer granularity in the creation-wait test
CBenoit Oct 20, 2026
16b531a
test(agent-identity-conformance): align suite with identity contract
CBenoit Oct 20, 2026
6bd480a
test(agent-identity-conformance): drop issuer profile and over-strict…
CBenoit Oct 20, 2026
012d183
feat(agent-identity-mock): replicate DVLS identity statuses and permi…
CBenoit Oct 20, 2026
351d353
test(agent-identity): isolate signature vectors and cover the settled…
CBenoit Oct 20, 2026
2412820
test(agent-identity-conformance): check unsupported config versions
CBenoit Oct 20, 2026
182f0ea
feat(agent-identity-mock): add config version fault
CBenoit Oct 20, 2026
51c8766
fix(agent-identity-mock): accept a certificate through its notAfter
CBenoit Oct 20, 2026
0e140d2
feat(agent-identity-mock): answer unexpected failures with unavailable
CBenoit Oct 20, 2026
54da0a9
fix(agent-identity-mock): apply the request parsing rules
CBenoit Oct 20, 2026
5e274b6
fix(agent-identity-mock): open a channel stream at its certificate's …
CBenoit Oct 20, 2026
0109c5b
fix(agent-identity-mock): authenticate only the issued token string
CBenoit Oct 20, 2026
b795056
fix(agent-identity-mock): authenticate a token by its secret text alone
CBenoit Oct 20, 2026
e5313ee
fix(agent-identity): send a CSR with no attributes
CBenoit Oct 20, 2026
ee44b1d
test(agent-identity): pin the CSR's empty attributes encoding
CBenoit Oct 20, 2026
b55c898
test(agent-identity): drop attributes from the valid CSR vector
CBenoit Oct 20, 2026
c584fcb
test(agent-identity-conformance): reach DVLS's management API only th…
CBenoit Oct 20, 2026
e2b7e3c
test(agent-identity-conformance): require only the management API mem…
CBenoit Oct 20, 2026
9169d6f
test(agent-identity-conformance): find token disclosure in member nam…
CBenoit Oct 20, 2026
a7096b6
docs(agent-identity): apply stream closures during the handshake
CBenoit Oct 20, 2026
acbab26
docs(agent-channel-client): cap backoff after transient refusals at 5…
CBenoit Oct 20, 2026
f601e1b
feat(agent-identity-mock): serve DVLS's management API as its OpenAPI…
CBenoit Oct 20, 2026
bf26507
fix(agent-identity-mock): keep management date-times and the first-ro…
CBenoit Oct 20, 2026
ad575ed
feat(agent-identity-mock): apply stream closures during the channel h…
CBenoit Oct 20, 2026
203fa61
fix(agent-identity-mock): close an awaiting stream at notAfter, revoc…
CBenoit Oct 20, 2026
6305e98
fix(agent-identity-mock): keep an awaiting stream's notAfter after de…
CBenoit Oct 20, 2026
97224af
feat(agent): add identity renewal storage and schedules
CBenoit Oct 20, 2026
ce26624
feat(agent): run renewal and check-in for each stored identity
CBenoit Oct 20, 2026
fc9add7
fix(agent): wait 2^n seconds after the n-th identity failure
CBenoit Oct 20, 2026
07a6e66
fix(agent): anchor identity renewal where the agent got the certificate
CBenoit Oct 20, 2026
7e7dd40
fix(agent): jitter identity backoff before capping it
CBenoit Oct 20, 2026
637dd6d
fix(agent): keep the identity state lock while generating a recorded key
CBenoit Oct 20, 2026
ea53f1d
fix(agent): hold identity barriers and terminal outcomes in the runner
CBenoit Oct 20, 2026
b39f04e
fix(agent): start an enrolled identity's runner even if cleanup fails
CBenoit Oct 20, 2026
15043aa
test(agent): keep the newest expired pending key on repeated recovery
CBenoit Oct 20, 2026
a03eaf2
fix(agent): keep renewal work and rejected slots through identity sta…
CBenoit Oct 20, 2026
3f9aae9
fix(agent): anchor renewal at the time a certificate was stored
CBenoit Oct 20, 2026
f90fa03
style(agent): name identity runner error fields error
CBenoit Oct 20, 2026
6852cf4
test(agent-identity-conformance): speak DVLS's OpenAPI management API
CBenoit Oct 20, 2026
2655a6f
test(agent-identity-conformance): accept nullable management error me…
CBenoit Oct 20, 2026
9cdf176
test(agent-identity-conformance): accept validation errors without er…
CBenoit Oct 20, 2026
c766714
docs(agent-identity-mock): leave status spelling to DVLS's OpenAPI
CBenoit Oct 20, 2026
2b57375
docs(agent-identity): exempt ignored CSR parts from canonical DER
CBenoit Oct 20, 2026
0e38302
docs(agent-identity): pin when a waiting stream sees revocation
CBenoit Oct 20, 2026
c847ee2
refactor(http-client-proxy): expose the proxy selected for a URL
CBenoit Oct 20, 2026
09167b2
feat(agent): open and authenticate an agent channel stream
CBenoit Oct 20, 2026
fa62bb5
feat(agent): keep agent channel connections alive
CBenoit Oct 20, 2026
9c44fb8
feat(agent): classify how an agent channel stream ends
CBenoit Oct 20, 2026
9776c78
feat(agent): retry an agent channel opening at the authority's time
CBenoit Oct 20, 2026
7c011af
feat(agent): reopen a closed agent channel stream with backoff
CBenoit Oct 20, 2026
4930a87
feat(agent): bound an agent channel opening by a timeout
CBenoit Oct 20, 2026
b1d2ab4
test(agent): open a new agent channel stream before closing the old one
CBenoit Oct 20, 2026
3a5d8d3
feat(agent): connect the agent channel through the configured proxy
CBenoit Oct 20, 2026
81f5789
feat(agent): refuse an agent channel URL without TLS
CBenoit Oct 20, 2026
abd5bed
test(agent): drop acknowledgements of a closed agent channel stream
CBenoit Oct 20, 2026
2d8346d
fix(agent): report the trailers of an agent channel stream ended with OK
CBenoit Oct 20, 2026
dc64ee9
feat(agent): connect the agent channel through SOCKS proxies
CBenoit Oct 20, 2026
f3a50ef
refactor(agent): document the SOCKS4 limitation of the agent channel
CBenoit Oct 20, 2026
0231cc5
test(agent-identity-conformance): fix suite races and oracles
CBenoit Oct 20, 2026
90173af
test(agent-identity-conformance): run deletion before Hello on the mock
CBenoit Oct 20, 2026
769f531
test(agent-identity-conformance): run deletion before Hello everywhere
CBenoit Oct 20, 2026
bd5efd0
fix(agent-identity-mock): accept non-canonical DER in ignored CSR parts
CBenoit Oct 20, 2026
8ef57d7
fix(agent-identity-mock): require a strict CSR signature encoding
CBenoit Oct 20, 2026
ac47003
feat(agent-identity-mock): log in to the management API like DVLS
CBenoit Oct 20, 2026
8b1d0fa
fix(agent-identity-mock): refuse login members outside LoginParameters
CBenoit Oct 20, 2026
37270fe
fix(agent-identity-mock): answer 401 and logout like DVLS
CBenoit Oct 20, 2026
2b72484
test(agent-identity-conformance): log in with application identities
CBenoit Oct 20, 2026
ec517be
test(agent-identity-conformance): tighten management login checks
CBenoit Oct 20, 2026
59947cb
test(agent-identity-conformance): validate every management 401
CBenoit Oct 21, 2026
564e728
test(agent-identity): verify every shared vector independently
CBenoit Oct 21, 2026
ec95393
test(agent-identity-conformance): wait for cleanups enrollment leaves…
CBenoit Oct 21, 2026
6948bfd
test(agent-identity-conformance): name unmet revoked-enrollment cleanups
CBenoit Oct 21, 2026
9bb3adc
docs(agent-identity): name the contract CONTRACT.agent-identity.md
CBenoit Oct 21, 2026
0117b54
feat(agent-installer): add Agent Identity enrollment
CBenoit Oct 21, 2026
f16578a
docs(agent-identity): describe the Windows state lock as built
CBenoit Oct 21, 2026
59f0a3b
docs(agent-identity): record the channel runner's timing decisions
CBenoit Oct 21, 2026
b85b065
test(agent-identity): keep state test paths short
CBenoit Oct 21, 2026
2a4d8c9
fix(agent): retry an identity file replace held open by a reader
CBenoit Oct 21, 2026
990d78f
style(agent): format the identity file replace imports
CBenoit Oct 21, 2026
07a89f5
feat(agent): keep an agent channel for each stored identity
CBenoit Oct 21, 2026
371a36b
fix(agent): send queued channel acknowledgements before closing
CBenoit Oct 21, 2026
b763b89
fix(agent): open no channel stream after a terminal closure
CBenoit Oct 21, 2026
7b1721b
docs(agent-identity): cite CONTRACT.agent-identity.md in the channel …
CBenoit Oct 21, 2026
653e0e4
test(agent-identity): check the repair keeps stored state
CBenoit Oct 21, 2026
2eca2f5
docs(agent): add an Agent Identity operator guide
CBenoit Oct 21, 2026
dba3b12
docs(agent): say how an agent learns its identity ended
CBenoit Oct 21, 2026
9fd81c9
test(agent-identity-conformance): reset the mock before each agent su…
CBenoit Oct 21, 2026
5ebd7e4
style(agent-identity): drop a redundant path qualification in a test
CBenoit Oct 21, 2026
996854d
test(agent-identity-conformance): tolerate channel traffic and cut wr…
CBenoit Oct 21, 2026
bc767d0
docs(agent-channel): give the channel intents citable sections
CBenoit Oct 21, 2026
6718035
docs(agent-identity): settle three points from the first DVLS run
CBenoit Oct 21, 2026
e00b9cc
test(agent-identity-conformance): tolerate keys deleted during key ch…
CBenoit Oct 21, 2026
59546c4
refactor(agent-identity-conformance): share the file-backend fixture …
CBenoit Oct 21, 2026
7915943
fix(agent): never repair an untrusted authority directory
CBenoit Oct 21, 2026
eec5730
fix(agent): stop identity while an authority directory is untrusted
CBenoit Oct 21, 2026
06c88e0
docs(agent): explain why Windows locks the identity directory
CBenoit Oct 21, 2026
cc63d9f
fix(agent): leave authority directories intact on parent repair
CBenoit Oct 21, 2026
10aaea4
fix(agent): check authority directories named in another case
CBenoit Oct 21, 2026
c4227da
test(agent): skip only the link case without link permission
CBenoit Oct 21, 2026
420a729
docs(agent): mark the identity runners' shutdown as untested
CBenoit Oct 21, 2026
b9e951d
docs(agent-identity): define a trusted authority directory
CBenoit Oct 21, 2026
7b6e583
docs(agent-identity): bound request bodies and the leaf's extensions
CBenoit Oct 21, 2026
0d1620e
docs(agent-identity): count the body depth limit from the top level
CBenoit Oct 21, 2026
7ed14dd
docs(agent-identity): record five DVLS decisions its tests pin
CBenoit Oct 21, 2026
af5b67f
docs(agent-identity): say when DVLS checks rotation completion
CBenoit Oct 21, 2026
59a8c73
docs(agent-identity): keep the authority base URL as received
CBenoit Oct 21, 2026
5eebc94
docs(agent-identity): give the channel URL the same slash rule as u
CBenoit Oct 21, 2026
81b9380
docs(agent-identity-conformance): state the default rotation window
CBenoit Oct 21, 2026
46aecc7
fix(agent-identity-mock): refuse a deleted identity's key as revoked
CBenoit Oct 21, 2026
431e29d
refactor(agent-identity-mock): keep no token for an issued key
CBenoit Oct 21, 2026
38c84db
test(agent-identity-mock): pin the refusal of a confirm with a body
CBenoit Oct 21, 2026
bef61cc
test(agent-identity-conformance): adapt the runner to a real DVLS
CBenoit Oct 21, 2026
0d617e4
test(agent-identity-conformance): require a window for one-second leaves
CBenoit Oct 21, 2026
b59835b
fix(agent-identity-mock): refuse bodies nested past 64 levels
CBenoit Oct 21, 2026
0e70391
test(agent-identity-mock): pin the refusal of invalid Unicode in bodies
CBenoit Oct 21, 2026
2ffbbfc
fix(agent-identity-mock): issue leaves without basicConstraints
CBenoit Oct 21, 2026
6642614
refactor(agent-identity-mock): name the body parser for every rule
CBenoit Oct 21, 2026
97f2806
test(agent-identity-conformance): bound bodies and leaf extensions
CBenoit Oct 21, 2026
f3c3ddd
docs(agent-identity): extend the trust check to the identity files
CBenoit Oct 21, 2026
9d33883
fix(agent): store the enrollment URL without trailing slashes
CBenoit Oct 21, 2026
347b17c
fix(agent): keep the enrollment URL as received
CBenoit Oct 21, 2026
9785115
test(agent-identity): mark the oracles of the touched token and state…
CBenoit Oct 21, 2026
86fceb6
test(agent-identity-httpsig): drop channel-layer checks that guard no…
CBenoit Oct 21, 2026
b049355
test(agent-identity-httpsig): check the channel opening's tag and com…
CBenoit Oct 21, 2026
9b94de4
test(agent-identity-httpsig): cover signing rules no test exercised
CBenoit Oct 21, 2026
a2e8fe4
test(agent-identity-httpsig): mark where each expected value comes from
CBenoit Oct 21, 2026
703e152
test(agent-identity-httpsig): check a failed channel opening never re…
CBenoit Oct 21, 2026
81933ff
test(agent-identity-httpsig): cite the vector pass rule and the expir…
CBenoit Oct 21, 2026
7d6f0e3
test(agent-identity-httpsig): open the channel path for URLs with sev…
CBenoit Oct 21, 2026
97b8f14
test(agent-identity-httpsig): cite the channel URL slash rule
CBenoit Oct 21, 2026
87adbab
docs(agent-identity): audit each rotation completion exactly once
CBenoit Oct 21, 2026
5dd7573
docs(agent-identity): treat an undecodable first message as no Hello
CBenoit Oct 21, 2026
8d990a1
docs(agent-identity): give every contract section a stable anchor
CBenoit Oct 21, 2026
2721495
docs(agent-identity): close a stream on an undecodable message
CBenoit Oct 21, 2026
add5d6c
test(agent-identity-mock): treat an undecodable first channel message…
CBenoit Oct 21, 2026
0ff6308
fix(agent-identity-mock): close a stream on an undecodable message wi…
CBenoit Oct 21, 2026
ef736ed
chore(deps): point the lock file at webpki-roots 1.0.10
CBenoit Oct 21, 2026
e247313
docs(agent-identity): bound channel envelopes at 64 KiB
CBenoit Oct 21, 2026
9e33e12
docs(agent-identity): keep every config within one channel envelope
CBenoit Oct 21, 2026
c37ff23
docs(agent-identity): drop the redundant prefix from contract anchors
CBenoit Oct 21, 2026
7cb2900
docs(agent-identity-conformance): state the per-authority harness rules
CBenoit Oct 21, 2026
f942fe3
docs(agent-identity): say the renewal anchor's load time is not persi…
CBenoit Oct 21, 2026
882dded
docs(agent-identity): keep DVLS configs within the channel limit
CBenoit Oct 21, 2026
ae5859e
refactor(agent-identity): name the trust stop after stored identities
CBenoit Oct 21, 2026
c96a5d2
fix(agent): stop identity while an identity.json is untrusted
CBenoit Oct 21, 2026
6cb8043
refactor(agent-identity): drop the untrusted identity file fallbacks
CBenoit Oct 21, 2026
3063536
perf(agent): check identity.json without opening it for its data
CBenoit Oct 21, 2026
3d2365e
test(agent-identity): mark the oracles of the authority directory tests
CBenoit Oct 21, 2026
038a3b3
feat(agent-identity-mock): bound channel envelopes and configs at 64 KiB
CBenoit Oct 21, 2026
03c220d
docs(agent-identity): refuse oversize settings and retry blocked enro…
CBenoit Oct 21, 2026
4ad2a76
test(agent-identity-conformance): run checks on fitting authorities
CBenoit Oct 21, 2026
e9919e8
test(agent-identity-conformance): decide expiry by the certificates
CBenoit Oct 21, 2026
23ee45e
test(agent-identity-conformance): tie expiry checks to the observed leaf
CBenoit Oct 21, 2026
adb99d6
test(agent-identity-conformance): skip continuity checks on short leaves
CBenoit Oct 21, 2026
d194565
docs(agent-identity-conformance): keep authority secrets out of descr…
CBenoit Oct 21, 2026
52fec45
test(device-key): drop checks that only checked themselves
CBenoit Oct 21, 2026
d7e5cd8
test(device-key): assert what the governing documents decide
CBenoit Oct 21, 2026
73e1ea7
test(device-key): drop the no-trace check from the invalid-name test
CBenoit Oct 21, 2026
18fc843
test(device-key): cover operations the intent decides but no test rea…
CBenoit Oct 21, 2026
921b714
test(device-key): mark where each test's expected values come from
CBenoit Oct 21, 2026
9bc422d
test(device-key): restore leftover recognition for the longest key name
CBenoit Oct 21, 2026
79e5bf6
test(device-key): check the key descriptor's meaning rather than its …
CBenoit Oct 21, 2026
a537e01
test(device-key): drop the minimum-wait checks from the key-directory…
CBenoit Oct 21, 2026
8af7c5e
test(device-key): mark the remaining tests and assertions
CBenoit Oct 21, 2026
251fd2b
docs(device-key): state the file backend's directory rules and cleanu…
CBenoit Oct 21, 2026
7082b84
test(agent-identity-conformance): check undecodable and oversized cha…
CBenoit Oct 21, 2026
c3b8e61
docs(device-key): scope cleanup to the crate's naming scheme
CBenoit Oct 21, 2026
8b0ea57
test(device-key): ground directory and cleanup tests in the intent
CBenoit Oct 21, 2026
a38e58f
test(device-key): keep the uppercase temporary name distinct
CBenoit Oct 21, 2026
c5e959e
test(device-key): check that files outside the naming scheme survive
CBenoit Oct 21, 2026
5fff2a0
docs(device-key): never block or read without bound on unexpected ent…
CBenoit Oct 21, 2026
a7a11e6
test(agent-channel-client): drop checks that guard nothing
CBenoit Oct 21, 2026
e3da8ac
test(agent-channel-client): pin closing, handshake and timing rules
CBenoit Oct 21, 2026
68404b5
test(agent-channel-client): cover rules no test exercised
CBenoit Oct 21, 2026
dd03e7b
test(agent-channel-client): mark where each expected value comes from
CBenoit Oct 21, 2026
e4ab79f
test(agent-channel-client): accept an envelope of the contract's size
CBenoit Oct 21, 2026
f73b5d5
test(agent-channel-client): give the opening timeout test room
CBenoit Oct 21, 2026
e36e6d4
test(agent-channel-client): mark the unsupported proxy scheme test
CBenoit Oct 21, 2026
ca02018
docs(agent-identity): never bypass a configured proxy
CBenoit Oct 21, 2026
de454cb
docs(agent-channel-client): close on a server message it cannot trust
CBenoit Oct 21, 2026
087dc90
fix(agent-channel-client): close on a server message it can't trust
CBenoit Oct 21, 2026
2d44034
docs(agent-channel-client): ignore only well-identified messages befo…
CBenoit Oct 21, 2026
4baf88f
docs(agent-identity): say what clears the DVLS config-size warning
CBenoit Oct 21, 2026
bf4444b
fix(device-key): keep unexpected key-store entries from blocking or v…
CBenoit Oct 21, 2026
6b58e8f
docs(device-key): bound the size of a key file the file backend reads
CBenoit Oct 21, 2026
d8bc4d2
docs(agent-identity): state temporary cleanup and Windows replace ret…
CBenoit Oct 21, 2026
0ed6481
docs(agent-identity): let revocation win over expiry before Hello
CBenoit Oct 21, 2026
e236b16
docs(agent-identity-mock): state scoped app keys and what reset keeps
CBenoit Oct 21, 2026
95c138c
docs(agent-identity): connect directly under Windows proxy auto-confi…
CBenoit Oct 22, 2026
b0f0008
docs(agent-installer): state when the MSI enrolls and how failures be…
CBenoit Oct 22, 2026
ed99b60
docs(agent): state the key-backend-unavailable system event
CBenoit Oct 22, 2026
ba2cdd3
docs(agent-identity-conformance): fault-injection tests are N/A on DVLS
CBenoit Oct 22, 2026
32cec6c
docs(device-key): list and delete keys that break the access rule
CBenoit Oct 22, 2026
44f4d0a
ci: restore fail-fast for the tests matrix
CBenoit Oct 22, 2026
0d25a94
docs(agent): say when an agent notices the channel back on
CBenoit Oct 22, 2026
5f62d62
test(agent-identity): cite contract anchors in channel and signer mar…
CBenoit Oct 22, 2026
7860dd4
test(agent-installer): mark the oracles of the Agent Identity tests
CBenoit Oct 22, 2026
ba066a8
test(agent-identity): mark the source of each test's expected value
CBenoit Oct 21, 2026
b3afb03
test(agent-identity): compare the token hash and CSR algorithm with o…
CBenoit Oct 21, 2026
b698a63
test(agent-identity): cover the gaps mutation testing found in identi…
CBenoit Oct 21, 2026
9d32ca8
test(agent-identity): name the change type of the stored-format test
CBenoit Oct 21, 2026
7e17571
test(agent-identity): mark the temporary-file and replace-retry tests
CBenoit Oct 22, 2026
f9c407f
test(agent-identity): check an overflowing Retry-After against the 1 …
CBenoit Oct 22, 2026
ab873d0
test(agent): mark the oracle sources of Agent Identity tests
CBenoit Oct 22, 2026
63fbe60
test(device-key): refuse a key file another account owns, as root
CBenoit Oct 22, 2026
2d54099
ci: run the root-only device-key tests as root
CBenoit Oct 22, 2026
a47a15b
test(agent-identity-conformance): mark test oracles
CBenoit Oct 22, 2026
a68a80d
test(agent-identity-mock): mark where each expected value comes from
CBenoit Oct 21, 2026
7ec962b
test(agent-identity-mock): require 500 for an enrollment whose config…
CBenoit Oct 21, 2026
27c8483
test(agent-identity-mock): cover rules no test exercised
CBenoit Oct 21, 2026
4301d20
test(agent-identity-mock): refuse a channel opening that repeats a si…
CBenoit Oct 21, 2026
9371fe4
test(agent-identity-mock): mark the tests the mock intent and contrac…
CBenoit Oct 22, 2026
db8900b
test(agent-identity-mock): cover the channel handshake rules no test …
CBenoit Oct 22, 2026
ef6f366
test(agent-identity-mock): assert only the config revision rules the …
CBenoit Oct 22, 2026
fa791b3
docs(agent-identity): link the contract's short anchors
CBenoit Oct 22, 2026
700d1ff
test(http-client-proxy): mark test oracles
CBenoit Oct 22, 2026
6e8a6af
test(agent-identity-conformance): drop a session retry test no DVLS r…
CBenoit Oct 22, 2026
5384ad6
docs(agent-identity): reserve key_storage in enroll and renew responses
CBenoit Oct 22, 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
12 changes: 12 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -243,6 +243,14 @@ jobs:
env:
AWS_LC_SYS_NO_ASM: true

- name: Root-only tests
if: ${{ matrix.os == 'linux' }}
# Cargo builds as the runner user and runs only the test binary as root, so no build output is owned by root.
# UNTESTED: the test binary runs as root.
# A root-only test run without root skips and passes, so after changing this step, check that its log has no SKIP line.
run: |
cargo test --locked --target ${{ matrix.target }} --config "target.${{ matrix.target }}.runner='sudo'" -p device-key --lib root_only_

- name: Show sccache stats
if: ${{ needs.preflight.outputs.sccache == 'true' && !cancelled() }}
shell: pwsh
Expand Down Expand Up @@ -1247,6 +1255,10 @@ jobs:
run: dotnet test utils/dotnet/GatewayUtils.sln
shell: pwsh

- name: Build agent channel package
run: ./crates/agent-channel-proto/dotnet/build.ps1
shell: pwsh

agent-installer-event-log-tests:
name: Agent installer Event Log lifecycle tests
runs-on: windows-2022
Expand Down
4 changes: 3 additions & 1 deletion .github/workflows/publish-libraries.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ jobs:
strategy:
fail-fast: false
matrix:
library: [ dotnet-client, dotnet-subscriber, utils, pedm-dotnet-client ]
library: [ dotnet-client, dotnet-subscriber, utils, pedm-dotnet-client, agent-channel ]
include:
- library: dotnet-client
libpath: ./devolutions-gateway/openapi/dotnet-client
Expand All @@ -50,6 +50,8 @@ jobs:
libpath: ./utils/dotnet
- library: pedm-dotnet-client
libpath: ./crates/devolutions-pedm/openapi/dotnet-client
- library: agent-channel
libpath: ./crates/agent-channel-proto/dotnet

steps:
- name: Check out ${{ github.repository }}
Expand Down
Loading