truecourse 0.7.0-next.1 → 0.7.0-next.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/README.md +39 -3
  2. package/cli.mjs +3564 -1333
  3. package/package.json +1 -1
  4. package/public/assets/index-B2b9Ua5r.css +1 -0
  5. package/public/assets/{index-BR55uq7e.js → index-DnU-01-s.js} +239 -229
  6. package/public/index.html +2 -2
  7. package/roslyn-host/Humanizer.dll +0 -0
  8. package/roslyn-host/Microsoft.Bcl.AsyncInterfaces.dll +0 -0
  9. package/roslyn-host/Microsoft.Build.Locator.dll +0 -0
  10. package/roslyn-host/Microsoft.CodeAnalysis.CSharp.Workspaces.dll +0 -0
  11. package/roslyn-host/Microsoft.CodeAnalysis.CSharp.dll +0 -0
  12. package/roslyn-host/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.dll +0 -0
  13. package/roslyn-host/Microsoft.CodeAnalysis.Workspaces.MSBuild.dll +0 -0
  14. package/roslyn-host/Microsoft.CodeAnalysis.Workspaces.dll +0 -0
  15. package/roslyn-host/Microsoft.CodeAnalysis.dll +0 -0
  16. package/roslyn-host/Microsoft.Extensions.DependencyInjection.Abstractions.dll +0 -0
  17. package/roslyn-host/Microsoft.Extensions.Logging.Abstractions.dll +0 -0
  18. package/roslyn-host/Newtonsoft.Json.dll +0 -0
  19. package/roslyn-host/System.Composition.AttributedModel.dll +0 -0
  20. package/roslyn-host/System.Composition.Convention.dll +0 -0
  21. package/roslyn-host/System.Composition.Hosting.dll +0 -0
  22. package/roslyn-host/System.Composition.Runtime.dll +0 -0
  23. package/roslyn-host/System.Composition.TypedParts.dll +0 -0
  24. package/roslyn-host/System.IO.Pipelines.dll +0 -0
  25. package/roslyn-host/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
  26. package/roslyn-host/cs/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  27. package/roslyn-host/cs/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
  28. package/roslyn-host/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
  29. package/roslyn-host/cs/Microsoft.CodeAnalysis.resources.dll +0 -0
  30. package/roslyn-host/csharp-roslyn-host.deps.json +545 -0
  31. package/roslyn-host/csharp-roslyn-host.dll +0 -0
  32. package/roslyn-host/csharp-roslyn-host.dll.config +623 -0
  33. package/roslyn-host/csharp-roslyn-host.pdb +0 -0
  34. package/roslyn-host/csharp-roslyn-host.runtimeconfig.json +16 -0
  35. package/roslyn-host/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
  36. package/roslyn-host/de/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  37. package/roslyn-host/de/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
  38. package/roslyn-host/de/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
  39. package/roslyn-host/de/Microsoft.CodeAnalysis.resources.dll +0 -0
  40. package/roslyn-host/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
  41. package/roslyn-host/es/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  42. package/roslyn-host/es/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
  43. package/roslyn-host/es/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
  44. package/roslyn-host/es/Microsoft.CodeAnalysis.resources.dll +0 -0
  45. package/roslyn-host/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
  46. package/roslyn-host/fr/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  47. package/roslyn-host/fr/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
  48. package/roslyn-host/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
  49. package/roslyn-host/fr/Microsoft.CodeAnalysis.resources.dll +0 -0
  50. package/roslyn-host/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
  51. package/roslyn-host/it/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  52. package/roslyn-host/it/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
  53. package/roslyn-host/it/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
  54. package/roslyn-host/it/Microsoft.CodeAnalysis.resources.dll +0 -0
  55. package/roslyn-host/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
  56. package/roslyn-host/ja/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  57. package/roslyn-host/ja/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
  58. package/roslyn-host/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
  59. package/roslyn-host/ja/Microsoft.CodeAnalysis.resources.dll +0 -0
  60. package/roslyn-host/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
  61. package/roslyn-host/ko/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  62. package/roslyn-host/ko/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
  63. package/roslyn-host/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
  64. package/roslyn-host/ko/Microsoft.CodeAnalysis.resources.dll +0 -0
  65. package/roslyn-host/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
  66. package/roslyn-host/pl/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  67. package/roslyn-host/pl/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
  68. package/roslyn-host/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
  69. package/roslyn-host/pl/Microsoft.CodeAnalysis.resources.dll +0 -0
  70. package/roslyn-host/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
  71. package/roslyn-host/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  72. package/roslyn-host/pt-BR/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
  73. package/roslyn-host/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
  74. package/roslyn-host/pt-BR/Microsoft.CodeAnalysis.resources.dll +0 -0
  75. package/roslyn-host/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
  76. package/roslyn-host/ru/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  77. package/roslyn-host/ru/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
  78. package/roslyn-host/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
  79. package/roslyn-host/ru/Microsoft.CodeAnalysis.resources.dll +0 -0
  80. package/roslyn-host/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
  81. package/roslyn-host/tr/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  82. package/roslyn-host/tr/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
  83. package/roslyn-host/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
  84. package/roslyn-host/tr/Microsoft.CodeAnalysis.resources.dll +0 -0
  85. package/roslyn-host/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
  86. package/roslyn-host/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  87. package/roslyn-host/zh-Hans/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
  88. package/roslyn-host/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
  89. package/roslyn-host/zh-Hans/Microsoft.CodeAnalysis.resources.dll +0 -0
  90. package/roslyn-host/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
  91. package/roslyn-host/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  92. package/roslyn-host/zh-Hant/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
  93. package/roslyn-host/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
  94. package/roslyn-host/zh-Hant/Microsoft.CodeAnalysis.resources.dll +0 -0
  95. package/server.mjs +3823 -1557
  96. package/public/assets/index-D9ShQqXg.css +0 -1
