docs: mark all notgraph plan tasks complete; close notfile-3
This commit is contained in:
@@ -41,7 +41,7 @@
|
||||
- Create: `crates/notgraph/Cargo.toml`
|
||||
- Modify: `Cargo.toml` (workspace root)
|
||||
|
||||
- [ ] **Step 1: Add notgraph to workspace**
|
||||
- [x] **Step 1: Add notgraph to workspace**
|
||||
|
||||
Edit `/Users/joe/dev/notfiles/Cargo.toml`, add `"crates/notgraph"` to the `members` array:
|
||||
|
||||
@@ -58,7 +58,7 @@ members = [
|
||||
]
|
||||
```
|
||||
|
||||
- [ ] **Step 2: Create the crate manifest**
|
||||
- [x] **Step 2: Create the crate manifest**
|
||||
|
||||
Create `crates/notgraph/Cargo.toml`:
|
||||
|
||||
@@ -87,7 +87,7 @@ syn = { version = "2", features = ["full", "visit"] }
|
||||
walkdir = "2"
|
||||
```
|
||||
|
||||
- [ ] **Step 3: Create stub lib.rs and main.rs**
|
||||
- [x] **Step 3: Create stub lib.rs and main.rs**
|
||||
|
||||
Create `crates/notgraph/src/lib.rs`:
|
||||
|
||||
@@ -109,7 +109,7 @@ fn main() {
|
||||
}
|
||||
```
|
||||
|
||||
- [ ] **Step 4: Verify it builds**
|
||||
- [x] **Step 4: Verify it builds**
|
||||
|
||||
```
|
||||
cargo build -p notgraph
|
||||
@@ -117,7 +117,7 @@ cargo build -p notgraph
|
||||
|
||||
Expected: compiles cleanly.
|
||||
|
||||
- [ ] **Step 5: Commit**
|
||||
- [x] **Step 5: Commit**
|
||||
|
||||
```
|
||||
git add crates/notgraph/ Cargo.toml Cargo.lock
|
||||
@@ -132,7 +132,7 @@ git commit -m "feat(notgraph): scaffold crate with lib+bin targets"
|
||||
|
||||
- Modify: `crates/notgraph/src/types.rs`
|
||||
|
||||
- [ ] **Step 1: Write the types module**
|
||||
- [x] **Step 1: Write the types module**
|
||||
|
||||
Replace `crates/notgraph/src/types.rs` with:
|
||||
|
||||
@@ -237,7 +237,7 @@ pub struct GraphStats {
|
||||
}
|
||||
```
|
||||
|
||||
- [ ] **Step 2: Verify it compiles**
|
||||
- [x] **Step 2: Verify it compiles**
|
||||
|
||||
```
|
||||
cargo check -p notgraph
|
||||
@@ -245,7 +245,7 @@ cargo check -p notgraph
|
||||
|
||||
Expected: no errors.
|
||||
|
||||
- [ ] **Step 3: Commit**
|
||||
- [x] **Step 3: Commit**
|
||||
|
||||
```
|
||||
git add crates/notgraph/src/types.rs
|
||||
@@ -261,7 +261,7 @@ git commit -m "feat(notgraph): define all shared types"
|
||||
- Create: `crates/notgraph/src/crate_graph.rs`
|
||||
- Modify: `crates/notgraph/src/lib.rs`
|
||||
|
||||
- [ ] **Step 1: Write the implementation with unit test**
|
||||
- [x] **Step 1: Write the implementation with unit test**
|
||||
|
||||
Create `crates/notgraph/src/crate_graph.rs`:
|
||||
|
||||
@@ -317,7 +317,7 @@ mod tests {
|
||||
}
|
||||
```
|
||||
|
||||
- [ ] **Step 2: Add to lib.rs**
|
||||
- [x] **Step 2: Add to lib.rs**
|
||||
|
||||
Replace `crates/notgraph/src/lib.rs`:
|
||||
|
||||
@@ -356,7 +356,7 @@ Create stub `crates/notgraph/src/symbols.rs`:
|
||||
// implemented in Task 5
|
||||
```
|
||||
|
||||
- [ ] **Step 3: Run test**
|
||||
- [x] **Step 3: Run test**
|
||||
|
||||
```
|
||||
cargo test -p notgraph crate_graph
|
||||
@@ -364,7 +364,7 @@ cargo test -p notgraph crate_graph
|
||||
|
||||
Expected: 1 test passed.
|
||||
|
||||
- [ ] **Step 4: Commit**
|
||||
- [x] **Step 4: Commit**
|
||||
|
||||
```
|
||||
git add crates/notgraph/src/
|
||||
@@ -380,7 +380,7 @@ git commit -m "feat(notgraph): implement crate_graph collector"
|
||||
- Modify: `crates/notgraph/src/module_graph.rs`
|
||||
- Create: fixture files
|
||||
|
||||
- [ ] **Step 1: Create clean fixture**
|
||||
- [x] **Step 1: Create clean fixture**
|
||||
|
||||
Create `crates/notgraph/tests/fixtures/clean/src/lib.rs`:
|
||||
|
||||
@@ -401,7 +401,7 @@ Create `crates/notgraph/tests/fixtures/clean/src/beta.rs`:
|
||||
pub fn greet() -> &'static str { "beta" }
|
||||
```
|
||||
|
||||
- [ ] **Step 2: Write module_graph implementation**
|
||||
- [x] **Step 2: Write module_graph implementation**
|
||||
|
||||
Replace `crates/notgraph/src/module_graph.rs`:
|
||||
|
||||
@@ -513,7 +513,7 @@ mod tests {
|
||||
}
|
||||
```
|
||||
|
||||
- [ ] **Step 3: Run tests**
|
||||
- [x] **Step 3: Run tests**
|
||||
|
||||
```
|
||||
cargo test -p notgraph module_graph
|
||||
@@ -521,7 +521,7 @@ cargo test -p notgraph module_graph
|
||||
|
||||
Expected: 2 tests passed.
|
||||
|
||||
- [ ] **Step 4: Commit**
|
||||
- [x] **Step 4: Commit**
|
||||
|
||||
```
|
||||
git add crates/notgraph/src/module_graph.rs crates/notgraph/tests/fixtures/clean/
|
||||
@@ -537,7 +537,7 @@ git commit -m "feat(notgraph): implement module_graph collector"
|
||||
- Modify: `crates/notgraph/src/symbols.rs`
|
||||
- Create: `crates/notgraph/tests/fixtures/symbols/src/lib.rs`
|
||||
|
||||
- [ ] **Step 1: Create symbols fixture**
|
||||
- [x] **Step 1: Create symbols fixture**
|
||||
|
||||
Create `crates/notgraph/tests/fixtures/symbols/src/lib.rs`:
|
||||
|
||||
@@ -551,7 +551,7 @@ pub const VALUE: u32 = 42;
|
||||
struct Private;
|
||||
```
|
||||
|
||||
- [ ] **Step 2: Write symbols implementation**
|
||||
- [x] **Step 2: Write symbols implementation**
|
||||
|
||||
Replace `crates/notgraph/src/symbols.rs`:
|
||||
|
||||
@@ -691,7 +691,7 @@ mod tests {
|
||||
}
|
||||
```
|
||||
|
||||
- [ ] **Step 3: Run tests**
|
||||
- [x] **Step 3: Run tests**
|
||||
|
||||
```
|
||||
cargo test -p notgraph symbols
|
||||
@@ -699,7 +699,7 @@ cargo test -p notgraph symbols
|
||||
|
||||
Expected: 7 tests passed.
|
||||
|
||||
- [ ] **Step 4: Commit**
|
||||
- [x] **Step 4: Commit**
|
||||
|
||||
```
|
||||
git add crates/notgraph/src/symbols.rs crates/notgraph/tests/fixtures/symbols/
|
||||
@@ -715,7 +715,7 @@ git commit -m "feat(notgraph): implement symbols extractor"
|
||||
- Modify: `crates/notgraph/src/analysis.rs`
|
||||
- Create: `crates/notgraph/tests/fixtures/cyclic/src/` files
|
||||
|
||||
- [ ] **Step 1: Create cyclic fixture**
|
||||
- [x] **Step 1: Create cyclic fixture**
|
||||
|
||||
Create `crates/notgraph/tests/fixtures/cyclic/src/lib.rs`:
|
||||
|
||||
@@ -736,7 +736,7 @@ Create `crates/notgraph/tests/fixtures/cyclic/src/bar.rs`:
|
||||
pub mod foo;
|
||||
```
|
||||
|
||||
- [ ] **Step 2: Write analysis implementation**
|
||||
- [x] **Step 2: Write analysis implementation**
|
||||
|
||||
Replace `crates/notgraph/src/analysis.rs`:
|
||||
|
||||
@@ -909,7 +909,7 @@ mod tests {
|
||||
}
|
||||
```
|
||||
|
||||
- [ ] **Step 3: Run tests**
|
||||
- [x] **Step 3: Run tests**
|
||||
|
||||
```
|
||||
cargo test -p notgraph analysis
|
||||
@@ -917,7 +917,7 @@ cargo test -p notgraph analysis
|
||||
|
||||
Expected: 4 tests passed.
|
||||
|
||||
- [ ] **Step 4: Commit**
|
||||
- [x] **Step 4: Commit**
|
||||
|
||||
```
|
||||
git add crates/notgraph/src/analysis.rs crates/notgraph/tests/fixtures/cyclic/
|
||||
@@ -932,7 +932,7 @@ git commit -m "feat(notgraph): implement analysis (fan stats, Kahn cycles, hotsp
|
||||
|
||||
- Modify: `crates/notgraph/src/emit.rs`
|
||||
|
||||
- [ ] **Step 1: Write emit implementation**
|
||||
- [x] **Step 1: Write emit implementation**
|
||||
|
||||
Replace `crates/notgraph/src/emit.rs`:
|
||||
|
||||
@@ -1046,7 +1046,7 @@ fn write_html(dir: &Path, stats: &GraphStats) -> Result<()> {
|
||||
}
|
||||
```
|
||||
|
||||
- [ ] **Step 2: Create the HTML template**
|
||||
- [x] **Step 2: Create the HTML template**
|
||||
|
||||
Create `crates/notgraph/templates/report.html.template`:
|
||||
|
||||
@@ -1115,7 +1115,7 @@ Create `crates/notgraph/templates/report.html.template`:
|
||||
</html>
|
||||
```
|
||||
|
||||
- [ ] **Step 3: Verify it compiles**
|
||||
- [x] **Step 3: Verify it compiles**
|
||||
|
||||
```
|
||||
cargo check -p notgraph
|
||||
@@ -1123,7 +1123,7 @@ cargo check -p notgraph
|
||||
|
||||
Expected: no errors.
|
||||
|
||||
- [ ] **Step 4: Commit**
|
||||
- [x] **Step 4: Commit**
|
||||
|
||||
```
|
||||
git add crates/notgraph/src/emit.rs crates/notgraph/templates/
|
||||
@@ -1138,7 +1138,7 @@ git commit -m "feat(notgraph): implement emit (md, json, html)"
|
||||
|
||||
- Modify: `crates/notgraph/src/main.rs`
|
||||
|
||||
- [ ] **Step 1: Replace main.rs with full CLI**
|
||||
- [x] **Step 1: Replace main.rs with full CLI**
|
||||
|
||||
Replace `crates/notgraph/src/main.rs`:
|
||||
|
||||
@@ -1235,7 +1235,7 @@ fn find_workspace_manifest() -> Result<PathBuf> {
|
||||
}
|
||||
```
|
||||
|
||||
- [ ] **Step 2: Build and smoke-test**
|
||||
- [x] **Step 2: Build and smoke-test**
|
||||
|
||||
```
|
||||
cargo run -p notgraph -- --output /tmp/notgraph-test
|
||||
@@ -1249,7 +1249,7 @@ ls /tmp/notgraph-test
|
||||
|
||||
Expected: `report.json report.md report.html`
|
||||
|
||||
- [ ] **Step 3: Verify --fail-on-cycles exits 0 on clean workspace**
|
||||
- [x] **Step 3: Verify --fail-on-cycles exits 0 on clean workspace**
|
||||
|
||||
```
|
||||
cargo run -p notgraph -- --output /tmp/notgraph-test --fail-on-cycles; echo "exit $?"
|
||||
@@ -1257,7 +1257,7 @@ cargo run -p notgraph -- --output /tmp/notgraph-test --fail-on-cycles; echo "exi
|
||||
|
||||
Expected: `exit 0`
|
||||
|
||||
- [ ] **Step 4: Run clippy**
|
||||
- [x] **Step 4: Run clippy**
|
||||
|
||||
```
|
||||
cargo clippy -p notgraph -- -D warnings
|
||||
@@ -1265,7 +1265,7 @@ cargo clippy -p notgraph -- -D warnings
|
||||
|
||||
Fix any warnings.
|
||||
|
||||
- [ ] **Step 5: Commit**
|
||||
- [x] **Step 5: Commit**
|
||||
|
||||
```
|
||||
git add crates/notgraph/src/main.rs
|
||||
@@ -1280,7 +1280,7 @@ git commit -m "feat(notgraph): wire full CLI pipeline"
|
||||
|
||||
- Create: `crates/notgraph/tests/integration.rs`
|
||||
|
||||
- [ ] **Step 1: Write integration tests**
|
||||
- [x] **Step 1: Write integration tests**
|
||||
|
||||
Create `crates/notgraph/tests/integration.rs`:
|
||||
|
||||
@@ -1328,7 +1328,7 @@ fn symbols_fixture_has_six_public_symbols() {
|
||||
}
|
||||
```
|
||||
|
||||
- [ ] **Step 2: Run integration tests**
|
||||
- [x] **Step 2: Run integration tests**
|
||||
|
||||
```
|
||||
cargo test -p notgraph --test integration
|
||||
@@ -1336,7 +1336,7 @@ cargo test -p notgraph --test integration
|
||||
|
||||
Expected: 3 tests passed.
|
||||
|
||||
- [ ] **Step 3: Run all notgraph tests**
|
||||
- [x] **Step 3: Run all notgraph tests**
|
||||
|
||||
```
|
||||
cargo test -p notgraph
|
||||
@@ -1344,7 +1344,7 @@ cargo test -p notgraph
|
||||
|
||||
Expected: all tests pass.
|
||||
|
||||
- [ ] **Step 4: Commit**
|
||||
- [x] **Step 4: Commit**
|
||||
|
||||
```
|
||||
git add crates/notgraph/tests/integration.rs
|
||||
@@ -1360,7 +1360,7 @@ git commit -m "test(notgraph): add integration tests for clean/cyclic/symbols fi
|
||||
- Modify: `mise.toml`
|
||||
- Modify or create: `.gitignore`
|
||||
|
||||
- [ ] **Step 1: Add graph tasks to mise.toml**
|
||||
- [x] **Step 1: Add graph tasks to mise.toml**
|
||||
|
||||
In `mise.toml`, add after `[tasks."all:dep-boundaries"]`:
|
||||
|
||||
@@ -1374,7 +1374,7 @@ description = "CI: fail if module cycles detected"
|
||||
run = "cargo run -p notgraph --release -- --output docs/graph --fail-on-cycles"
|
||||
```
|
||||
|
||||
- [ ] **Step 2: Add graph-check to the all:ci gate**
|
||||
- [x] **Step 2: Add graph-check to the all:ci gate**
|
||||
|
||||
In `mise.toml`, in the `all:ci` task run script, add after the dep-boundaries line:
|
||||
|
||||
@@ -1383,7 +1383,7 @@ echo "── graph-check ──────────────────
|
||||
cargo run -p notgraph --release -- --output docs/graph --fail-on-cycles
|
||||
```
|
||||
|
||||
- [ ] **Step 3: Gitignore generated reports**
|
||||
- [x] **Step 3: Gitignore generated reports**
|
||||
|
||||
Add to `.gitignore` (create file at workspace root if it doesn't exist):
|
||||
|
||||
@@ -1391,7 +1391,7 @@ Add to `.gitignore` (create file at workspace root if it doesn't exist):
|
||||
docs/graph/
|
||||
```
|
||||
|
||||
- [ ] **Step 4: Run full CI gate**
|
||||
- [x] **Step 4: Run full CI gate**
|
||||
|
||||
```
|
||||
mise run all:ci
|
||||
@@ -1399,13 +1399,13 @@ mise run all:ci
|
||||
|
||||
Expected: all gates pass, exits 0.
|
||||
|
||||
- [ ] **Step 5: Mark todo complete**
|
||||
- [x] **Step 5: Mark todo complete**
|
||||
|
||||
```
|
||||
doob todo complete ubj2z5rs9wxiktlt0fwp
|
||||
```
|
||||
|
||||
- [ ] **Step 6: Commit**
|
||||
- [x] **Step 6: Commit**
|
||||
|
||||
```
|
||||
git add mise.toml .gitignore
|
||||
|
||||
Reference in New Issue
Block a user