Skip to content

Harden cached release asset handling#9

Merged
Vladyslav-Kuksiuk merged 7 commits into
masterfrom
cache-hardening
Jul 23, 2026
Merged

Harden cached release asset handling#9
Vladyslav-Kuksiuk merged 7 commits into
masterfrom
cache-hardening

Conversation

@Vladyslav-Kuksiuk

@Vladyslav-Kuksiuk Vladyslav-Kuksiuk commented Jul 22, 2026

Copy link
Copy Markdown
Collaborator

This PR:

  • Hardens cached release asset verification and offline reuse.
  • Rebuilds executables from verified assets instead of trusting mutable sidecars.
  • Adds portable cache keys and symlink/path protections.
  • Improves coverage for tampering, permissions, cleanup, and cache reuse.
  • Makes HTTP failure tests deterministic with controlled responses and stronger assertions.

@Vladyslav-Kuksiuk Vladyslav-Kuksiuk self-assigned this Jul 22, 2026
@Vladyslav-Kuksiuk
Vladyslav-Kuksiuk marked this pull request as ready for review July 23, 2026 08:23

@Oleg-Melnik Oleg-Melnik left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Substantial and careful rework of the install/cache trust model. The file-handling hardening (NOFOLLOW everywhere, per-component link rejection, Windows-junction detection, containment re-checks after moves) and the test additions (symlink/junction rejection, tampered-asset-with-rewritten-sidecar, permission restore, staged-temp cleanup, portable/case-distinct cache keys, deterministic HTTP assertions) are the strongest parts. No correctness bugs spotted. Inline comments are two behavior/trust-model decisions to confirm-and-document, one definite doc defect, two doc-content losses, and one cleanup. I reviewed the diff only; I did not run the build or tests.

Comment thread gradle-plugin/src/main/kotlin/io/spine/embedcode/gradle/InstallEmbedCodeTask.kt Outdated
Comment thread README.md Outdated
Comment thread README.md

@Oleg-Melnik Oleg-Melnik left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Vladyslav-Kuksiuk LGTM with comments to address.

@Vladyslav-Kuksiuk
Vladyslav-Kuksiuk merged commit a2b0478 into master Jul 23, 2026
2 checks passed
@Vladyslav-Kuksiuk
Vladyslav-Kuksiuk deleted the cache-hardening branch July 23, 2026 09:44
@Oleg-Melnik Oleg-Melnik mentioned this pull request Jul 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants