Close 5 documented gaps + safer Docker-socket alternative to DinD - #1
Merged
Conversation
…ions marketplace, runner dev-workspaces - Real full-text search (SQLite FTS5) for repositories/issues/users, replacing substring LIKE matching, plus new code-content search indexed from each repo's default branch after every push. - renameRepository mutation: moves the bare repo + wiki dir on disk and updates the DB name, with best-effort rollback on partial failure. - adminBackfillPreReceiveHooks: writes the branch-protection pre-receive hook onto every existing repo, not just newly-created ones. - GitHub Actions marketplace support for docker://, owner/repo@ref docker actions (including building from a Dockerfile), one level of composite actions, and node12/16/18/20 JS actions. - Standalone runner now claims and executes dev_workspace_action jobs (create/delete/exec) against its own Docker daemon; createDevWorkspace gained an onRunner flag. Start/stop and live port-proxying for runner-hosted workspaces remain unsupported and are documented as such. - DOCKER_SOCKET_PATH is now actually wired into bollard (was previously accepted but ignored), enabling rootless Podman or Sysbox as a safer alternative to bind-mounting the host Docker socket. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PQ5ctde43ucFvCaeoeEvPK
…, runner dev-workspaces Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PQ5ctde43ucFvCaeoeEvPK
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.
Summary
Addresses the 5 gaps listed under
DOC.md§14 "Known limitations", plus research into a safer alternative to the current Docker-socket-mount setup (not actual DinD, but the same risk shape).search(query)now runs real SQLite FTS5 (MATCH, BM25 ranking) instead of substringLIKE, covering repositories/issues/users, plus a new code search (SearchResults.code) indexed from each repo's default branch after every push.renameRepository(repoId, newName)mutation moves the bare repo + wiki directory on disk and updates the DB name, with best-effort rollback on partial failure.adminBackfillPreReceiveHookswrites the branch-protection hook onto every existing repo, not just newly-created ones.uses:now supportsdocker://image,owner/repo[/path]@refdocker actions (including building from aDockerfile), one level of composite actions, andnode12/16/18/20JS actions (run in a dedicatednode:*-slimhelper container). Unsupported cases still degrade to the existing "not supported, skipping" log rather than failing the job.dev_workspace_actionjobs (create/delete/exec) against its own Docker daemon;createDevWorkspacegained anonRunnerflag. Start/stop and live port-proxying for runner-hosted workspaces are documented as remaining gaps (no reverse tunnel between runner and server yet).DOCKER_SOCKET_PATHis now actually wired intobollard(previously accepted but ignored), so deployments can point it at a rootless Podman socket or a Sysbox-isolated daemon instead of bind-mounting the host's own Docker socket. Documented inDOC.md§2a with the research behind the recommendation.All five bullets from the old
DOC.md§14 list are now either resolved or replaced with a narrower, honestly-documented residual gap.Test plan
cargo check --workspacecleancargo test --workspace— all pass except 6 pre-existing integration tests that construct a Docker client, which fail in this sandbox only because there's no/var/run/docker.sock(no dockerd available here); confirmed unrelated to this change (sameExecutor::new()/connect_local()call as before, untouched).actions::marketplace(ref parsing, input resolution/substitution), 2 forgit-core(rename with rollback/collision, hook backfill idempotence).🤖 Generated with Claude Code
https://claude.ai/code/session_01PQ5ctde43ucFvCaeoeEvPK
Generated by Claude Code