Skip to content

feat(KLEF-216): Daemon mod file injection and bound mounts - #33

Merged
NathanRoos merged 1 commit into
mainfrom
feat/KLEF-216-DAemon_Mod_File_Inhjection
May 15, 2026
Merged

feat(KLEF-216): Daemon mod file injection and bound mounts#33
NathanRoos merged 1 commit into
mainfrom
feat/KLEF-216-DAemon_Mod_File_Inhjection

Conversation

@NathanRoos

Copy link
Copy Markdown
Contributor

Pull Request

Summary

Implements ticket #216 mod install/uninstall support, fixes log streaming after server restarts, and fixes a Redis infinite retry bug.

Related Issues

Closes #


Changes

What's Included

  • ModWorker — new worker handling mod.install and mod.uninstall jobs; downloads files into the workload's bind-mounted volume via InjectFile/RemoveFile
  • RuntimeAdapter.ListRunning — new interface method; Docker implementation seeds the in-memory repo from running container labels on daemon startup, preventing state loss after restarts
  • Log stream fix — Logs() now passes Since=container.State.StartedAt when following, so reconnects don't re-stream historical lines
  • Log tailer fix — tail() now closes the lines channel via a WaitGroup when both scan goroutines exit, allowing the tailer to restart cleanly after a server stop/start; reconcile interval reduced from 10s to 3s
  • Redis retry fix — Retry() was reading Attempts=0 back from Redis causing infinite retries; fixed by incrementing before re-enqueuing

What's Not Included


Testing

How Was This Tested?

Manually tested

Test Coverage

  • Unit tests added or updated
  • Integration tests added or updated
  • Manually tested end-to-end

Breaking Changes

Does this PR introduce breaking changes?

  • Yes
  • No

If yes, describe the impact and any required migration steps:


Security Considerations

  • This PR affects authentication or authorization logic
  • This PR touches secrets, tokens, or environment variables
  • This PR affects infrastructure, deployment pipelines, or network configuration

If any box is checked, describe the security impact and any mitigations applied:


Documentation

Does this PR require documentation updates?

  • Yes
  • No

If yes, check all that apply:

  • README.md
  • ARCHITECTURE.md
  • API reference
  • Architecture diagrams (C4 / DDD)
  • /docs

UI/UX (If Applicable)

  • Includes new components or views
  • Changes styles or theme tokens
  • Responsive behavior verified
  • Requires design approval

Screenshots or recordings:


Pre-Merge Checklist

  • PR title follows semantic format (feat:, fix:, chore:, docs:, refactor:, test:)
  • All CI checks passing
  • Code follows project style guidelines
  • No debug logs or commented-out code left in
  • Dependencies reviewed (no unnecessary additions)
  • No sensitive information included

Reviewer Notes

@NathanRoos NathanRoos self-assigned this May 15, 2026
@github-actions github-actions Bot added the feature New feature label May 15, 2026
@NathanRoos
NathanRoos merged commit 4a3d194 into main May 15, 2026
6 checks passed
@NathanRoos
NathanRoos deleted the feat/KLEF-216-DAemon_Mod_File_Inhjection branch May 15, 2026 20:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature New feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants