Enhance CI pipeline documentation and improve git command handling

- Updated the `/ci` command documentation to clarify the execution steps for the CI pipeline, specifically regarding the rbx-dom section.
- Modified git command invocations in `CloneCommand` and `InitCommand` to include the `--no-verify` flag, allowing commits to bypass pre-commit hooks.
- Added null input handling for git commands in `CloneCommand`, `InitCommand`, and `Syncback` to prevent blocking on stdin.
This commit is contained in:
Joe 2026-02-06 22:43:54 -06:00
parent 1ad54fb0c4
commit b2c8f2848b
4 changed files with 15 additions and 6 deletions

View file

@ -1,10 +1,13 @@
# /ci - Complete CI Pipeline # /ci - Complete CI Pipeline
Run the complete CI pipeline: auto-fix all formatting, run all linters, build everything, and run ALL tests — for both Rojo and rbx-dom. Run the complete CI pipeline: auto-fix all formatting, run all linters, build everything, and run ALL tests.
## Instructions ## Instructions
Execute ALL of the following steps in order. Fix issues automatically where possible. - If the user's message contains **"rbx-dom"**, run **both** the Rojo and rbx-dom sections below.
- Otherwise, **skip the entire rbx-dom section** (steps 8–13) to save time.
Execute ALL applicable steps in order. Fix issues automatically where possible.
--- ---
@ -143,7 +146,7 @@ Tests:
- Rust: X passed, Y failed - Rust: X passed, Y failed
- Plugin: X passed, Y failed, Z skipped - Plugin: X passed, Y failed, Z skipped
--- rbx-dom --- --- rbx-dom (only if included) ---
Formatting: Formatting:
- Stylua (rbx_dom_lua): [fixed X files / no changes needed] - Stylua (rbx_dom_lua): [fixed X files / no changes needed]
@ -166,4 +169,5 @@ Tests:
**IMPORTANT:** **IMPORTANT:**
- Selene PASS requires exit code 0 (0 errors AND 0 warnings). Any warnings = FAIL. - Selene PASS requires exit code 0 (0 errors AND 0 warnings). Any warnings = FAIL.
- If any step fails, continue running the remaining steps to get a complete picture, then report all failures at the end. - If any step fails, continue running the remaining steps to get a complete picture, then report all failures at the end.
- Do not report "Overall: PASS" unless ALL linters pass with zero issues across both Rojo and rbx-dom. - Do not report "Overall: PASS" unless ALL linters pass with zero issues across all sections that were run.
- If rbx-dom was skipped, omit its section from the report entirely.

View file

@ -93,13 +93,15 @@ impl CloneCommand {
let _ = Command::new("git") let _ = Command::new("git")
.args(["add", "."]) .args(["add", "."])
.current_dir(&path) .current_dir(&path)
.stdin(Stdio::null())
.stdout(Stdio::null()) .stdout(Stdio::null())
.stderr(Stdio::null()) .stderr(Stdio::null())
.status(); .status();
let _ = Command::new("git") let _ = Command::new("git")
.args(["commit", "-m", "syncback"]) .args(["commit", "--no-verify", "-m", "syncback"])
.current_dir(&path) .current_dir(&path)
.stdin(Stdio::null())
.stdout(Stdio::null()) .stdout(Stdio::null())
.stderr(Stdio::null()) .stderr(Stdio::null())
.status(); .status();

View file

@ -186,13 +186,15 @@ impl InitCommand {
let _ = Command::new("git") let _ = Command::new("git")
.args(["add", "."]) .args(["add", "."])
.current_dir(&base_path) .current_dir(&base_path)
.stdin(Stdio::null())
.stdout(Stdio::null()) .stdout(Stdio::null())
.stderr(Stdio::null()) .stderr(Stdio::null())
.status(); .status();
let _ = Command::new("git") let _ = Command::new("git")
.args(["commit", "-m", "Initial commit"]) .args(["commit", "--no-verify", "-m", "Initial commit"])
.current_dir(&base_path) .current_dir(&base_path)
.stdin(Stdio::null())
.stdout(Stdio::null()) .stdout(Stdio::null())
.stderr(Stdio::null()) .stderr(Stdio::null())
.status(); .status();

View file

@ -403,6 +403,7 @@ fn refresh_git_index(project_dir: &Path) {
match Command::new("git") match Command::new("git")
.args(["update-index", "--refresh", "-q"]) .args(["update-index", "--refresh", "-q"])
.current_dir(project_dir) .current_dir(project_dir)
.stdin(Stdio::null())
.stdout(Stdio::null()) .stdout(Stdio::null())
.stderr(Stdio::null()) .stderr(Stdio::null())
.status() .status()