yserver
A modern X11 server written from scratch in Rust, developed spec-first from day one — every feature phase flows through dated design docs, implementation plans, and findings under docs/superpowers/.
Reviewed 2 months ago · Aug 31, 2026
- Stars
- 604
- Contributors
- 6
- Open issues
- 8
- Age
- 6 months
- Last push
- 8 hours ago
- Latest release
- v1.7.1 Oct 9, 2026
View weekly commit data
| Week starting | Commits |
|---|---|
| Oct 11, 2026 | 67 |
| Oct 4, 2026 | 151 |
| Sep 27, 2026 | 70 |
| Sep 20, 2026 | 47 |
| Sep 13, 2026 | 24 |
| Sep 6, 2026 | 32 |
| Aug 30, 2026 | 7 |
| Aug 23, 2026 | 6 |
| Aug 16, 2026 | 0 |
| Aug 9, 2026 | 12 |
| Aug 2, 2026 | 15 |
| Jul 26, 2026 | 66 |
| Jul 19, 2026 | 21 |
| Jul 12, 2026 | 24 |
| Jul 5, 2026 | 44 |
| Jun 28, 2026 | 41 |
| Jun 21, 2026 | 78 |
| Jun 14, 2026 | 40 |
| Jun 7, 2026 | 154 |
| May 31, 2026 | 80 |
| May 24, 2026 | 248 |
| May 17, 2026 | 252 |
| May 10, 2026 | 329 |
| May 3, 2026 | 89 |
| Apr 26, 2026 | 120 |
| Apr 19, 2026 | 0 |
| Apr 12, 2026 | 0 |
| Apr 5, 2026 | 0 |
| Mar 29, 2026 | 0 |
| Mar 22, 2026 | 0 |
| Mar 15, 2026 | 0 |
| Mar 8, 2026 | 0 |
| Mar 1, 2026 | 0 |
| Feb 22, 2026 | 0 |
| Feb 15, 2026 | 0 |
| Feb 8, 2026 | 0 |
| Feb 1, 2026 | 0 |
| Jan 25, 2026 | 0 |
| Jan 18, 2026 | 0 |
| Jan 11, 2026 | 0 |
| Jan 4, 2026 | 0 |
| Dec 28, 2025 | 0 |
| Dec 21, 2025 | 0 |
| Dec 14, 2025 | 0 |
| Dec 7, 2025 | 0 |
| Nov 30, 2025 | 0 |
| Nov 23, 2025 | 0 |
| Nov 16, 2025 | 0 |
| Nov 9, 2025 | 0 |
| Nov 2, 2025 | 0 |
| Oct 26, 2025 | 0 |
| Oct 19, 2025 | 0 |
Metrics updated Oct 15, 2026 · collected automatically from the GitHub API
Spec structure
- Location
docs/superpowers/- Formats
- Markdown
- Notes
- Five subdirectories of dated Markdown artifacts:
plans/(107 files),specs/(55),findings/(17),notes/(1), andstatus/(1). Plans pair with-results.mdcompanions (e.g. therendering-rearchitecture-phase*series), andfindings/holds root-cause diagnoses like2026-07-08-mate-compositor-drag-smear-diagnosis.md.
Assessment drift: high
Spec-to-code drift
High (H1). The live Present completion-clock design marks two rules as invariants: active sequence events cannot
release Pixmap completions, and only a sequence observed while idle may advance the completion clock. A post-spec
fix now makes explicitly tagged absolute sequence events completion-eligible even while a page flip is active,
directly reversing that core pacing rule. A second change replaces the claimed sole post-copy host wake with GPU
fence publication into the client’s release timeline. Split-SoC render-node resolution and syncobj ownership fixes
remain covered by affirmative live claims.
The editorial v4 review covered all 67 nominated spec artifacts, 4,476 compiler-owned claim candidates, and the complete 90-day first-parent window without using the OpenAI API. See the manual assessment record.
Defects and rework
Rework is unusually visible. findings/ holds 17 dated root-cause documents (e.g.
2026-06-09-glx-tfp-radv-export-rootcause.md, 2026-07-08-mate-compositor-drag-smear-diagnosis.md), and the
latest cycle explicitly targets a recurring bug class: the grab-ownership plan unifies three parallel grab
fields so that the “release routes to the wrong client / grab lingers” defect class collapses. Commit messages
show specs absorbing revision before code does (“codex-clean after 2 review rounds”, “KMS teardown fix plan
v4”).
Maintenance outcomes
In under three months the project went from bootstrap to running full MATE, XFCE, and Cinnamon desktops,
tagging v1.0.0 through v1.3.0 along the way, with four contributors working through the shared spec tree.
The retention audit is itself a maintenance signal: the team treats the spec corpus as something to curate,
not a write-only log.
Timeline
-
Latest spec activity
"fix(grab): unify pointer-grab ownership + Xorg-faithful guard/attribution/lifetime" — spec, plan, and implementation for grab-ownership unification.
-
Spec-tree retention audit
`status/2026-07-11-doc-retention-audit.md` inventoried the tree and classified 131 of its files as unreferenced "migration archaeology" to be archived.
-
Superpowers adopted at project creation
First spec-path commit — "docs: design for property storage + shared server state" — landed the day the repository was created.