Draft
Conversation
Contributor
|
Container images for this PR have been built successfully!
Built from commit 090e2b9 |
6b2f49e to
fef79d6
Compare
fef79d6 to
749af65
Compare
7d05e24 to
7140da3
Compare
|
This pull request has merge conflicts. Please resolve the conflicts so the PR can stay up-to-date and reviewed. |
7140da3 to
183c56d
Compare
f6e2b1a to
f9b723d
Compare
f9b723d to
52ae273
Compare
|
This pull request has merge conflicts. Please resolve the conflicts so the PR can stay up-to-date and reviewed. |
52ae273 to
06f596d
Compare
|
This pull request has merge conflicts. Please resolve the conflicts so the PR can stay up-to-date and reviewed. |
06f596d to
7c7a371
Compare
7c7a371 to
a01c4a3
Compare
b9021e3 to
db62174
Compare
Member
Author
✅ Snyk checks have passed. No issues have been found so far.
💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse. |
9658420 to
a87c913
Compare
|
This pull request has merge conflicts. Please resolve the conflicts so the PR can stay up-to-date and reviewed. |
a87c913 to
7cdcbc2
Compare
1796fcf to
402cc8a
Compare
402cc8a to
090e2b9
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Checklist
mainbranchWhat This PR Implements
Fixes:
Changes Made
Testing Done
./scripts/development/dev.sh startjust lint all)just test backendAI Tool Used (if applicable)
AI Tool:
Assistance Level:
What AI helped with:
I reviewed and edited all AI-generated output:
I ran all required tests and manually verified changes:
Additional Context
Disclaimer Greptiles Reviews use AI, make sure to check over its work.
To better help train Greptile on our codebase, if the comment is useful and valid Like the comment, if its not helpful or invalid Dislike
To have Greptile Re-Review the changes, mention
greptileai.Greptile Summary
[Linus Torvalds Mode]
This PR stitches together mTLS authentication for edge agents — manager-side CA auto-generation, per-environment client certificate issuance, an agent-side auto-enrollment flow, and a frontend certificate-download UX. It's a legitimately large feature and, mercifully, most of the implementation is coherent. Several issues flagged in a prior review round (missing
EDGE_MTLS_AUTO_GENERATE=truein snippets, theEdgeMTLSAutoGenerateguard inshouldAutoGenerateManagerCAInternal, plain-HTTP enrollment guard, andcfg.EdgeMTLSCAFilenot being populated after enrollment) appear to be addressed in this revision.Key changes:
tls.goinedgepackage: CA + client cert generation, validation with cert/key pair consistency, TLS config builders for both manager and agent sides.server.go: mTLS enforcement gate on WebSocket and gRPC connect paths, newHandleMTLSEnrollendpoint, session metadata (security mode, session ID, capabilities) propagated to registry.environments.go: three new download endpoints (CA, bundle ZIP, per-file) plus updated deployment snippet generation that inlines generated PEM contents.ActionButtonGroupsplit-button support for mTLS download menu,DetailsTabcertificate status widget, download utility.What remains broken or questionable is noted in the inline comments. The codebase doesn't deserve a standing ovation, but it probably deserves to be merged after fixing the
expiresAtguard.Confidence Score: 4/5
[Linus Torvalds Mode] Most of the scary issues from the prior review round appear to be addressed — the auto-generate guard, the HTTPS enrollment check, and the CA-path backfill are all present. What's left is an unguarded optional field that will silently render 'Invalid Date' in the UI, which is a real data-display defect on the changed path. Fix that and the rest is noise.
There are two issues remaining: a P1 frontend rendering defect (unguarded
expiresAt) and a P2 backend inconsistency (Content-Dispositionquoting mismatch). The P1 is a real wrong-data situation on the certificate details UI — not catastrophic, but incorrect enough to drop to 4. The P2 is cosmetic and doesn't affect current filenames. Everything else looks structurally sound.Pay attention to
frontend/src/routes/(app)/environments/[id]/components/DetailsTab.svelte— the optionalexpiresAtfield is rendered without a guard and will display garbage if the backend omits it.Prompt To Fix All With AI
Reviews (5): Last reviewed commit: "feat: allow mTLS auth for edge agents" | Re-trigger Greptile
Context used:
name: svelte-core-b... (source)
Use const/le... (source)