Skip to main content
Welcome. This site supports keyboard navigation and screen readers. Press ? at any time for keyboard shortcuts. Press [ to focus the sidebar, ] to focus the content. High-contrast themes are available via the toolbar.
serard@dev00:~/cv

tspec: Compiler-Enforced Project Management for Enterprise Teams

From 300-Line Scanner to Enterprise Platform

The versus series found 42 gaps where typed specifications fall short. This series closes every one.


The Gap-Closure Matrix

Every limitation identified in the versus series maps to a tspec component:

Gap Source tspec Component Part
No workflow states vs. Jira (Part I) Workflow DSL + Diem state machine IV
No sprint planning vs. Jira (Part I) Dashboard sprint view VIII
No stakeholder dashboards vs. Jira (Part I) Diem Admin auto-generated UI VII
No assignment tracking vs. Jira (Part I) tspec assign + Dashboard VI
No cross-team dependencies vs. Jira (Part I) Multi-repo federation XI
Non-developers can't read specs vs. BDD (Part II) Natural-language rendering IX
PMs can't co-author vs. BDD (Part II) Approval workflow in dashboard IX
No regulatory documentation vs. BDD (Part II) Gherkin + PDF export IX
No web dashboards vs. Allure (Part III) Diem Admin dashboard VIII
No historical trends vs. Allure (Part III) Scan history + trend charts VIII
No audit trails vs. Allure (Part III) Enterprise audit log XI
No manual test tracking vs. Allure (Part III) QA manual verification in dashboard IX
Flat hierarchy (TS) vs. Roslyn (Part VII) Generic constraints + M3 flavors II, III
Regex scanner (not AST) vs. Roslyn (Part VII) Language-specific backends V
No IDE diagnostics (TS) vs. Roslyn (Part VII) tspec lint per language V
No multi-repo vs. Roslyn (Part VII) Multi-repo federation XI
Single language only Verdict (Part VIII) 7 language backends V
Developer-owned specs Verdict (Part VIII) PM view + approval workflow IX
No reverse mapping V2 Roadmap tspec reverse command VI
No pre-commit hooks V2 Roadmap tspec gate command V
No ESLint enforcement V2 Roadmap tspec lint per language V
Proven on 1 project only Scaling gaps Multi-tenant, multi-repo, multi-language XI
No Jira sync Enterprise ALM Bidirectional Jira/ADO/Linear sync XII
Bugs are orphaned CMF design gap Bug<TTarget> cross-references II
No support levels Enterprise reality L1/L2/L3 with SLA tracking II
No maintenance mode Consultant reality First-class dashboard mode II

What tspec Is

tspec is a C# product built on a Diem CMF instance. It has language backends (C#, TypeScript, Java, Groovy, Python, Go, Rust) that scan codebases and produce JSON. The Diem instance stores, visualizes, and manages everything.

Language Backends (C#, TS, Java, Groovy, Python, Go, Rust)
  → JSON scan results
    → Diem CMF Instance (C#/.NET)
      → API (auto-generated from content model)
      → Dashboard (Blazor admin, auto-generated)
      → Workflow engine (coverage-gated transitions)
      → Integrations (Jira, Slack, CI/CD)

The product eats its own dog food: tspec's own Diem instance tracks tspec's own requirements using the Requirements DSL.


Table of Contents

Part I: The Product Vision

A 300-line scanner proved compiler-enforced traceability works. A Diem instance makes it a product. The three-layer architecture, the 42 gaps, and why large industrial CAC40 companies need what Jira + Xray cannot provide.

Part II: The Meta-Metamodel — Custom Requirement Flavors

Epic, Feature, Story, Task is one flavor. SAFe uses Capability, Feature, Story, Enabler. Your client uses Program, Capability, Requirement, Work Item. The M3 layer handles all of them — plus Bug<TTarget>, support tickets with L1/L2/L3 levels, and a first-class maintenance mode.

Part III: TypeScript Hierarchy Redesign

The versus series said TypeScript hierarchy is flat. Here's the fix: Feature<TParent extends Epic> with generic constraints, generated from the flavor configuration, backward-compatible with existing code.

Part IV: Custom Workflows — DSL and YAML

Draft to Done is one workflow. Not the only one. CMF Workflow DSL attributes for .NET teams, YAML definitions for everyone else. Coverage-gated transitions: you can't mark "Done" until the scanner says 100%.

Part V: Language Backends — One Protocol, Seven Scanners

C#, TypeScript, Java, Groovy, Python, Go, Rust. Each backend understands its language's type system. All produce the same JSON. The Diem instance doesn't care which language produced the scan.

Part VI: Developer Experience — tspec work, done, next

tspec work --item #ID fetches the item, creates a branch, opens files, lists ACs, transitions to InProgress. tspec done scans, pushes, opens a PR, transitions to Review. The CLI becomes a daily driver, not just a scanner.

Part VII: The Diem Instance — 200 Lines of Content Model

tspec's server is a Diem instance. Like a blog is a WordPress instance. ~200 lines of C# content model with Diem attributes. Diem generates the API, the Blazor dashboard, the workflow engine, the search, the pagination — everything.

Part VIII: Dashboard Deep-Dive

Coverage matrix, Kanban board, trend charts, hierarchy tree, feature detail, sprint view, diff view — all auto-generated by the Diem Admin DSL from the content model.

Part IX: The Stakeholder View — Closing BDD's Advantage

PMs can't read abstract classes. So the dashboard renders JSDoc as natural-language bullet points. Approval workflows, comment threads, Gherkin export, PDF export, and manual test tracking for QA.

Part X: Dog-Fooding — tspec Tracks tspec

The ultimate proof: tspec's own Diem instance uses the Requirements DSL to track tspec's own features. If the product breaks, its own compliance drops, its own quality gate fails. The product refuses to ship a broken version of itself.

Part XI: Enterprise Features — CAC40 Scale

SSO, RBAC, audit trails, multi-repo federation, multi-tenant with three deployment models, on-premise Docker/K8s, data residency, and compliance certifications.

Part XII: Integrations — Bidirectional Everything

Jira sync generates features FROM tickets; push updates coverage BACK to Jira. Azure DevOps, Linear, Slack, GitHub Actions, GitLab CI, Jenkins, OpenAPI bridge, Grafana metrics.

Part XIII: Roadmap and Go-to-Market

Phase 1 ships the OSS core with dog-fooding from day one. Phase 4 targets enterprise contracts. Free CLI, $15/user/month cloud, custom enterprise pricing.


How to Read This Series

CTOs and engineering directors should read Parts I (Vision), XI (Enterprise), and XIII (Roadmap) for the business case and deployment model.

Software architects should read Parts II (Meta-Metamodel), III (Hierarchy), IV (Workflows), and VII (Diem Instance) for the technical architecture.

Developers should read Parts V (Backends), VI (DX), and VIII (Dashboard) for the daily workflow.

QA engineers and PMs should read Parts IX (Stakeholder View) and IV (Workflows) for how they interact with the system.

Anyone in a hurry should read Part I (Vision) and Part VII (Diem Instance) — the problem and the architectural answer.


This series builds on: