Repository navigation
Conversation
Adds an app-level setup script in Application settings. It runs once per distinct script (SHA-256 and run timestamp stored in the app DB settings table), reruns when the saved script changes, and optionally runs on every app startup.
Ziinc
commented
Oct 2, 2026
Ziinc
commented
Oct 2, 2026
Ziinc
left a comment
Collaborator
Author
There was a problem hiding this comment.
Reviewed correctness, surrounding call paths, code quality and regression coverage at c504f276. Found 1 actionable issue; details and suggested regression checks are inline.
Validation: source review and GitHub workflow inspection. The PR-head CI workflow reports success. Rust/integration tests were not rerun locally because this environment has no Cargo toolchain.
- Save the setup script only when it was edited, and keep its inputs disabled until the stored status loads, so saving other settings can no longer wipe the script. - Report `running` from an in-flight counter instead of an unrecorded hash, so a skipped or failed spawn no longer shows "Running..." forever. - Hold a file lock beside the app DB from the hash check until the run is recorded, so instances sharing the DB run a script once. - Kill the script's process group after 30 minutes, and stop waiting on background jobs that keep its output pipes open. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01E1poGWXMSFcPsJ8V5gujWG
Ziinc
commented
Oct 3, 2026
…tput - Saving settings no longer runs the script. It runs from a Run button next to the status line, or on every startup when that switch is on. - Each run's output is stored as log records next to the app DB and shown in the Logs tab under a new "App setup" source. - Drop the script-hash run-once tracking that implicit runs relied on. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0145f4pMgZpmUQJwC2GbL2mr
… output Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0145f4pMgZpmUQJwC2GbL2mr
- Add core::shell_step, the `sh -c` runner now used by workflow checks, the workspace setup script and the app setup script. It kills the script's whole process group on timeout, keeps reading past non-UTF-8 output instead of closing the pipe (which killed the script with SIGPIPE), and waits up to 2s after exit for output to drain without hanging on background jobs that hold the pipes open. - App setup runs are recorded only after their output has drained, so the Logs tab never caches a truncated run. - A startup run counts as running only once it knows it will run, so a skipped startup no longer shows "Running…" while another instance holds the run claim. - Run ignores clicks until the started run is reported, so a double click starts one run. - Settings shows the error when the setup script status fails to load. - Logs tab: one FilteredLogs component backs the Checks and App setup sources. - core::app_db_path_from_env is the one TREQ_APP_DB_PATH / TREQ_APP_DATA_DIR lookup. - Integration test resets the last run before each test. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0145f4pMgZpmUQJwC2GbL2mr
This branch was successfully deployed
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.
Adds an app-level setup script in Application settings.
core::shell_steprunner, shared with workflow checks and the workspace setup script: kills the whole process group on timeout, survives non-UTF-8 output, and doesn't hang on background jobs.🤖 Generated with Claude Code
https://claude.ai/code/session_0145f4pMgZpmUQJwC2GbL2mr