docs(post-mortem): Apply session start checklists and edit tool warnings

From gui_decoupling_controller track post-mortem:

workflow.md:
- Add mandatory session start checklist (6 items)
- Add code style section with 1-space indentation enforcement
- Add native edit tool warning with MCP alternatives

AGENTS.md:
- Add critical native edit tool warning
- Document MCP tool alternatives for file editing

tier1-orchestrator.md:
- Add session start checklist

tier2-tech-lead.md:
- Add session start checklist
- Add tool restrictions section (allowed vs forbidden)
- Add explicit delegation pattern

tier3-worker.md:
- Add task start checklist

tier4-qa.md:
- Add analysis start checklist
This commit is contained in:
2026-03-04 22:42:52 -05:00
parent 270f5f7e31
commit dccfbd8bb7
6 changed files with 131 additions and 8 deletions

View File

@@ -1,5 +1,50 @@
# Project Workflow
## Session Start Checklist (MANDATORY)
Before ANY other action in a new session:
1. [ ] Read `conductor/workflow.md` (this file)
2. [ ] Read `conductor/tech-stack.md`
3. [ ] Read `conductor/product.md`
4. [ ] Read relevant `docs/guide_*.md` for current task domain
5. [ ] Check `TASKS.md` for active/in-progress tracks
6. [ ] Announce: "Context loaded, proceeding to [task]"
**BLOCK PROGRESS** until all checklist items are confirmed.
## Code Style (MANDATORY - Python)
- **1-space indentation** for ALL Python code (NO EXCEPTIONS)
- **CRLF line endings** on Windows
- Use `./scripts/ai_style_formatter.py` for formatting validation
- **NO COMMENTS** unless explicitly requested
- Type hints required for all public functions
### CRITICAL: Native Edit Tool Destroys Indentation
The native `Edit` tool DESTROYS 1-space indentation and converts to 4-space.
**NEVER use native `edit` tool on Python files.**
Instead, use Manual Slop MCP tools:
- `manual-slop_py_update_definition` - Replace function/class
- `manual-slop_set_file_slice` - Replace line range
- `manual-slop_py_set_signature` - Replace signature only
Or use Python subprocess with `newline=''` to preserve line endings:
```python
python -c "
with open('file.py', 'r', encoding='utf-8', newline='') as f:
content = f.read()
content = content.replace(old, new)
with open('file.py', 'w', encoding='utf-8', newline='') as f:
f.write(content)
"
```
## Guiding Principles
## Guiding Principles
1. **The Plan is the Source of Truth:** All work must be tracked in `plan.md`