erdos-problems 0.2.1 → 0.2.3

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 (38) hide show
  1. package/README.md +218 -356
  2. package/docs/LAUNCH_KIT.md +84 -0
  3. package/package.json +13 -5
  4. package/packs/graph-theory/README.md +17 -0
  5. package/packs/graph-theory/problems/1008/CHECKPOINT_TEMPLATE.md +9 -0
  6. package/packs/graph-theory/problems/1008/CONTEXT.md +9 -0
  7. package/packs/graph-theory/problems/1008/FRONTIER_NOTE.md +8 -0
  8. package/packs/graph-theory/problems/1008/OPS_DETAILS.yaml +25 -0
  9. package/packs/graph-theory/problems/1008/REPORT_TEMPLATE.md +9 -0
  10. package/packs/graph-theory/problems/1008/ROUTE_HISTORY.md +5 -0
  11. package/packs/graph-theory/problems/1008/ROUTE_PACKET.yaml +13 -0
  12. package/packs/graph-theory/problems/1008/context.yaml +27 -0
  13. package/packs/graph-theory/problems/19/CHECKPOINT_TEMPLATE.md +9 -0
  14. package/packs/graph-theory/problems/19/CONTEXT.md +9 -0
  15. package/packs/graph-theory/problems/19/FRONTIER_NOTE.md +8 -0
  16. package/packs/graph-theory/problems/19/OPS_DETAILS.yaml +25 -0
  17. package/packs/graph-theory/problems/19/REPORT_TEMPLATE.md +9 -0
  18. package/packs/graph-theory/problems/19/ROUTE_HISTORY.md +5 -0
  19. package/packs/graph-theory/problems/19/ROUTE_PACKET.yaml +13 -0
  20. package/packs/graph-theory/problems/19/context.yaml +25 -0
  21. package/packs/graph-theory/problems/22/CHECKPOINT_TEMPLATE.md +9 -0
  22. package/packs/graph-theory/problems/22/CONTEXT.md +9 -0
  23. package/packs/graph-theory/problems/22/FRONTIER_NOTE.md +8 -0
  24. package/packs/graph-theory/problems/22/OPS_DETAILS.yaml +25 -0
  25. package/packs/graph-theory/problems/22/REPORT_TEMPLATE.md +9 -0
  26. package/packs/graph-theory/problems/22/ROUTE_HISTORY.md +5 -0
  27. package/packs/graph-theory/problems/22/ROUTE_PACKET.yaml +13 -0
  28. package/packs/graph-theory/problems/22/context.yaml +26 -0
  29. package/packs/number-theory/README.md +3 -0
  30. package/src/cli/index.js +15 -5
  31. package/src/commands/archive.js +10 -1
  32. package/src/commands/cluster.js +15 -1
  33. package/src/commands/graph-theory.js +180 -0
  34. package/src/commands/number-theory.js +107 -2
  35. package/src/commands/workspace.js +39 -1
  36. package/src/runtime/graph-theory.js +167 -0
  37. package/src/runtime/number-theory.js +60 -0
  38. package/src/runtime/state.js +31 -0
