-
-
Notifications
You must be signed in to change notification settings - Fork 0
Improve concurrency handling, fix part of CI pipeline and more #39
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
Open
Changes from all commits
Commits
Show all changes
45 commits
Select commit
Hold shift + click to select a range
30898f6
Fix ER lifecycle: force-kill orphans, concurrent shutdown, bound ER s...
Aksem 20e48d1
Add OTLP endpoint validation, reachability probe, and export-log sile...
Aksem a599b21
Add automated release sweep across workspace packages (PRD-0006)
Aksem df006e1
Add list_envs/remove_envs actions and throttle run fan-out at depth 0...
Aksem 91d8717
Split package release from workspace orchestration (ADR-0065)
Aksem c054de2
Sync python interpreters
Aksem a8cff6f
Add service config env-var overrides addressed by derived name (ADR-0...
Aksem 0510524
Bridge check_toolchains drift into audit_code and fix precommit merge
Aksem 29e58d6
Split file read from modify and add version-checked saves (ADR-0071)
Aksem e882c5b
Bound LSP request concurrency per backend (opt-in, unbounded by default)
Aksem 983f26f
Apply formatter across the codebase
Aksem 2c16b58
Make import sorting independent of the runner's working directory
Aksem 224e648
Apply formatter to the remaining files
Aksem f5d6e13
Fix WM server layered-architecture violations found by audit_code
Aksem 42f3330
Derive Python tool target-version from requires-python
Aksem fbdf049
Add in-session recovery from stale state (PRD-0008)
Aksem 1deb3f3
Add code action resolve/apply and lint fix apply actions
Aksem 889c0e9
Complete ADR-0080 cancellable in-flight runs, catch up recovery docs
Aksem 9603bb9
Fix ruff position offsets and lint fixability, scope file listing to ...
Aksem 7334b82
Lint codebase and fix part of problems
Aksem d616913
Extract finecode_knowledge as a standalone schema-free package
Aksem 329e087
Add node.js 22 to devcontainer
Aksem e5705ea
Absolutize resource URIs in CLI payloads before they reach ERs
Aksem 7bfeed8
Lint fixes
Aksem f937d87
Name the unknown project when ER dispatch fans out to a bad path
Aksem 8e315cb
Lint fixes
Aksem f81aab6
Stream subprocess output line by line and fix a semaphore leak
Aksem 587603a
Add a keep-alive shared WM server for the devcontainer
Aksem 9f2b4ab
Add run_agent_task action with pi.dev and Claude Code backends
Aksem 54fd453
Add get_git_status, get_git_diff and restore_git_files actions
Aksem 50a01e0
Add , , to icommandrunner
Aksem d39179b
Add --results-file to run for per-run, unmerged results
Aksem 3439ae8
Lint fixes in finecode_extension_runner
Aksem 4962590
Let a handler ask the run's client a question (ADR-0082)
Aksem b3fdd60
Replace elicitation origin ContextVar with an explicit parameter
Aksem eab535f
Add create/rename/delete file operations to code actions (ADR-0083)
Aksem d8cc237
Validate CLI payload field names and types against action schemas
Aksem 0dbb9e2
Catch up action reference docs and fix converter edge cases
Aksem c0f9fc4
Replace layered concurrency caps with a single process budget (ADR-0090)
Aksem 3ba945a
Add the WM-side knowledge service and a lookup-literal lint rule (ADR...
Aksem 1334b61
Capture stderr from the dedicated WM server startup
Aksem 10a13ec
Make the dev_workspace venv validity check actually exercise imports
Aksem f1e8a1b
Revert "Make the dev_workspace venv validity check actually exercise ...
Aksem a7e490e
Add a real `finecode version` command; use it for venv validation
Aksem 86e6b39
Wire root pyproject.toml up to already-landed extensions and contracts
Aksem File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
There are no files selected for viewing
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
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
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
24 changes: 24 additions & 0 deletions
.devcontainer/setup-node.sh
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,24 @@ | ||
| #!/bin/sh | ||
| # Installs Node via the nvm already baked into the base image. | ||
| # | ||
| # We do NOT use the ghcr.io/devcontainers/features/node feature for this: | ||
| # the base image already ships nvm itself (no Node version installed yet) | ||
| # at /usr/local/share/nvm, owned by vscode:nvm. Running the node feature on | ||
| # top of that hits its "NVM already installed" code path, which skips the | ||
| # ownership fixup it only does for a freshly created nvm dir and calls | ||
| # `nvm install` directly. That specific command works fine under a normal | ||
| # `docker run`, but fails with "Permission denied" writing into | ||
| # /usr/local/share/nvm/.cache when run inside a BuildKit RUN layer, which | ||
| # does not reproduce ownership from the base image's read-only layer | ||
| # correctly on copy-up. Running nvm install here, in postCreateCommand | ||
| # (a normal container process, not a build layer) sidesteps the bug. | ||
| set -eu | ||
|
|
||
| export NVM_DIR="/usr/local/share/nvm" | ||
| export NVM_SYMLINK_CURRENT=true | ||
| # shellcheck source=/dev/null | ||
| . "$NVM_DIR/nvm.sh" | ||
|
|
||
| umask 0002 | ||
| nvm install 22 | ||
| nvm alias default 22 |
29 changes: 29 additions & 0 deletions
.devcontainer/start-wm-server.sh
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,29 @@ | ||
| #!/bin/sh | ||
| # Start a persistent shared FineCode WM server at container start, so the | ||
| # workspace stays warm for the life of the container. What that costs is | ||
| # documented in docs/cli.md, "Autostarting a persistent server". | ||
| # | ||
| # FineCode itself never reads FINECODE_WM_AUTOSTART — this script is its only | ||
| # consumer, and it turns it into an explicit `--keep-alive` on the server it | ||
| # starts, because keep-alive must never be ambient. | ||
| set -eu | ||
|
|
||
| if [ -z "${FINECODE_WM_AUTOSTART:-}" ] || [ "${FINECODE_WM_AUTOSTART}" = "0" ]; then | ||
| exit 0 | ||
| fi | ||
|
|
||
| VENV_PYTHON=".venvs/dev_workspace/bin/python" | ||
| if [ ! -x "$VENV_PYTHON" ]; then | ||
| echo "FineCode WM autostart: $VENV_PYTHON not found, skipping." >&2 | ||
| exit 0 | ||
| fi | ||
|
|
||
| # Never fatal: the workspace is fully usable without it, because every client | ||
| # starts a server on demand anyway. Failing container start over a warm cache | ||
| # would be a worse outcome than the cold start it is trying to avoid. | ||
| if "$VENV_PYTHON" -m finecode start-wm-server --detach --keep-alive; then | ||
| echo "FineCode WM autostart: shared server running." | ||
| else | ||
| echo "FineCode WM autostart: no shared server reachable yet; it may still be" \ | ||
| "starting, and clients attach to it when it is." >&2 | ||
| fi |
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
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
Oops, something went wrong.
Oops, something went wrong.
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.