package/README.md CHANGED
@@ -28,12 +28,24 @@ Both store their results under `.truecourse/` and surface them in a shared [dash
28
28
  <img src="assets/demo.gif" alt="TrueCourse Screenshot" width="100%" />
29
29
  </p>
30
30
 
31
- Jump to: **[1. Analyze](#1-analyze--code-intelligence)** · **[2. Spec → Guard](#2-spec--guard--business-logic-drift)** · **[Dashboard](#dashboard-web-ui)**
31
+ Jump to: **[Install](#install)** · **[1. Analyze](#1-analyze--code-intelligence)** · **[2. Spec → Guard](#2-spec--guard--business-logic-drift)** · **[Dashboard](#dashboard-web-ui)**
32
32
 
33
33
  No setup step and no database: TrueCourse creates `.truecourse/` in your repo on first use and stores everything there as plain JSON files. It uses the [Claude Code CLI](https://docs.anthropic.com/en/docs/claude-code) for LLM-powered work — if `claude` isn't on your PATH, deterministic analysis still runs and LLM-dependent features are skipped.
34
34
 
35
35
  ---
36
36
 
37
+ # Install
38
+
39
+ ```bash
40
+ npm install -g truecourse
41
+ ```
42
+
43
+ This puts the `truecourse` command on your PATH — every example below uses it. Prefer not to install globally? Run any command one-off with `npx truecourse <command>` instead.
44
+
45
+ See [Prerequisites](#prerequisites) for Node, Claude Code, and C# requirements.
46
+
47
+ ---
48
+
37
49
  # 1. Analyze — code intelligence
38
50
 
39
51
  Static + LLM analysis of your code: architecture, security, bugs, performance, and more.
@@ -42,8 +54,8 @@ Static + LLM analysis of your code: architecture, security, bugs, performance, a
42
54
 
43
55
  ```bash
44
56
  cd <your-repo>
45
- npx truecourse analyze # Runs the full analysis in-process
46
- npx truecourse list # Show the violations it found
57
+ truecourse analyze # Runs the full analysis in-process
58
+ truecourse list # Show the violations it found
47
59
  ```
48
60
 
49
61
  The first analyze creates `.truecourse/` and stores results as plain JSON. View them visually with [`truecourse dashboard`](#dashboard-web-ui).
@@ -239,6 +251,29 @@ The spec, the scenarios, and a guard baseline are committable so they travel wit
239
251
 
240
252
  Like analyze, `guard/LATEST.json` is the committable baseline — commit it after merging to `main` (re-run `truecourse guard run`, commit the result), not from feature branches.
241
253
 
254
+ ### The recipe — `scenarios/recipe.json`
255
+
256
+ The recipe tells guard how to build your repo and what binary the scenarios exercise:
257
+
258
+ ```json
259
+ {
260
+ "build": "pnpm turbo build --filter=...{./tools/cli}",
261
+ "entry": ["node", "tools/cli/dist/index.js"],
262
+ "env": { "MY_FLAG": "1" }
263
+ }
264
+ ```
265
+
266
+ - `build` — one shell command, run in the repo root before scenarios execute.
267
+ - `entry` — the entrypoint argv; each scenario's command is appended to it. Repo-relative.
268
+ - `env` *(optional)* — extra environment variables for every scenario run.
269
+
270
+ It's discovered by the LLM **once**, on your first `guard generate`, and never touched again —
271
+ **the file is yours to edit**: an existing `recipe.json` always wins, and it's committed so the
272
+ whole team runs the same preparation. Edit it when the discovered command isn't what you want —
273
+ for example, if your build tool's cache can serve stale output across branch switches, harden the
274
+ build (`turbo build --force …`, or a clean step) at the cost of slower runs. Recipe edits change
275
+ the recipe fingerprint, so the dashboard flags runs made under an older recipe.
276
+
242
277
  ## Commands
243
278
 
244
279
  ```bash
@@ -266,6 +301,7 @@ truecourse spec docs unexclude <path> # Remove a force-exclude overr
266
301
  truecourse guard generate # Author scenarios from spec sections (classify → generate → birth-validate)
267
302
  truecourse guard run # Build via the recipe + run committed scenarios; exits non-zero on any drift (CI gate)
268
303
  truecourse guard run --scenario <id> # Run a single scenario
304
+ truecourse guard run --verbose # List every scenario result (one ✓ line per pass; default shows failures only)
269
305
  truecourse guard status # Compact summary: section coverage, last run, last generate (LLM-free, no re-run)
270
306
  truecourse guard drifts # List the latest run's non-pass scenarios, most severe first (paginated; --all / --offset / --json)
271
307
  ```