Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
77 commits
Select commit Hold shift + click to select a range
e5cb875
feat(agent): add Agent Identity device enrollment and agent channel
CBenoit Oct 19, 2026
12dfd95
ci: temporarily disable fail-fast for the tests matrix
CBenoit Sep 25, 2026
61b287f
docs(agent-identity): record the request-authentication experiment's …
CBenoit Oct 20, 2026
3506d57
docs(agent-identity): close three RFC 9421 gaps a .NET authority woul…
CBenoit Oct 20, 2026
76fbb0f
docs(agent-identity): keep only the conformance claim in the contract
CBenoit Oct 20, 2026
68a558a
docs(agent-identity): drop the conformance section from the contract
CBenoit Oct 20, 2026
cb12ad7
docs(agent-identity): move the shared vectors out of the contract
CBenoit Oct 20, 2026
68ecc7f
docs(agent-identity): fix friendly-name citations after the move
CBenoit Oct 20, 2026
d71c4ea
build(agent): forbid infallible signing in device-key and its signer …
CBenoit Oct 20, 2026
2d436b7
fix(agent): refuse hard-linked device key files
CBenoit Oct 20, 2026
a1f6e63
fix(agent): serialize machine-key creation across processes
CBenoit Oct 20, 2026
501bb89
docs(agent-identity): record the DVLS intent grill
CBenoit Oct 20, 2026
8e197bb
docs(agent-identity): settle the signature-profile readings
CBenoit Oct 20, 2026
b9842ba
docs(agent-identity): require canonical keyid and nonce encodings
CBenoit Oct 20, 2026
bd0e856
docs(agent-identity): state that notBefore is not checked
CBenoit Oct 20, 2026
7d7d51e
docs(agent-identity): settle the library lead's parsing questions
CBenoit Oct 20, 2026
a2d6522
docs(agent-identity): settle the renewal runner's questions
CBenoit Oct 20, 2026
20a5ccd
docs(agent-identity): settle the DVLS lead's questions
CBenoit Oct 20, 2026
704a438
docs(agent-identity): anchor renewal where the agent got the certificate
CBenoit Oct 20, 2026
6959b2f
docs(agent-identity): authenticate a token by its secret alone
CBenoit Oct 20, 2026
eb7983b
docs(agent-identity): leave DVLS management routes to its public API
CBenoit Oct 20, 2026
88f8434
docs(agent-identity): keep attributes out of the agent's CSR
CBenoit Oct 20, 2026
9304001
docs(agent-identity): spell the agent CSR's empty attribute set
CBenoit Oct 20, 2026
87f324f
docs(agent-identity): tolerate an empty extensionRequest at the server
CBenoit Oct 20, 2026
12c0ec2
docs(agent-identity): keep the newest expired pending key on repeated…
CBenoit Oct 20, 2026
4dfc47e
test(agent-identity-mock): align with identity contract
CBenoit Oct 20, 2026
56d1b36
docs(agent-identity-mock): cite governing sections
CBenoit Oct 20, 2026
fcabf03
fix(agent): name the authority's record an identity
CBenoit Oct 20, 2026
253cf3e
refactor(agent): gather Agent Identity in the identity module
CBenoit Oct 20, 2026
aba053c
fix(agent): keep an identity whose current key is lost
CBenoit Oct 20, 2026
57a69eb
feat(agent): stop Agent Identity on an unavailable key backend
CBenoit Oct 20, 2026
e817f9d
fix(agent): treat an unsupported config version as transient
CBenoit Oct 20, 2026
b4e403c
build(agent): embed the Event Log catalog in every Windows build
CBenoit Oct 20, 2026
aea9588
test(agent): check the identity key-backend event's catalog message
CBenoit Oct 20, 2026
219b4ac
fix(agent): bind the machine-key creation lock to the caller's account
CBenoit Oct 20, 2026
f9fa8d2
test(agent): tolerate timer granularity in the creation-wait test
CBenoit Oct 20, 2026
1210531
test(agent-identity-conformance): align suite with identity contract
CBenoit Oct 20, 2026
a362044
test(agent-identity-conformance): drop issuer profile and over-strict…
CBenoit Oct 20, 2026
d4e0a08
feat(agent-identity-mock): replicate DVLS identity statuses and permi…
CBenoit Oct 20, 2026
cf66384
test(agent-identity): isolate signature vectors and cover the settled…
CBenoit Oct 20, 2026
4e166c9
test(agent-identity-conformance): check unsupported config versions
CBenoit Oct 20, 2026
0ac7a29
feat(agent-identity-mock): add config version fault
CBenoit Oct 20, 2026
4411fb1
fix(agent-identity-mock): accept a certificate through its notAfter
CBenoit Oct 20, 2026
7913e8c
feat(agent-identity-mock): answer unexpected failures with unavailable
CBenoit Oct 20, 2026
8a3675f
fix(agent-identity-mock): apply the request parsing rules
CBenoit Oct 20, 2026
e815588
fix(agent-identity-mock): open a channel stream at its certificate's …
CBenoit Oct 20, 2026
29f65dc
fix(agent-identity-mock): authenticate only the issued token string
CBenoit Oct 20, 2026
653e91f
fix(agent-identity-mock): authenticate a token by its secret text alone
CBenoit Oct 20, 2026
2608818
fix(agent-identity): send a CSR with no attributes
CBenoit Oct 20, 2026
d7ff5f7
test(agent-identity): pin the CSR's empty attributes encoding
CBenoit Oct 20, 2026
ff24367
test(agent-identity): drop attributes from the valid CSR vector
CBenoit Oct 20, 2026
c82ec8d
test(agent-identity-conformance): reach DVLS's management API only th…
CBenoit Oct 20, 2026
43ff78f
test(agent-identity-conformance): require only the management API mem…
CBenoit Oct 20, 2026
324b3d4
test(agent-identity-conformance): find token disclosure in member nam…
CBenoit Oct 20, 2026
d9d3ee9
docs(agent-identity): apply stream closures during the handshake
CBenoit Oct 20, 2026
3cea5b6
docs(agent-channel-client): cap backoff after transient refusals at 5…
CBenoit Oct 20, 2026
b279dee
feat(agent-identity-mock): serve DVLS's management API as its OpenAPI…
CBenoit Oct 20, 2026
dba9fe7
fix(agent-identity-mock): keep management date-times and the first-ro…
CBenoit Oct 20, 2026
21c3308
feat(agent-identity-mock): apply stream closures during the channel h…
CBenoit Oct 20, 2026
9993da9
fix(agent-identity-mock): close an awaiting stream at notAfter, revoc…
CBenoit Oct 20, 2026
ad54d89
fix(agent-identity-mock): keep an awaiting stream's notAfter after de…
CBenoit Oct 20, 2026
d30d345
feat(agent): add identity renewal storage and schedules
CBenoit Oct 20, 2026
a0e2151
feat(agent): run renewal and check-in for each stored identity
CBenoit Oct 20, 2026
9beb6f0
fix(agent): wait 2^n seconds after the n-th identity failure
CBenoit Oct 20, 2026
62e0107
fix(agent): anchor identity renewal where the agent got the certificate
CBenoit Oct 20, 2026
5002a79
fix(agent): jitter identity backoff before capping it
CBenoit Oct 20, 2026
4617e9b
fix(agent): keep the identity state lock while generating a recorded key
CBenoit Oct 20, 2026
033437d
fix(agent): hold identity barriers and terminal outcomes in the runner
CBenoit Oct 20, 2026
46c6963
fix(agent): start an enrolled identity's runner even if cleanup fails
CBenoit Oct 20, 2026
cdb6244
test(agent): keep the newest expired pending key on repeated recovery
CBenoit Oct 20, 2026
b9c9bb6
fix(agent): keep renewal work and rejected slots through identity sta…
CBenoit Oct 20, 2026
045a8cd
fix(agent): anchor renewal at the time a certificate was stored
CBenoit Oct 20, 2026
cb707a7
style(agent): name identity runner error fields error
CBenoit Oct 20, 2026
8ea3689
test(agent-identity-conformance): speak DVLS's OpenAPI management API
CBenoit Oct 20, 2026
628aee5
test(agent-identity-conformance): accept nullable management error me…
CBenoit Oct 20, 2026
97c5f7c
test(agent-identity-conformance): accept validation errors without er…
CBenoit Oct 20, 2026
eb71243
docs(agent-identity-mock): leave status spelling to DVLS's OpenAPI
CBenoit Oct 20, 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
5 changes: 5 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -202,6 +202,7 @@ jobs:
needs: [preflight]
runs-on: ${{ matrix.runner }}
strategy:
fail-fast: false
matrix:
arch: [x64]
os: [windows, linux]
Expand Down Expand Up @@ -1247,6 +1248,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
Loading