| Dimension | Shared | Only in A | Only in B | Overlap |
|---|---|---|---|---|
| Sections | 0 | 1 | 7 | 0% |
| Commands | 0 | 0 | 0 | — |
| Section tags | 0 | 0 | 5 | 0% |
What each file covers
Sections
0 shared · 1 only in A · 7 only in B- − Teaching and Learning Approach (Severity: Warning)
- + Code Style Rules for Fasten
- + Zig Code Style
- + Documentation
- + Error Handling
- + Memory Management
- + Testing
- + Performance
Commands
neither file has anySection tags
0 shared · 0 only in A · 5 only in B- + test
- + code-style
- + performance
- + do-not
- + docs
Line diff
v1truv1us/fasten · .cursor/rules/teaching.mdc
@@ −3 @@
3globs:
4alwaysApply: true
5---
6## Teaching and Learning Approach (Severity: Warning)
7- Act as a guide and teacher, not a code writer
8- Explain concepts clearly with examples and reasoning
9- Break down complex topics into digestible steps
10- Show patterns and syntax to follow, but let user implement
11- Focus on "why" and "how" rather than just "what"
12- Ask guiding questions to help user think through design decisions
13- Help debug and troubleshoot when user gets stuck
14- Avoid writing complete implementations or large code blocks
15- Encourage incremental learning and experimentation
16- Provide conceptual examples, not production code to copy-paste
v1truv1us/fasten · .cursor/rules/code_style.mdc
@@ +3 @@
3globs:
4alwaysApply: true
5---
6# Code Style Rules for Fasten
7
8## Zig Code Style
9- Organize files: std imports, local imports, constants, types, public/private functions, tests.
10- Naming: camelCase for functions, snake_case for variables/fields, PascalCase for types/enums, SCREAMING_SNAKE_CASE for constants.
11- Indent with 4 spaces, no tabs. Max line length: 100 chars.
12- One space around binary ops, after commas/semicolons; no trailing whitespace.
13- Braces on same line; always use braces for control structures.
14
15## Documentation
16- Document all public functions with triple-slash comments (///), including params, returns, errors.
17- Use inline comments for complex/non-obvious code.
18
19## Error Handling
20- Use specific error enums per module; descriptive error names.
21- Use `try` for propagation; `catch` only for meaningful handling.
22- Include file, line, column in error messages.
23
24## Memory Management
25- Pass allocators explicitly; use ArenaAllocator for temp data.
26- Use `defer` for cleanup; always free resources.
27
28## Testing
29- Group related tests; descriptive names; test both success and error cases.
30- Use realistic and edge-case data.
31
32## Performance
33- Minimize allocations in hot paths; reuse buffers; avoid unnecessary copying.
34- Tokenization: <1ms/KB; Parsing: <5ms/KB; Memory: <2x input size.
35
@@ −3 +3 @@
33 globs:
44 alwaysApply: true
55 ---
6−## Teaching and Learning Approach (Severity: Warning)
7−- Act as a guide and teacher, not a code writer
8−- Explain concepts clearly with examples and reasoning
9−- Break down complex topics into digestible steps
10−- Show patterns and syntax to follow, but let user implement
11−- Focus on "why" and "how" rather than just "what"
12−- Ask guiding questions to help user think through design decisions
13−- Help debug and troubleshoot when user gets stuck
14−- Avoid writing complete implementations or large code blocks
15−- Encourage incremental learning and experimentation
16−- Provide conceptual examples, not production code to copy-paste
6+# Code Style Rules for Fasten
7+
8+## Zig Code Style
9+- Organize files: std imports, local imports, constants, types, public/private functions, tests.
10+- Naming: camelCase for functions, snake_case for variables/fields, PascalCase for types/enums, SCREAMING_SNAKE_CASE for constants.
11+- Indent with 4 spaces, no tabs. Max line length: 100 chars.
12+- One space around binary ops, after commas/semicolons; no trailing whitespace.
13+- Braces on same line; always use braces for control structures.
14+
15+## Documentation
16+- Document all public functions with triple-slash comments (///), including params, returns, errors.
17+- Use inline comments for complex/non-obvious code.
18+
19+## Error Handling
20+- Use specific error enums per module; descriptive error names.
21+- Use `try` for propagation; `catch` only for meaningful handling.
22+- Include file, line, column in error messages.
23+
24+## Memory Management
25+- Pass allocators explicitly; use ArenaAllocator for temp data.
26+- Use `defer` for cleanup; always free resources.
27+
28+## Testing
29+- Group related tests; descriptive names; test both success and error cases.
30+- Use realistic and edge-case data.
31+
32+## Performance
33+- Minimize allocations in hot paths; reuse buffers; avoid unnecessary copying.
34+- Tokenization: <1ms/KB; Parsing: <5ms/KB; Memory: <2x input size.
35+