@@ -0,0 +1,84 @@
1
+ # Launch Kit
2
+
3
+ ## Positioning
4
+
5
+ Short version:
6
+ - `erdos-problems` is a research cockpit for Paul Erdos problems.
7
+
8
+ Medium version:
9
+ - `erdos-problems` is a CLI atlas and agent-ready research harness for Paul Erdos problems. It goes beyond a problem list by shipping dossiers, pack-specific cockpits, ORP-governed workspaces, and structured pull/seed flows that let humans and agents start real research immediately.
10
+
11
+ Long version:
12
+ - `erdos-problems` is built for serious open-problem work. It packages the public Erdős problem atlas, preserves canonical dossier truth, scaffolds agent-ready workspaces, and adds deeper family-specific cockpits where the problem structure is rich enough to justify them. The result is a clean research loop that can move from atlas -> dossier -> route -> checkpoint -> archive without blurring public status, local route pressure, or verification truth.
13
+
14
+ ## Launch Copy
15
+
16
+ ### One-liner
17
+ - Research cockpit for Paul Erdos problems.
18
+
19
+ ### Short post
20
+ - I just released `erdos-problems`: a CLI atlas and agent-ready research harness for Paul Erdos problems. It ships canonical dossiers, ORP-governed workspaces, self-seeding flows, and deeper cockpits for the sunflower family. Install with `npm install -g erdos-problems`.
21
+
22
+ ### Longer post
23
+ - I just released `erdos-problems`, a CLI atlas and staged research harness for Paul Erdos problems. The goal is not just to list problems, but to make them operational for real research. The package bundles upstream problem data, creates canonical dossiers, scaffolds ORP-governed workspaces, supports one-step self-seeding for new problems, and already includes deeper family-specific cockpits for sunflower, number theory, and graph-theory archive work. It is designed so a person or agent can install it at night and start honest, structured work immediately.
24
+
25
+ ## Demo Flow
26
+
27
+ ```bash
28
+ npm install -g erdos-problems
29
+ erdos bootstrap problem 857
30
+ erdos sunflower frontier 857
31
+ erdos problem artifacts 857 --json
32
+ ```
33
+
34
+ Backup demo flow:
35
+
36
+ ```bash
37
+ erdos seed problem 25 --cluster number-theory
38
+ erdos workspace show --json
39
+ ```
40
+
41
+ Archive demo flow:
42
+
43
+ ```bash
44
+ erdos graph-theory status 1008
45
+ erdos archive scaffold 1008 --json
46
+ ```
47
+
48
+ ## What To Emphasize
49
+
50
+ - It is not just a metadata dump.
51
+ - It is agent-ready out of the box.
52
+ - It preserves truth hygiene.
53
+ - It supports both open and solved problems.
54
+ - It already has a deep sunflower cockpit.
55
+
56
+ ## GitHub Presentation Notes
57
+
58
+ Recommended repo tagline:
59
+ - Research cockpit for Paul Erdos problems.
60
+
61
+ Recommended social preview:
62
+ - `assets/social-card.svg`
63
+ - export a PNG from it for GitHub social preview if GitHub wants raster upload
64
+
65
+ Recommended pinned bullets:
66
+ - atlas + dossiers
67
+ - ORP-governed workspaces
68
+ - self-seeding from public sources
69
+ - sunflower family cockpit
70
+
71
+ ## npm Presentation Notes
72
+
73
+ Recommended lead screenshot substitute:
74
+ - use the README's command-output sections
75
+ - keep the top fast and cinematic
76
+ - lead with install + immediate payoff
77
+
78
+ ## Suggested Release Checklist
79
+
80
+ - publish npm package
81
+ - set GitHub social preview image
82
+ - add repo description/tagline
83
+ - pin a short demo GIF or screenshot later if desired
84
+ - post the one-liner + short post copy
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "erdos-problems",
3
- "version": "0.2.1",
4
- "description": "CLI atlas and staged research harness for Paul Erdos problems.",
3
+ "version": "0.2.3",
4
+ "description": "Research cockpit and agent-ready CLI atlas for Paul Erdos problems.",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "erdos": "bin/erdos"
@@ -25,14 +25,22 @@
25
25
  },
26
26
  "keywords": [
27
27
  "erdos",
28
- "combinatorics",
29
- "open-problems",
30
28
  "research",
29
+ "cli",
30
+ "open-problems",
31
+ "combinatorics",
32
+ "number-theory",
33
+ "graph-theory",
34
+ "theorem-proving",
35
+ "agents",
31
36
  "sunflower"
32
37
  ],
33
38
  "dependencies": {
34
39
  "breakthroughs": "^0.1.1",
35
40
  "yaml": "^2.8.3"
36
41
  },
37
- "license": "MIT"
42
+ "license": "MIT",
43
+ "engines": {
44
+ "node": ">=20"
45
+ }
38
46
  }
