Private
Public Access
feat(directives): add rule-statement header to 41-48 of 66 v1.md files
This commit is contained in:
@@ -1,3 +1,5 @@
|
|||||||
|
# New top-level src/<thing>.py files are only created on explicit user authorization
|
||||||
|
|
||||||
### Hard rule on creating new `src/<thing>.py` files (added 2026-06-11)
|
### Hard rule on creating new `src/<thing>.py` files (added 2026-06-11)
|
||||||
|
|
||||||
**New namespaced `src/<thing>.py` files may only be created on the user's explicit request.** If you find yourself about to create one, **ASK FIRST** — don't just create it.
|
**New namespaced `src/<thing>.py` files may only be created on the user's explicit request.** If you find yourself about to create one, **ASK FIRST** — don't just create it.
|
||||||
|
|||||||
@@ -1,2 +1,4 @@
|
|||||||
|
# Test output must never be filtered through Select-Object, head, tail — redirect to a log file
|
||||||
|
|
||||||
From `conductor/workflow.md` §"Tier 2 Autonomous Sandbox" §"Conventions" #2:
|
From `conductor/workflow.md` §"Tier 2 Autonomous Sandbox" §"Conventions" #2:
|
||||||
2. **NEVER filter test output** (added 2026-06-27 per user directive). Do NOT pipe test output through `Select-Object`, `| Select -First N`, `| Select -Last N`, `head`, `tail`, or any truncation filter. If you need to see more output later, you'll have to re-run the entire test — which wastes time and context. Instead, ALWAYS redirect to a log file: `uv run python scripts/run_tests_batched.py > tests/artifacts/tier2_state/<track>/test_run_<phase>_<task>.log 2>&1`. Then read the log file with `manual-slop_read_file` or `grep` to find the relevant sections. The log file is your full record; you can search it without re-running.
|
2. **NEVER filter test output** (added 2026-06-27 per user directive). Do NOT pipe test output through `Select-Object`, `| Select -First N`, `| Select -Last N`, `head`, `tail`, or any truncation filter. If you need to see more output later, you'll have to re-run the entire test — which wastes time and context. Instead, ALWAYS redirect to a log file: `uv run python scripts/run_tests_batched.py > tests/artifacts/tier2_state/<track>/test_run_<phase>_<task>.log 2>&1`. Then read the log file with `manual-slop_read_file` or `grep` to find the relevant sections. The log file is your full record; you can search it without re-running.
|
||||||
@@ -1,3 +1,5 @@
|
|||||||
|
# Tests must not do real I/O against the filesystem or network — isolate under tests/artifacts/
|
||||||
|
|
||||||
## The 4 test infrastructure principles
|
## The 4 test infrastructure principles
|
||||||
|
|
||||||
1. **No real I/O during tests** — every test gets a sandboxed workspace via the `isolate_workspace` autouse fixture.
|
1. **No real I/O during tests** — every test gets a sandboxed workspace via the `isolate_workspace` autouse fixture.
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
# @pytest.mark.skip is documentation of a known failure, not an escape from fixing the bug
|
||||||
|
|
||||||
## Skip-Marker Policy: Documentation, Not Avoidance
|
## Skip-Marker Policy: Documentation, Not Avoidance
|
||||||
|
|
||||||
`@pytest.mark.skip(reason=...)` is **documentation of a known failure**, not a way to avoid fixing the underlying bug. Skip markers are useful for:
|
`@pytest.mark.skip(reason=...)` is **documentation of a known failure**, not a way to avoid fixing the underlying bug. Skip markers are useful for:
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
# Python source code uses 1-space indentation (not 4-space, not tabs)
|
||||||
|
|
||||||
## 1. Indentation and Whitespace
|
## 1. Indentation and Whitespace
|
||||||
|
|
||||||
- **Indentation:** 1 space per level. No tabs.
|
- **Indentation:** 1 space per level. No tabs.
|
||||||
|
|||||||
@@ -1,2 +1,4 @@
|
|||||||
|
# Prefer running only the relevant tier rather than the full 11-tier batch for verification
|
||||||
|
|
||||||
From `conductor/workflow.md` §"Tier 2 Autonomous Sandbox" §"Conventions" #3:
|
From `conductor/workflow.md` §"Tier 2 Autonomous Sandbox" §"Conventions" #3:
|
||||||
3. **Prefer targeted tier runs** (added 2026-06-27 per user directive). Do NOT run the full 11-tier batch for every verification. Run only the tiers relevant to the current task (e.g., `--tier tier3` or `--filter test_<specific_file>`). The full batch is for the USER to run after merge review, not for Tier 2's per-task verification. Running the full batch every time wastes 20+ minutes and the output is too large to be useful in context.
|
3. **Prefer targeted tier runs** (added 2026-06-27 per user directive). Do NOT run the full 11-tier batch for every verification. Run only the tiers relevant to the current task (e.g., `--tier tier3` or `--filter test_<specific_file>`). The full batch is for the USER to run after merge review, not for Tier 2's per-task verification. Running the full batch every time wastes 20+ minutes and the output is too large to be useful in context.
|
||||||
@@ -1,3 +1,5 @@
|
|||||||
|
# Preserve existing line endings (CRLF on Windows, LF on Linux); do not normalize via tools
|
||||||
|
|
||||||
### The whitespace-and-EOL rule (mandatory for set_file_slice)
|
### The whitespace-and-EOL rule (mandatory for set_file_slice)
|
||||||
|
|
||||||
The `new_content` must preserve:
|
The `new_content` must preserve:
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
# RAG integration follows 6 rules: opt-in, complement, provenance, no mutation, feature-gated, graceful failure
|
||||||
|
|
||||||
## 0. The 6 rules (the one-glance table)
|
## 0. The 6 rules (the one-glance table)
|
||||||
|
|
||||||
| # | Rule | Why |
|
| # | Rule | Why |
|
||||||
|
|||||||
Reference in New Issue
Block a user