Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,13 @@ jobs:
contents: read
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Configure git identity for graph materialization
run: |
git config user.name "ci-bot"
git config user.email "ci@xyph.dev"

- name: Fetch WARP graph refs
run: git fetch origin 'refs/warp/xyph-roadmap/writers/*:refs/warp/xyph-roadmap/writers/*'
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,4 @@ coverage/
.codex/
.claude/
.xyph.json
docs/work/
12 changes: 12 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,18 @@ All notable changes to XYPH will be documented in this file.

## [Unreleased]

### Added — Work DAG Analysis Suite

- **`DagAnalysis.ts`** — pure functions for DAG structure analysis: level assignment, DAG width, greedy worker scheduling, transitive reduction/closure, anti-chain decomposition, reverse reachability, and provenance tracing
- **`scripts/generate-work-dag.ts`** — generates comprehensive DAG visualization suite: full/per-campaign/backlog/graveyard SVGs in both LR and TB orientations, plus `work.md` analysis document with topological sort, critical path, parallelism, scheduling, transitive reduction/closure, ancestry/impact, campaign grouping, and anti-chain waves
- **`npm run graph:work`** — runs the generator, outputs to `docs/work/`
- **43 new tests** — unit tests for all DagAnalysis functions (diamond, linear, empty, single-node, isolated-node graphs)

### Fixed — PR #32 Code Review

- **DONE tasks inflated scheduling makespan** — `scheduleWorkers` now treats DONE tasks as weight 0, matching `computeCriticalPath` semantics (Codex P1)
- **CI traceability job failure** — added `fetch-depth: 0` and git identity config to traceability workflow; shallow clones lack commit objects needed by git-warp materialization

### Added — Workflow Infrastructure

- **Git hooks** — `scripts/hooks/pre-commit` (lint gate) and `scripts/hooks/pre-push` (test gate); plain shell scripts, no Husky/lint-staged
Expand Down
9 changes: 9 additions & 0 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,15 @@ If the types are hard, that means you need to understand the code better.
before your branch — fix them. You touched the codebase; you leave it better than
you found it.

**NEVER implement graph algorithms in userland:**
- If you find yourself implementing graph algorithms (BFS, DFS, topological sort,
reachability, transitive reduction/closure, level assignment, etc.), **STOP**.
- git-warp probably already does what you need via `graph.traverse.*` or `graph.query()`.
- If git-warp doesn't have the primitive you need, **STOP** and request the user adds
the desired functionality to git-warp. You must never assume that the full DAG can
fit in memory at once — git-warp's traversals are designed to work incrementally
over the commit graph.

### Project Planning via the Actuator
XYPH plans and tracks its own development through the WARP graph.
The `xyph-actuator.ts` CLI is the single source of truth for what's been done,
Expand Down
2,275 changes: 2,275 additions & 0 deletions docs/assets/work-dag.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
"test:local": "vitest run",
"graph:pull": "git fetch origin 'refs/warp/xyph-roadmap/writers/*:refs/warp/xyph-roadmap/writers/*'",
"graph:push": "git push origin 'refs/warp/xyph-roadmap/writers/*:refs/warp/xyph-roadmap/writers/*'",
"graph:work": "npx tsx scripts/generate-work-dag.ts",
"postinstall": "patch-package"
},
"dependencies": {
Expand Down
Loading