@@ -0,0 +1,17 @@
1
+ # Graph-Theory Pack
2
+
3
+ Archive and decision cockpit for graph-theory problems in `erdos-problems`.
4
+
5
+ Current seeded cockpit problems:
6
+ - `19`: decision/archive cockpit around the chromatic-number record
7
+ - `22`: proof archive cockpit around the Ramsey-Turan `K_4` construction record
8
+ - `1008`: Lean-facing proof archive cockpit for the `C_4`-free density problem
9
+
10
+ Useful commands:
11
+ - `erdos graph-theory status 19`
12
+ - `erdos graph-theory frontier 22`
13
+ - `erdos graph-theory routes 1008`
14
+ - `erdos graph-theory tickets 1008`
15
+
16
+ Design rule:
17
+ - keep this pack honest as an archive/decision cockpit until a real open graph-theory frontier earns deeper gated flow
@@ -0,0 +1,9 @@
1
+ # Problem 1008 Checkpoint Template
2
+
3
+ ## Lean Archive
4
+ - Solved status wording:
5
+ - Lean-facing artifact frozen:
6
+ - Archive drift risk:
7
+
8
+ ## Next Honest Move
9
+ -
@@ -0,0 +1,9 @@
1
+ # Problem 1008 Graph-Theory Pack Context
2
+
3
+ Role in pack:
4
+ - Lean-facing proof archive for the `C_4`-free density problem
5
+ - solved graph-theory cockpit rather than a live open frontier
6
+
7
+ Bootstrap focus:
8
+ - preserve the solved status and Lean-facing badge
9
+ - keep the extremal-graph question and archive references synchronized
@@ -0,0 +1,8 @@
1
+ # Problem 1008 Frontier Note
2
+
3
+ Problem 1008 is packaged as a Lean-facing proof archive.
4
+
5
+ Current honest posture:
6
+ - preserve the solved public record
7
+ - keep the `C_4`-free density framing explicit
8
+ - treat improvements here as archive or method-exemplar work, not open-frontier work
@@ -0,0 +1,25 @@
1
+ packet_id: gt1008_ops_details_v1
2
+ summary: Lean-facing proof archive cockpit packet for the `C_4`-free density result.
3
+ routes:
4
+ - route_id: c4_free_lean_archive
5
+ title: "`C_4`-Free Lean Proof Archive"
6
+ status: closed
7
+ summary: Keep the solved `C_4`-free density record explicit and preserve the Lean-facing archive posture.
8
+ why_now: This is the honest archive framing for Problem 1008.
9
+ next_move: Freeze the best Lean-facing source hook and checkpoint the archive packet.
10
+ tickets:
11
+ - ticket_id: G1008
12
+ title: "Tighten the `C_4`-free Lean archive packet"
13
+ route_id: c4_free_lean_archive
14
+ status: active
15
+ summary: Package the solved record clearly enough that the archive stays usable as a method exemplar.
16
+ current_blocker: The archive still needs a sharper Lean-facing source hook.
17
+ next_move: Close `G1008.G1.A1`.
18
+ atoms:
19
+ - atom_id: G1008.G1.A1
20
+ title: "Freeze the primary Lean-facing archive hook for the `C_4`-free density result"
21
+ route_id: c4_free_lean_archive
22
+ ticket_id: G1008
23
+ status: ready
24
+ summary: This is the smallest honest archive move for Problem 1008.
25
+ next_move: Record the best public/formalization hook and checkpoint the archive packet.
@@ -0,0 +1,9 @@
1
+ # Problem 1008 Report Template
2
+
3
+ ## Archive Summary
4
+ - Lean archive status:
5
+ - Source alignment:
6
+ - Reusable method note:
7
+
8
+ ## Follow-up
9
+ -
@@ -0,0 +1,5 @@
1
+ # Problem 1008 Route History
2
+
3
+ - Initial public pack lift: moved the dossier into a graph-theory Lean archive cockpit.
4
+ - Current route: `c4_free_lean_archive`.
5
+ - Honest next improvement: freeze the best Lean-facing source hook and checkpoint the archive packet.
@@ -0,0 +1,13 @@
1
+ route_packet_id: gt1008_c4_free_lean_archive_v1
2
+ route_id: c4_free_lean_archive
3
+ frontier_claim: Preserve the solved `C_4`-free density record as a Lean-facing archive packet and keep the source trail synchronized with the dossier.
4
+ theorem_module: ""
5
+ checkpoint_packet: CHECKPOINT_TEMPLATE.md
6
+ report_packet: REPORT_TEMPLATE.md
7
+ ready_prompts:
8
+ - Which exact source or formalization hook should anchor the Lean archive packet first?
9
+ - Which wording best preserves the solved posture without inflating the public claim?
10
+ verification_hook:
11
+ - erdos graph-theory status 1008
12
+ - erdos archive show 1008 --json
13
+ - erdos archive scaffold 1008 --json
@@ -0,0 +1,27 @@
1
+ problem_id: "1008"
2
+ family_role: c4_free_lean_archive
3
+ harness_profile: lean_archive_cockpit
4
+ default_active_route: c4_free_lean_archive
5
+ bootstrap_focus: Freeze the `C_4`-free density result as a Lean-facing archive packet and keep the solved status synchronized with the public dossier.
6
+ route_story: Problem 1008 is a formalization-flavored proof archive. The public job is to preserve the solved record, the Lean-facing posture, and the core extremal-graph framing without re-opening a closed problem.
7
+ frontier_label: c4_free_lean_archive
8
+ frontier_detail: Preserve the Lean-facing solved record and the `C_4`-free density framing without widening the claim beyond the public dossier.
9
+ checkpoint_focus: Keep the solved status, Lean-facing archive wording, and main source trail synchronized.
10
+ next_honest_move: Tighten the Lean proof archive note and freeze the best public/formalization source hook for the `C_4`-free density result.
11
+ related_core_problems: []
12
+ literature_focus:
13
+ - graph theory
14
+ - extremal graph theory
15
+ - formalization
16
+ artifact_focus:
17
+ - STATEMENT.md
18
+ - REFERENCES.md
19
+ - FORMALIZATION.md
20
+ question_ledger:
21
+ open_questions:
22
+ - Which exact Lean-facing artifact should anchor the archive packet first?
23
+ active_route_notes:
24
+ - Treat Problem 1008 as a solved Lean archive, not as a live frontier.
25
+ route_breakthroughs: []
26
+ problem_solved:
27
+ - The public site marks this problem as solved with a Lean-facing badge.
@@ -0,0 +1,9 @@
1
+ # Problem 19 Checkpoint Template
2
+
3
+ ## Decision Archive
4
+ - Exact decision posture:
5
+ - Primary source frozen:
6
+ - Public wording preserved:
7
+
8
+ ## Next Honest Move
9
+ -
@@ -0,0 +1,9 @@
1
+ # Problem 19 Graph-Theory Pack Context
2
+
3
+ Role in pack:
4
+ - chromatic-number decision archive
5
+ - graph-theory archive cockpit rather than a live theorem frontier today
6
+
7
+ Bootstrap focus:
8
+ - keep the public decision posture explicit
9
+ - preserve the best source trail for the record
@@ -0,0 +1,8 @@
1
+ # Problem 19 Frontier Note
2
+
3
+ This is an archive-facing graph-theory packet.
4
+
5
+ Current honest posture:
6
+ - preserve the public decision status
7
+ - keep the chromatic-number framing explicit
8
+ - do not re-inflate the dossier into an open-problem cockpit
@@ -0,0 +1,25 @@
1
+ packet_id: gt19_ops_details_v1
2
+ summary: Decision/archive cockpit packet for the chromatic-number record.
3
+ routes:
4
+ - route_id: chromatic_decision_record
5
+ title: Chromatic Decision Record
6
+ status: archival
7
+ summary: Keep the public decision posture and chromatic-number framing synchronized.
8
+ why_now: This is the honest archive framing for Problem 19 today.
9
+ next_move: Freeze the best source hook describing the decision record.
10
+ tickets:
11
+ - ticket_id: G19
12
+ title: Tighten the chromatic decision archive packet
13
+ route_id: chromatic_decision_record
14
+ status: active
15
+ summary: Package the decision record clearly enough that future agents do not misread the dossier.
16
+ current_blocker: The primary source hook for the decision posture is still too loose.
17
+ next_move: Close `G19.G1.A1`.
18
+ atoms:
19
+ - atom_id: G19.G1.A1
20
+ title: Freeze the primary chromatic-number decision source hook
21
+ route_id: chromatic_decision_record
22
+ ticket_id: G19
23
+ status: ready
24
+ summary: This is the smallest honest archive move for Problem 19.
25
+ next_move: Record the strongest public source hook and checkpoint the archive packet.
@@ -0,0 +1,9 @@
1
+ # Problem 19 Report Template
2
+
3
+ ## Archive Summary
4
+ - Decision posture:
5
+ - Source alignment:
6
+ - Drift risk:
7
+
8
+ ## Follow-up
9
+ -
@@ -0,0 +1,5 @@
1
+ # Problem 19 Route History
2
+
3
+ - Initial public pack lift: moved the dossier into a graph-theory decision archive cockpit.
4
+ - Current route: `chromatic_decision_record`.
5
+ - Honest next improvement: freeze the best source explaining the decision posture and checkpoint it.
@@ -0,0 +1,13 @@
1
+ route_packet_id: gt19_chromatic_decision_archive_v1
2
+ route_id: chromatic_decision_record
3
+ frontier_claim: Preserve the chromatic-number decision record as a clean archive packet and keep the source trail synchronized with the dossier.
4
+ theorem_module: ""
5
+ checkpoint_packet: CHECKPOINT_TEMPLATE.md
6
+ report_packet: REPORT_TEMPLATE.md
7
+ ready_prompts:
8
+ - Which exact source or note should anchor the decision archive first?
9
+ - Which wording most clearly prevents future agents from treating this as an open frontier?
10
+ verification_hook:
11
+ - erdos graph-theory status 19
12
+ - erdos graph-theory tickets 19
13
+ - erdos archive show 19 --json
@@ -0,0 +1,25 @@
1
+ problem_id: "19"
2
+ family_role: chromatic_number_decision_archive
3
+ harness_profile: decision_archive_cockpit
4
+ default_active_route: chromatic_decision_record
5
+ bootstrap_focus: Freeze the exact chromatic-number decision posture, the dossier provenance, and the archive packet without drifting back into open-problem language.
6
+ route_story: Problem 19 is currently best treated as a decision/archive cockpit. The public job is to preserve the decision record and its references cleanly enough that future agents do not mis-handle it as a live open frontier.
7
+ frontier_label: chromatic_decision_record
8
+ frontier_detail: Keep the decision posture and the primary chromatic-number source trail explicit.
9
+ checkpoint_focus: Synchronize the public decision status, archive packet, and primary references every time this dossier is touched.
10
+ next_honest_move: Tighten the decision archive note and freeze the best public-facing source hook for the chromatic-number record.
11
+ related_core_problems: []
12
+ literature_focus:
13
+ - graph theory
14
+ - chromatic number
15
+ artifact_focus:
16
+ - STATEMENT.md
17
+ - REFERENCES.md
18
+ - EVIDENCE.md
19
+ question_ledger:
20
+ open_questions:
21
+ - Which exact source best explains why the public record marks this problem as decidable?
22
+ active_route_notes:
23
+ - Treat Problem 19 as a decision archive, not as a live open frontier.
24
+ route_breakthroughs: []
25
+ problem_solved: []
@@ -0,0 +1,9 @@
1
+ # Problem 22 Checkpoint Template
2
+
3
+ ## Proof Archive
4
+ - Solved status wording:
5
+ - Primary proof source frozen:
6
+ - Archive drift risk:
7
+
8
+ ## Next Honest Move
9
+ -
@@ -0,0 +1,9 @@
1
+ # Problem 22 Graph-Theory Pack Context
2
+
3
+ Role in pack:
4
+ - Ramsey-Turan proof archive
5
+ - solved graph-theory cockpit rather than a live open frontier
6
+
7
+ Bootstrap focus:
8
+ - preserve the solved status cleanly
9
+ - keep the extremal-graph framing and reference trail synchronized
@@ -0,0 +1,8 @@
1
+ # Problem 22 Frontier Note
2
+
3
+ Problem 22 is packaged as a proof archive.
4
+
5
+ Current honest posture:
6
+ - preserve the public solved status
7
+ - keep the Ramsey-Turan framing explicit
8
+ - treat improvements here as archive clarification, not live frontier pressure
@@ -0,0 +1,25 @@
1
+ packet_id: gt22_ops_details_v1
2
+ summary: Proof archive cockpit packet for the Ramsey-Turan `K_4` record.
3
+ routes:
4
+ - route_id: ramsey_turan_k4_archive
5
+ title: Ramsey-Turan `K_4` Proof Archive
6
+ status: archival
7
+ summary: Keep the solved Ramsey-Turan record explicit and preserve the extremal-graph proof framing.
8
+ why_now: This is the honest public posture for Problem 22.
9
+ next_move: Freeze the strongest proof reference and checkpoint the archive packet.
10
+ tickets:
11
+ - ticket_id: G22
12
+ title: Tighten the Ramsey-Turan proof archive packet
13
+ route_id: ramsey_turan_k4_archive
14
+ status: active
15
+ summary: Package the solved record clearly enough that agents cannot mistake it for an open frontier.
16
+ current_blocker: The archive still needs a stronger primary proof hook.
17
+ next_move: Close `G22.G1.A1`.
18
+ atoms:
19
+ - atom_id: G22.G1.A1
20
+ title: Freeze the primary solved-reference hook for the Ramsey-Turan record
21
+ route_id: ramsey_turan_k4_archive
22
+ ticket_id: G22
23
+ status: ready
24
+ summary: This is the smallest honest archive move for Problem 22.
25
+ next_move: Record the strongest public proof hook and checkpoint the archive packet.
@@ -0,0 +1,9 @@
1
+ # Problem 22 Report Template
2
+
3
+ ## Archive Summary
4
+ - Proof archive status:
5
+ - Source alignment:
6
+ - Remaining clarification work:
7
+
8
+ ## Follow-up
9
+ -
@@ -0,0 +1,5 @@
1
+ # Problem 22 Route History
2
+
3
+ - Initial public pack lift: moved the dossier into a graph-theory proof archive cockpit.
4
+ - Current route: `ramsey_turan_k4_archive`.
5
+ - Honest next improvement: freeze the best source trail and keep the solved wording maximally clear.
@@ -0,0 +1,13 @@
1
+ route_packet_id: gt22_ramsey_turan_proof_archive_v1
2
+ route_id: ramsey_turan_k4_archive
3
+ frontier_claim: Preserve the solved Ramsey-Turan `K_4` record as a proof archive packet and keep the strongest reference trail explicit.
4
+ theorem_module: ""
5
+ checkpoint_packet: CHECKPOINT_TEMPLATE.md
6
+ report_packet: REPORT_TEMPLATE.md
7
+ ready_prompts:
8
+ - Which exact proof reference should anchor the archive packet first?
9
+ - Which wording best prevents agents from drifting back into open-problem language here?
10
+ verification_hook:
11
+ - erdos graph-theory status 22
12
+ - erdos graph-theory frontier 22
13
+ - erdos archive show 22 --json
@@ -0,0 +1,26 @@
1
+ problem_id: "22"
2
+ family_role: ramsey_turan_proof_archive
3
+ harness_profile: proof_archive_cockpit
4
+ default_active_route: ramsey_turan_k4_archive
5
+ bootstrap_focus: Freeze the solved Ramsey-Turan `K_4` record as a proof archive and keep its dossier wording aligned with the public solved status.
6
+ route_story: Problem 22 is a proof archive cockpit. The public job is to preserve the solved status, the Ramsey-Turan framing, and the main source trail without pretending there is a live frontier here.
7
+ frontier_label: ramsey_turan_k4_archive
8
+ frontier_detail: Preserve the affirmative proof posture and the extremal graph framing without blurring it into an open program.
9
+ checkpoint_focus: Keep the proof archive wording, the public solved status, and the main source trail synchronized.
10
+ next_honest_move: Tighten the Ramsey-Turan proof archive note and freeze the strongest source hook for the solved record.
11
+ related_core_problems: []
12
+ literature_focus:
13
+ - graph theory
14
+ - Ramsey-Turan theory
15
+ artifact_focus:
16
+ - STATEMENT.md
17
+ - REFERENCES.md
18
+ - EVIDENCE.md
19
+ question_ledger:
20
+ open_questions:
21
+ - Which exact reference should anchor the proof archive packet first?
22
+ active_route_notes:
23
+ - Treat Problem 22 as a proof archive, not as a live open cockpit.
24
+ route_breakthroughs: []
25
+ problem_solved:
26
+ - The public site marks this problem as proved.
@@ -11,6 +11,9 @@ Useful commands:
11
11
  - `erdos number-theory frontier 1`
