Deinit a submodule
Tests ability to deinitialize a submodule without removing it. Evaluates submodule-deinit command understanding.
Baseline Repository
These commands set up the repo before the model sees the prompt. They define the starting file structure, staged changes, and Git history.
- 01
git init - 02
git config user.email 'test@test.com' - 03
git config user.name 'Test User' - 04
echo 'App' > app.txt - 05
git add app.txt - 06
git commit -m 'Initial commit' - 07
mkdir -p ../lib-src && cd ../lib-src && git init && git config user.email 'test@test.com' && git config user.name 'Test User' && echo 'lib code' > lib.py && git add lib.py && git commit -m 'Initial lib' - 08
git clone --bare ../lib-src ../lib-bare - 09
git config protocol.file.allow always - 10
git -c protocol.file.allow=always submodule add ../lib-bare lib - 11
git add .gitmodules lib - 12
git commit -m 'Add lib submodule'
Prompt
Deinitialize the submodule 'lib' (remove its working tree but keep the config). Output ONLY the git command, nothing else.
Expected
git submodule deinit -f lib
Campaign Evidence
Loading campaign evidence…
Model Outputs (14)
git submodule deinit lib
git submodule deinit -f lib
JSON Schema
Structured Output
(raw) { "command": "git submodule deinit -f lib" }
git submodule deinit lib
git submodule deinit lib
JSON Schema
Structured Output
(raw) {
"command": "git submodule deinit lib"
}
git submodule deinit -f lib
JSON Schema
Structured Output
(raw) {"command": "git submodule deinit -f lib"}
git submodule deinit -f lib
git submodule deinit -f lib
JSON Schema
Structured Output
(raw) {
"command": "git submodule deinit -f lib"
}
git submodule deinit lib
JSON Schema
Structured Output
(raw) {
"command": "git submodule deinit lib"
}
```bash
git submodule deinit -f lib
```
Failure: Failed assertions: [{'type': 'file_not_exists', 'path': 'lib/lib.py'}, {'type': 'git_output', 'command': 'git config --get submodule.lib.url', 'not_contains': 'lib-bare'}]
git submodule deinit --force --merge ../lib-bare/lib && git rm --force lib && rm -rf .git/modules/lib
Failure: Failed assertions: [{'type': 'file_not_exists', 'path': 'lib/lib.py'}, {'type': 'git_output', 'command': 'git config --get submodule.lib.url', 'not_contains': 'lib-bare'}]
git submodule deinit -f --lib && git rm --cached --force --quiet lib
JSON Schema
Structured Output
(raw) {
"command": "git submodule deinit -f --lib && git rm --cached --force --quiet lib"
}
Failure: Failed assertions: [{'type': 'file_not_exists', 'path': 'lib/lib.py'}, {'type': 'git_output', 'command': 'git config --get submodule.lib.url', 'not_contains': 'lib-bare'}]
git deinit lib
Failure: Failed assertions: [{'type': 'file_not_exists', 'path': 'lib/lib.py'}, {'type': 'git_output', 'command': 'git config --get submodule.lib.url', 'not_contains': 'lib-bare'}]
git deinit lib
Failure: Failed assertions: [{'type': 'file_not_exists', 'path': 'lib/lib.py'}, {'type': 'git_output', 'command': 'git config --get submodule.lib.url', 'not_contains': 'lib-bare'}]
git deinit lib
JSON Schema
Structured Output
(raw) {
"command": "git deinit lib"
}
Failure: Failed assertions: [{'type': 'file_not_exists', 'path': 'lib/lib.py'}, {'type': 'git_output', 'command': 'git config --get submodule.lib.url', 'not_contains': 'lib-bare'}]