Commit b12448a

bryfry <bryon@fryer.io>
2025-07-22 10:20:41
docs: Update documentation for Makefile integration
- Update CLAUDE.md project structure to include tools/vendor directory - Add Makefile and vendor management tools to architecture overview - Update key concepts to mention vendor dependency management approach - Update RFD 002 workflow to use Makefile commands for testing and building - Replace direct go commands with make build, make test, make lint in workflow - Update quality checks section to reference Makefile targets
1 parent 4e6631a
Changed files (2)
docs/rfd/002/README.md
@@ -71,8 +71,10 @@ git diff --staged  # Returns empty (no staged changes)
 ### 4. Testing & Verification
 **Claude's Actions:**
 - Run specified tests from the task (unit/integration/manual)
-- Execute build commands to verify no compilation errors
-- Run any other relevant commands (linting, type checking, etc.)
+- Use `make build` to verify no compilation errors (includes vendor unpack)
+- Use `make test` to run all tests (includes vendor unpack)
+- Use `make lint` for code quality checks (vet + format validation)
+- Use `make fmt` if code formatting issues are found
 
 ### 5. Human Verification Request
 **Claude's Actions:**
@@ -165,9 +167,11 @@ If a new RFD topic is appropriate:
 
 ### Before Marking task Complete
 - [ ] All acceptance criteria met
-- [ ] All specified tests pass
+- [ ] All specified tests pass (`make test`)
+- [ ] Build succeeds without errors (`make build`)
+- [ ] Code passes linting checks (`make lint`)
+- [ ] Code is properly formatted (`make fmt` if needed)
 - [ ] No new console errors or warnings  
-- [ ] Code follows project conventions
 - [ ] Relevant documentation updated
 - [ ] Human verification completed
 
docs/CLAUDE.md
@@ -67,11 +67,17 @@ buylater/
 │       ├── main.go      - Application entry point
 │       └── handlers.go  - HTTP handler functions
 ├── internal/            - Internal packages (future)
+├── tools/
+│   └── vendor/         - Vendor dependency management tools
+│       ├── pack.go     - Create vendor.tar.gz from vendor/ dir
+│       ├── unpack.go   - Extract vendor.tar.gz to vendor/ dir
+│       └── vendor.tar.gz - Compressed vendor dependencies
 ├── ui/
 │   ├── html/           - HTML templates
 │   │   └── pages/      - Page templates
 │   └── static/         - Static assets (future)
 ├── docs/               - Documentation and RFDs
+├── Makefile            - Build automation (5 targets)
 └── go.mod
 ```
 
@@ -81,6 +87,8 @@ buylater/
 - Uses html/template package for rendering HTML templates
 - Handlers separated from main application logic
 - Template files organized in ui/html directory structure
+- Vendor dependencies managed via compressed tar.gz to keep repo clean
+- Makefile provides 5 essential build targets with vendor integration
 
 ### Documentation
 - `docs/lets-go/` - "Let's Go" tutorial materials for learning Go web development