12
12
  - `erdos number-theory routes 1`
13
13
  - `erdos number-theory tickets 1`
14
+ - `erdos number-theory route 1 distinct_subset_sum_lower_bound`
15
+ - `erdos number-theory ticket 1 N1`
16
+ - `erdos number-theory atom 1 N1.G1.A1`
14
17
  - `erdos number-theory status 2 --json`
15
18
 
16
19
  Design rule:
package/src/cli/index.js CHANGED
@@ -4,6 +4,7 @@ import { runCheckpointsCommand } from '../commands/checkpoints.js';
4
4
  import { runClusterCommand } from '../commands/cluster.js';
5
5
  import { runContinuationCommand } from '../commands/continuation.js';
6
6
  import { runDossierCommand } from '../commands/dossier.js';
7
+ import { runGraphTheoryCommand } from '../commands/graph-theory.js';
7
8
  import { runMaintainerCommand } from '../commands/maintainer.js';
8
9
  import { runNumberTheoryCommand } from '../commands/number-theory.js';
9
10
  import { runOrpCommand } from '../commands/orp.js';
@@ -26,15 +27,22 @@ function printUsage() {
26
27
  console.log(' erdos problem use <id>');
27
28
  console.log(' erdos problem current');
28
29
  console.log(' erdos problem artifacts [<id>] [--json]');
29
- console.log(' erdos cluster list');
30
- console.log(' erdos cluster show <name>');
31
- console.log(' erdos archive show <id>');
32
- console.log(' erdos archive scaffold <id>');
30
+ console.log(' erdos cluster list [--json]');
31
+ console.log(' erdos cluster show <name> [--json]');
32
+ console.log(' erdos archive show <id> [--json]');
33
+ console.log(' erdos archive scaffold <id> [--json]');
34
+ console.log(' erdos graph-theory status [<id>] [--json]');
35
+ console.log(' erdos graph-theory frontier [<id>] [--json]');
36
+ console.log(' erdos graph-theory routes [<id>] [--json]');
37
+ console.log(' erdos graph-theory tickets [<id>] [--json]');
33
38
  console.log(' erdos number-theory status [<id>] [--json]');
34
39
  console.log(' erdos number-theory frontier [<id>] [--json]');
35
40
  console.log(' erdos number-theory routes [<id>] [--json]');
36
41
  console.log(' erdos number-theory tickets [<id>] [--json]');
37
- console.log(' erdos workspace show');
42
+ console.log(' erdos number-theory route <problem-id> <route-id> [--json]');
43
+ console.log(' erdos number-theory ticket <problem-id> <ticket-id> [--json]');
44
+ console.log(' erdos number-theory atom <problem-id> <atom-id> [--json]');
45
+ console.log(' erdos workspace show [--json]');
38
46
  console.log(' erdos orp show [--json]');
39
47
  console.log(' erdos orp sync [--json]');
40
48
  console.log(' erdos state sync [--json]');
@@ -82,6 +90,8 @@ if (!command || command === 'help' || command === '--help') {
82
90
  exitCode = runClusterCommand(rest);
83
91
  } else if (command === 'archive') {
84
92
  exitCode = runArchiveCommand(rest);
93
+ } else if (command === 'graph-theory') {
94
+ exitCode = runGraphTheoryCommand(rest);
85
95
  } else if (command === 'number-theory') {
86
96
  exitCode = runNumberTheoryCommand(rest);
87
97
  } else if (command === 'workspace') {
@@ -1,7 +1,8 @@
1
1
  import { getArchiveView, scaffoldArchive } from '../runtime/archive.js';
2
2
 
3
3
  export function runArchiveCommand(args) {
4
- const [subcommand, problemId] = args;
4
+ const [subcommand, problemId, ...rest] = args;
5
+ const asJson = rest.includes('--json');
5
6
 
6
7
  if (!subcommand || subcommand === 'help' || subcommand === '--help') {
7
8
  console.log('Usage:');
@@ -21,6 +22,10 @@ export function runArchiveCommand(args) {
21
22
  console.error(`Unknown problem: ${problemId}`);
22
23
  return 1;
23
24
  }
25
+ if (asJson) {
26
+ console.log(JSON.stringify(archive, null, 2));
27
+ return 0;
28
+ }
24
29
  console.log(`${archive.displayName} archive view`);
25
30
  console.log(`Title: ${archive.title}`);
26
31
  console.log(`Solved: ${archive.solved ? 'yes' : 'no'}`);
@@ -32,6 +37,10 @@ export function runArchiveCommand(args) {
32
37
  if (subcommand === 'scaffold') {
33
38
  try {
34
39
  const result = scaffoldArchive(problemId);
40
+ if (asJson) {
41
+ console.log(JSON.stringify(result, null, 2));
42
+ return 0;
43
+ }
35
44
  console.log(`Archive scaffold created: ${result.archiveDir}`);
36
45
  console.log(`Archive mode: ${result.payload.archiveMode}`);
37
46
  return 0;
@@ -14,11 +14,16 @@ function printCluster(cluster) {
14
14
  console.log(' Open starter cockpit: 1');
15
15
  console.log(' Counterexample/archive cockpit: 2');
16
16
  console.log(' Additional dossier seeds: 3, 4, 5, 6, 7, 18, 542');
17
+ } else if (cluster.name === 'graph-theory') {
18
+ console.log(' Decision archive cockpit: 19');
19
+ console.log(' Proof archive cockpit: 22');
20
+ console.log(' Lean proof archive cockpit: 1008');
17
21
  }
18
22
  }
19
23
 
20
24
  export function runClusterCommand(args) {
21
- const [subcommand, value] = args;
25
+ const [subcommand, value, ...rest] = args;
26
+ const asJson = [value, ...rest].includes('--json');
22
27
 
23
28
  if (!subcommand || subcommand === 'help' || subcommand === '--help') {
24
29
  console.log('Usage:');
@@ -28,6 +33,10 @@ export function runClusterCommand(args) {
28
33
  }
29
34
 
30
35
  if (subcommand === 'list') {
36
+ if (asJson) {
37
+ console.log(JSON.stringify(listClusters(), null, 2));
38
+ return 0;
39
+ }
31
40
  console.log('Clusters:');
32
41
  for (const cluster of listClusters()) {
33
42
  console.log(`- ${cluster.name}: ${cluster.problems.length} problems, ${cluster.deepHarnessProblems.length} deep-harness`);
@@ -51,6 +60,11 @@ export function runClusterCommand(args) {
51
60
  return 1;
52
61
  }
53
62
 
63
+ if (asJson) {
64
+ console.log(JSON.stringify(cluster, null, 2));
65
+ return 0;
66
+ }
67
+
54
68
  printCluster(cluster);
55
69
  return 0;
56
70
  }