truecourse 0.7.0-next.0 → 0.7.0-next.10
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.
- package/README.md +38 -3
- package/cli.mjs +3524 -1323
- package/package.json +1 -1
- package/public/assets/index-B2b9Ua5r.css +1 -0
- package/public/assets/index-DnU-01-s.js +879 -0
- package/public/index.html +2 -2
- package/roslyn-host/Humanizer.dll +0 -0
- package/roslyn-host/Microsoft.Bcl.AsyncInterfaces.dll +0 -0
- package/roslyn-host/Microsoft.Build.Locator.dll +0 -0
- package/roslyn-host/Microsoft.CodeAnalysis.CSharp.Workspaces.dll +0 -0
- package/roslyn-host/Microsoft.CodeAnalysis.CSharp.dll +0 -0
- package/roslyn-host/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.dll +0 -0
- package/roslyn-host/Microsoft.CodeAnalysis.Workspaces.MSBuild.dll +0 -0
- package/roslyn-host/Microsoft.CodeAnalysis.Workspaces.dll +0 -0
- package/roslyn-host/Microsoft.CodeAnalysis.dll +0 -0
- package/roslyn-host/Microsoft.Extensions.DependencyInjection.Abstractions.dll +0 -0
- package/roslyn-host/Microsoft.Extensions.Logging.Abstractions.dll +0 -0
- package/roslyn-host/Newtonsoft.Json.dll +0 -0
- package/roslyn-host/System.Composition.AttributedModel.dll +0 -0
- package/roslyn-host/System.Composition.Convention.dll +0 -0
- package/roslyn-host/System.Composition.Hosting.dll +0 -0
- package/roslyn-host/System.Composition.Runtime.dll +0 -0
- package/roslyn-host/System.Composition.TypedParts.dll +0 -0
- package/roslyn-host/System.IO.Pipelines.dll +0 -0
- package/roslyn-host/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
- package/roslyn-host/cs/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
- package/roslyn-host/cs/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
- package/roslyn-host/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
- package/roslyn-host/cs/Microsoft.CodeAnalysis.resources.dll +0 -0
- package/roslyn-host/csharp-roslyn-host.deps.json +545 -0
- package/roslyn-host/csharp-roslyn-host.dll +0 -0
- package/roslyn-host/csharp-roslyn-host.dll.config +623 -0
- package/roslyn-host/csharp-roslyn-host.pdb +0 -0
- package/roslyn-host/csharp-roslyn-host.runtimeconfig.json +16 -0
- package/roslyn-host/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
- package/roslyn-host/de/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
- package/roslyn-host/de/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
- package/roslyn-host/de/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
- package/roslyn-host/de/Microsoft.CodeAnalysis.resources.dll +0 -0
- package/roslyn-host/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
- package/roslyn-host/es/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
- package/roslyn-host/es/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
- package/roslyn-host/es/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
- package/roslyn-host/es/Microsoft.CodeAnalysis.resources.dll +0 -0
- package/roslyn-host/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
- package/roslyn-host/fr/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
- package/roslyn-host/fr/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
- package/roslyn-host/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
- package/roslyn-host/fr/Microsoft.CodeAnalysis.resources.dll +0 -0
- package/roslyn-host/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
- package/roslyn-host/it/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
- package/roslyn-host/it/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
- package/roslyn-host/it/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
- package/roslyn-host/it/Microsoft.CodeAnalysis.resources.dll +0 -0
- package/roslyn-host/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
- package/roslyn-host/ja/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
- package/roslyn-host/ja/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
- package/roslyn-host/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
- package/roslyn-host/ja/Microsoft.CodeAnalysis.resources.dll +0 -0
- package/roslyn-host/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
- package/roslyn-host/ko/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
- package/roslyn-host/ko/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
- package/roslyn-host/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
- package/roslyn-host/ko/Microsoft.CodeAnalysis.resources.dll +0 -0
- package/roslyn-host/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
- package/roslyn-host/pl/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
- package/roslyn-host/pl/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
- package/roslyn-host/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
- package/roslyn-host/pl/Microsoft.CodeAnalysis.resources.dll +0 -0
- package/roslyn-host/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
- package/roslyn-host/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
- package/roslyn-host/pt-BR/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
- package/roslyn-host/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
- package/roslyn-host/pt-BR/Microsoft.CodeAnalysis.resources.dll +0 -0
- package/roslyn-host/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
- package/roslyn-host/ru/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
- package/roslyn-host/ru/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
- package/roslyn-host/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
- package/roslyn-host/ru/Microsoft.CodeAnalysis.resources.dll +0 -0
- package/roslyn-host/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
- package/roslyn-host/tr/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
- package/roslyn-host/tr/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
- package/roslyn-host/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
- package/roslyn-host/tr/Microsoft.CodeAnalysis.resources.dll +0 -0
- package/roslyn-host/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
- package/roslyn-host/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
- package/roslyn-host/zh-Hans/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
- package/roslyn-host/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
- package/roslyn-host/zh-Hans/Microsoft.CodeAnalysis.resources.dll +0 -0
- package/roslyn-host/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll +0 -0
- package/roslyn-host/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
- package/roslyn-host/zh-Hant/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll +0 -0
- package/roslyn-host/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll +0 -0
- package/roslyn-host/zh-Hant/Microsoft.CodeAnalysis.resources.dll +0 -0
- package/server.mjs +3850 -1578
- package/public/assets/index-Bgp-7NT8.css +0 -1
- package/public/assets/index-DFIvau_M.js +0 -868
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
|
-
|
|
46
|
-
|
|
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
|