@olierjs/fugue-cli 0.1.0 → 0.1.2

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 (40) hide show
  1. package/README.md +52 -2
  2. package/THIRD_PARTY_NOTICES +52 -1
  3. package/dist/darwin-arm64/fugue-cli +0 -0
  4. package/dist/darwin-x64/fugue-cli +0 -0
  5. package/dist/linux-arm64/fugue-cli +0 -0
  6. package/dist/linux-x64/fugue-cli +0 -0
  7. package/dist/win32-arm64/fugue-cli.exe +0 -0
  8. package/dist/win32-x64/fugue-cli.exe +0 -0
  9. package/package.json +2 -1
  10. package/skills/fugue-show-me/SKILL.md +16 -0
  11. package/skills/show-me/SKILL.md +128 -0
  12. package/skills/show-me/agents/openai.yaml +2 -0
  13. package/skills/statechart/SKILL.md +36 -0
  14. package/skills/statechart/scripts/bug-states.mjs +81 -0
  15. package/skills/statechart/scripts/chart-edges.mjs +68 -0
  16. package/skills/statechart/scripts/chart-parts.mjs +21 -0
  17. package/skills/statechart/scripts/chart-to-tla.mjs +205 -0
  18. package/skills/statechart/scripts/compare-charts.mjs +74 -0
  19. package/skills/statechart/scripts/lib.mjs +970 -0
  20. package/skills/statechart/scripts/map-view.mjs +92 -0
  21. package/skills/statechart/scripts/property-loop.mjs +60 -0
  22. package/skills/statechart/scripts/read-check.mjs +79 -0
  23. package/skills/statechart/scripts/regions-chart.mjs +307 -0
  24. package/skills/statechart/scripts/render.mjs +531 -0
  25. package/skills/statechart/scripts/rule-book.mjs +84 -0
  26. package/skills/statechart/scripts/second-replay.mjs +122 -0
  27. package/skills/statechart/scripts/snapshot.mjs +74 -0
  28. package/skills/statechart/scripts/spec-text.mjs +126 -0
  29. package/skills/statechart/scripts/statechart-help.mjs +350 -0
  30. package/skills/statechart/scripts/statechart.mjs +903 -0
  31. package/skills/statechart/scripts/test/band.mmd +15 -0
  32. package/skills/statechart/scripts/test/regions.mmd +62 -0
  33. package/skills/statechart/scripts/test/statechart.test.mjs +6854 -0
  34. package/skills/statechart/scripts/test/sync.mmd +19 -0
  35. package/skills/statechart/scripts/test/upload.mmd +16 -0
  36. package/skills/statechart/scripts/tlc-to-chart-args.mjs +52 -0
  37. package/skills/statechart/scripts/tlc-to-chart.mjs +802 -0
  38. package/skills/statechart/scripts/tlc-tools.mjs +69 -0
  39. package/skills/statechart/scripts/ways-in.mjs +69 -0
  40. package/upstream-skills.json +18 -0
@@ -0,0 +1,19 @@
1
+ stateDiagram-v2
2
+ state "Notes app" as App {
3
+ state "Connection" as Connection {
4
+ [*] --> Online
5
+ Online --> Offline : the network drops
6
+ Offline --> Online : the network returns
7
+ }
8
+ --
9
+ state "Sync badge" as Sync {
10
+ state "Synced" as Synced
11
+ state "Waiting to sync" as Pending
12
+ [*] --> Synced
13
+ Synced --> Pending : you edit a note
14
+ Synced --> Pending : the network drops
15
+ Pending --> Synced : the server confirms
16
+ }
17
+ }
18
+ [*] --> App
19
+ %% never NeverSyncedWhileOffline: Offline & Synced -- You never see "Synced" while you are offline.
@@ -0,0 +1,16 @@
1
+ stateDiagram-v2
2
+ state "Nothing chosen" as Idle
3
+ state "Uploading" as Uploading {
4
+ state "Sending the file" as Sending
5
+ state "Checking the file" as Checking
6
+ [*] --> Sending
7
+ Sending --> Checking : the last byte arrives
8
+ }
9
+ state "Uploaded" as Done
10
+ state "Upload failed" as Failed
11
+ [*] --> Idle
12
+ Idle --> Uploading : you choose a file
13
+ Checking --> Done : the check passes
14
+ Uploading --> Failed : the network drops
15
+ Failed --> Uploading : you retry
16
+ Uploading --> Idle : you cancel
@@ -0,0 +1,52 @@
1
+ import process from "node:process";
2
+
3
+ export const args = {
4
+ traces: [],
5
+ fixedTraces: [],
6
+ againstTraces: [],
7
+ fixedRules: [],
8
+ againstRules: [],
9
+ specs: [],
10
+ next: [],
11
+ view: "customer",
12
+ highlight: 1,
13
+ };
14
+ for (let i = 2; i < process.argv.length; i++) {
15
+ const a = process.argv[i];
16
+ const next = () => process.argv[++i];
17
+ if (a === "--dot") args.dot = next();
18
+ else if (a === "--map") args.map = next();
19
+ else if (a === "--traces") args.traces.push(next());
20
+ else if (a === "--broken") args.broken = next();
21
+ else if (a === "--fixed-dot") args.fixedDot = next();
22
+ else if (a === "--fixed-traces") args.fixedTraces.push(next());
23
+ else if (a === "--fixed-rules") args.fixedRules.push(...next().split(","));
24
+ else if (a === "--fixed-broken") args.fixedBroken = next();
25
+ else if (a === "--against-dot") args.againstDot = next();
26
+ else if (a === "--against-traces") args.againstTraces.push(next());
27
+ else if (a === "--against-broken") args.againstBroken = next();
28
+ else if (a === "--against-rules") args.againstRules.push(...next().split(","));
29
+ else if (a === "--listed") args.listed = next();
30
+ else if (a === "--label") args.label = next();
31
+ else if (a === "--spec") args.specs.push(next());
32
+ else if (a === "--next") args.next.push(next());
33
+ else if (a === "--view") args.view = next();
34
+ else if (a === "--highlight") args.highlight = Number(next());
35
+ else if (a === "--path-only") args.pathOnly = true;
36
+ else if (a === "--full-labels") args.fullLabels = true;
37
+ else if (a === "--flat") args.flat = true;
38
+ else if (a === "--loops") args.loops = true;
39
+ else if (a === "--regions") args.regions = true;
40
+ else if (a === "--proof") args.proof = next();
41
+ else if (a === "--regions-all") args.regionsAll = next();
42
+ else if (a === "--cover") args.cover = true;
43
+ else if (a === "--title") args.title = next();
44
+ else if (a === "--out") args.out = next();
45
+ else if (a === "--story") args.story = next();
46
+ else if (a === "--summary") args.summary = next();
47
+ else {
48
+ console.error(`unknown argument ${a}.`);
49
+ process.exit(2);
50
+ }
51
+ }
52
+ if (args.listed !== undefined) args.listed = JSON.parse(args.listed);