erdos-problems 0.1.7 → 0.1.8

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 (98) hide show
  1. package/README.md +29 -9
  2. package/docs/RESEARCH_LOOP.md +6 -1
  3. package/package.json +1 -1
  4. package/packs/sunflower/README.md +4 -0
  5. package/packs/sunflower/problems/20/AGENT_START.md +18 -0
  6. package/packs/sunflower/problems/20/CHECKPOINT_PACKET.md +11 -0
  7. package/packs/sunflower/problems/20/REPORT_PACKET.md +10 -0
  8. package/packs/sunflower/problems/20/ROUTE_PACKET.yaml +12 -0
  9. package/packs/sunflower/problems/857/AGENT_START.md +18 -0
  10. package/packs/sunflower/problems/857/CHECKPOINT_PACKET.md +11 -0
  11. package/packs/sunflower/problems/857/REPORT_PACKET.md +10 -0
  12. package/packs/sunflower/problems/857/ROUTE_PACKET.yaml +12 -0
  13. package/problems/1/AGENT_START.md +17 -0
  14. package/problems/1/CHECKPOINT_NOTES.md +11 -0
  15. package/problems/1/EVIDENCE.md +10 -0
  16. package/problems/1/FORMALIZATION.md +8 -0
  17. package/problems/1/REFERENCES.md +9 -0
  18. package/problems/1/ROUTES.md +14 -0
  19. package/problems/1/STATEMENT.md +21 -0
  20. package/problems/1/problem.yaml +44 -0
  21. package/problems/19/AGENT_START.md +17 -0
  22. package/problems/19/CHECKPOINT_NOTES.md +11 -0
  23. package/problems/19/EVIDENCE.md +10 -0
  24. package/problems/19/FORMALIZATION.md +8 -0
  25. package/problems/19/REFERENCES.md +9 -0
  26. package/problems/19/ROUTES.md +14 -0
  27. package/problems/19/STATEMENT.md +15 -0
  28. package/problems/19/problem.yaml +42 -0
  29. package/problems/2/AGENT_START.md +17 -0
  30. package/problems/2/CHECKPOINT_NOTES.md +11 -0
  31. package/problems/2/EVIDENCE.md +10 -0
  32. package/problems/2/FORMALIZATION.md +8 -0
  33. package/problems/2/REFERENCES.md +9 -0
  34. package/problems/2/ROUTES.md +14 -0
  35. package/problems/2/STATEMENT.md +15 -0
  36. package/problems/2/problem.yaml +42 -0
  37. package/problems/21/AGENT_START.md +17 -0
  38. package/problems/21/CHECKPOINT_NOTES.md +11 -0
  39. package/problems/21/EVIDENCE.md +10 -0
  40. package/problems/21/FORMALIZATION.md +8 -0
  41. package/problems/21/REFERENCES.md +9 -0
  42. package/problems/21/ROUTES.md +14 -0
  43. package/problems/21/STATEMENT.md +21 -0
  44. package/problems/21/problem.yaml +46 -0
  45. package/problems/22/AGENT_START.md +17 -0
  46. package/problems/22/CHECKPOINT_NOTES.md +11 -0
  47. package/problems/22/EVIDENCE.md +10 -0
  48. package/problems/22/FORMALIZATION.md +8 -0
  49. package/problems/22/REFERENCES.md +9 -0
  50. package/problems/22/ROUTES.md +14 -0
  51. package/problems/22/STATEMENT.md +21 -0
  52. package/problems/22/problem.yaml +44 -0
  53. package/problems/3/AGENT_START.md +17 -0
  54. package/problems/3/CHECKPOINT_NOTES.md +11 -0
  55. package/problems/3/EVIDENCE.md +10 -0
  56. package/problems/3/FORMALIZATION.md +8 -0
  57. package/problems/3/REFERENCES.md +9 -0
  58. package/problems/3/ROUTES.md +14 -0
  59. package/problems/3/STATEMENT.md +21 -0
  60. package/problems/3/problem.yaml +44 -0
  61. package/problems/4/AGENT_START.md +17 -0
  62. package/problems/4/CHECKPOINT_NOTES.md +11 -0
  63. package/problems/4/EVIDENCE.md +10 -0
  64. package/problems/4/FORMALIZATION.md +8 -0
  65. package/problems/4/REFERENCES.md +9 -0
  66. package/problems/4/ROUTES.md +14 -0
  67. package/problems/4/STATEMENT.md +21 -0
  68. package/problems/4/problem.yaml +44 -0
  69. package/problems/5/AGENT_START.md +17 -0
  70. package/problems/5/CHECKPOINT_NOTES.md +11 -0
  71. package/problems/5/EVIDENCE.md +10 -0
  72. package/problems/5/FORMALIZATION.md +8 -0
  73. package/problems/5/REFERENCES.md +9 -0
  74. package/problems/5/ROUTES.md +14 -0
  75. package/problems/5/STATEMENT.md +21 -0
  76. package/problems/5/problem.yaml +43 -0
  77. package/problems/6/AGENT_START.md +17 -0
  78. package/problems/6/CHECKPOINT_NOTES.md +11 -0
  79. package/problems/6/EVIDENCE.md +10 -0
  80. package/problems/6/FORMALIZATION.md +8 -0
  81. package/problems/6/REFERENCES.md +9 -0
  82. package/problems/6/ROUTES.md +14 -0
  83. package/problems/6/STATEMENT.md +21 -0
  84. package/problems/6/problem.yaml +43 -0
  85. package/problems/7/AGENT_START.md +17 -0
  86. package/problems/7/CHECKPOINT_NOTES.md +11 -0
  87. package/problems/7/EVIDENCE.md +10 -0
  88. package/problems/7/FORMALIZATION.md +8 -0
  89. package/problems/7/REFERENCES.md +9 -0
  90. package/problems/7/ROUTES.md +14 -0
  91. package/problems/7/STATEMENT.md +21 -0
  92. package/problems/7/problem.yaml +42 -0
  93. package/src/commands/problem.js +6 -0
  94. package/src/commands/pull.js +31 -1
  95. package/src/commands/sunflower.js +10 -0
  96. package/src/runtime/maintainer-seed.js +158 -8
  97. package/src/runtime/problem-artifacts.js +36 -1
  98. package/src/runtime/sunflower.js +48 -0
@@ -0,0 +1,10 @@
1
+ # Evidence
2
+
3
+ - This dossier was seeded for Erdos Problem #5 from a pull bundle.
4
+ - Upstream record included: yes
5
+ - Site snapshot included: yes
6
+ - Repo status at seed time: cataloged
7
+ - Harness depth at seed time: dossier
8
+
9
+ Next maintainer step:
10
+ - replace the seed placeholders with a curated statement, references, evidence notes, and formalization plan.
@@ -0,0 +1,8 @@
1
+ # Formalization
2
+
3
+ - Local status: planned
4
+ - Upstream formalized state: no
5
+ - Upstream formalized last update: 2025-08-31
6
+
7
+ Seed note:
8
+ - this file was created automatically from a pull bundle and should be upgraded as local formal work begins.
@@ -0,0 +1,9 @@
1
+ # References
2
+
3
+ - Public problem page:
4
+ - <https://www.erdosproblems.com/5>
5
+ - Upstream structured data:
6
+ - <https://github.com/teorth/erdosproblems>
7
+ - `data/problems.yaml`
8
+ - Site summary snapshot was present in the pull bundle at seed time.
9
+ - A literature lane bundle was available during seeding.
@@ -0,0 +1,14 @@
1
+ # Routes
2
+
3
+ ## Status Ladder
4
+
5
+ - Open problem: yes
6
+ - Active route: seed_route_pending
7
+ - Route breakthrough: no
8
+ - Problem solved: no
9
+
10
+ ## Starter route notes
11
+
12
+ - Current seeded route placeholder for problem 5: `seed_route_pending`
13
+ - Treat this as a workspace-level route marker until a curated route tree is written.
14
+ - Keep route progress separate from global problem status.
@@ -0,0 +1,21 @@
1
+ # Problem 5 Statement
2
+
3
+ Source: <https://www.erdosproblems.com/5>
4
+
5
+ Normalized focus:
6
+ - Let $C\geq 0$. Is there an infinite sequence of $n_i$ such that\[\lim_{i\to \infty}\frac{p_{n_i+1}-p_{n_i}}{\log n_i}=C?\]
7
+ - Seeded with filtered statement candidates from the public site snapshot
8
+
9
+ Statement candidates:
10
+ - Let $C\geq 0$. Is there an infinite sequence of $n_i$ such that\[\lim_{i\to \infty}\frac{p_{n_i+1}-p_{n_i}}{\log n_i}=C?\]
11
+ - Let $S$ be the set of limit points of $(p_{n+1}-p_n)/\log n$. This problem asks whether $S=[0,\infty]$. Although this conjecture remains unproven, a lot is known about $S$. Some highlights:
12
+ - - $\infty\in S$ by Westzynthius' result [We31] on large prime gaps,
13
+ - - Erdős [Er55] and Ricci [Ri56] independently showed that $S$ has positive Lebesgue measure,
14
+
15
+ Public-site preview:
16
+ - OPEN
17
+ - This is open, and cannot be resolved with a finite computation.
18
+ - Let $C\geq 0$. Is there an infinite sequence of $n_i$ such that\[\lim_{i\to \infty}\frac{p_{n_i+1}-p_{n_i}}{\log n_i}=C?\]
19
+ - #5 : [Er55c] [Er57] [Er61] [Er65b] [Er85c] [Er90] [Er97c]
20
+ - number theory |
21
+ - primes
@@ -0,0 +1,43 @@
1
+ problem_id: "5"
2
+ display_name: "Erdos Problem #5"
3
+ title: "Erdos Problem #5"
4
+ source:
5
+ site: erdosproblems.com
6
+ url: https://www.erdosproblems.com/5
7
+ external_id: "5"
8
+ upstream:
9
+ repo: https://github.com/teorth/erdosproblems
10
+ data_file: data/problems.yaml
11
+ number: "5"
12
+ provenance:
13
+ seeded_at: 2026-03-26T04:41:25.800Z
14
+ seeded_from:
15
+ kind: pull_bundle
16
+ upstream_record_included: true
17
+ site_snapshot_included: true
18
+ status:
19
+ site_status: open
20
+ site_badge: OPEN
21
+ repo_status: cataloged
22
+ upstream_status: open
23
+ upstream_last_update: 2025-08-31
24
+ cluster: number-theory
25
+ prize:
26
+ display: no
27
+ related_problems: []
28
+ family_tags:
29
+ - number-theory
30
+ - primes
31
+ harness:
32
+ depth: dossier
33
+ statement:
34
+ short: Let $C\geq 0$. Is there an infinite sequence of $n_i$ such
35
+ that\[\lim_{i\to \infty}\frac{p_{n_i+1}-p_{n_i}}{\log n_i}=C?\]
36
+ normalized_md_path: STATEMENT.md
37
+ references_path: REFERENCES.md
38
+ evidence_path: EVIDENCE.md
39
+ formalization_path: FORMALIZATION.md
40
+ formalization:
41
+ status: planned
42
+ upstream_state: no
43
+ upstream_last_update: 2025-08-31
@@ -0,0 +1,17 @@
1
+ # Agent Start
2
+
3
+ Fast start:
4
+ - `erdos problem show 6`
5
+ - `erdos workspace show`
6
+ - `erdos preflight`
7
+ - `erdos continuation use route`
8
+ - `erdos checkpoints sync`
9
+
10
+ Working assumptions:
11
+ - Open problem: yes
12
+ - Active route: seed_route_pending
13
+ - Repo status: cataloged
14
+ - Harness depth: dossier
15
+
16
+ First honest move:
17
+ - tighten the local dossier for problem 6 against its pull bundle, references, and upstream provenance before widening claims.
@@ -0,0 +1,11 @@
1
+ # Checkpoint Notes
2
+
3
+ - Problem: 6
4
+ - Repo status: cataloged
5
+ - Harness depth: dossier
6
+
7
+ Checkpoint prompts:
8
+ - What changed in the active route since the last honest checkpoint?
9
+ - Which claim level is justified right now: Exact, Verified, Heuristic, or Conjecture?
10
+ - Which upstream/public truth changed, if any?
11
+ - Which artifact or literature bundle should the next agent read first?
@@ -0,0 +1,10 @@
1
+ # Evidence
2
+
3
+ - This dossier was seeded for Erdos Problem #6 from a pull bundle.
4
+ - Upstream record included: yes
5
+ - Site snapshot included: yes
6
+ - Repo status at seed time: cataloged
7
+ - Harness depth at seed time: dossier
8
+
9
+ Next maintainer step:
10
+ - replace the seed placeholders with a curated statement, references, evidence notes, and formalization plan.
@@ -0,0 +1,8 @@
1
+ # Formalization
2
+
3
+ - Local status: planned
4
+ - Upstream formalized state: yes
5
+ - Upstream formalized last update: 2025-09-18
6
+
7
+ Seed note:
8
+ - this file was created automatically from a pull bundle and should be upgraded as local formal work begins.
@@ -0,0 +1,9 @@
1
+ # References
2
+
3
+ - Public problem page:
4
+ - <https://www.erdosproblems.com/6>
5
+ - Upstream structured data:
6
+ - <https://github.com/teorth/erdosproblems>
7
+ - `data/problems.yaml`
8
+ - Site summary snapshot was present in the pull bundle at seed time.
9
+ - A literature lane bundle was available during seeding.
@@ -0,0 +1,14 @@
1
+ # Routes
2
+
3
+ ## Status Ladder
4
+
5
+ - Open problem: yes
6
+ - Active route: seed_route_pending
7
+ - Route breakthrough: no
8
+ - Problem solved: no
9
+
10
+ ## Starter route notes
11
+
12
+ - Current seeded route placeholder for problem 6: `seed_route_pending`
13
+ - Treat this as a workspace-level route marker until a curated route tree is written.
14
+ - Keep route progress separate from global problem status.
@@ -0,0 +1,21 @@
1
+ # Problem 6 Statement
2
+
3
+ Source: <https://www.erdosproblems.com/6>
4
+
5
+ Normalized focus:
6
+ - Let $d_n=p_{n+1}-p_n$. Are there infinitely many $n$ such that $d_n<d_{n+1}<d_{n+2}$?
7
+ - Seeded with filtered statement candidates from the public site snapshot
8
+
9
+ Statement candidates:
10
+ - Let $d_n=p_{n+1}-p_n$. Are there infinitely many $n$ such that $d_n<d_{n+1}<d_{n+2}$?
11
+ - Conjectured by Erdős and Turán [ErTu48] . Shockingly Erdős offered \$25000 for a disproof of this, but as he comments, it 'is certainly true'. (In [Er85c] he goes further and offers 'all the money I can earn, beg, borrow or steal for [a disproof]'.)
12
+ - Indeed, the answer is yes, as proved by Banks, Freiberg, and Turnage-Butterbaugh [BFT15] with an application of the Maynard-Tao machinery concerning bounded gaps between primes [Ma15] . They in fact prove that, for any $m\geq 1$, there are infinitely many $n$ such that\[d_n<d_{n+1}<\cdots <d_{n+m}\]and infinitely many $n$ such that\[d_n> d_{n+1}>\cdots >d_{n+m}.\]This is discussed in problem A11 of Guy's collection [Gu04] .
13
+ - This page was last edited 28 September 2025. View history
14
+
15
+ Public-site preview:
16
+ - PROVED
17
+ - This has been solved in the affirmative.
18
+ - - $100
19
+ - Let $d_n=p_{n+1}-p_n$. Are there infinitely many $n$ such that $d_n<d_{n+1}<d_{n+2}$?
20
+ - #6 : [Er55c] [Er57] [Er61] [Er65b] [Er77c] [Er79] [Er79d] [ErGr80] [Er85c] [Er90]
21
+ - number theory |
@@ -0,0 +1,43 @@
1
+ problem_id: "6"
2
+ display_name: "Erdos Problem #6"
3
+ title: "Erdos Problem #6"
4
+ source:
5
+ site: erdosproblems.com
6
+ url: https://www.erdosproblems.com/6
7
+ external_id: "6"
8
+ upstream:
9
+ repo: https://github.com/teorth/erdosproblems
10
+ data_file: data/problems.yaml
11
+ number: "6"
12
+ provenance:
13
+ seeded_at: 2026-03-26T04:41:26.097Z
14
+ seeded_from:
15
+ kind: pull_bundle
16
+ upstream_record_included: true
17
+ site_snapshot_included: true
18
+ status:
19
+ site_status: proved
20
+ site_badge: PROVED
21
+ repo_status: cataloged
22
+ upstream_status: proved
23
+ upstream_last_update: 2025-08-31
24
+ cluster: number-theory
25
+ prize:
26
+ display: $100
27
+ related_problems: []
28
+ family_tags:
29
+ - number-theory
30
+ - primes
31
+ harness:
32
+ depth: dossier
33
+ statement:
34
+ short: Let $d_n=p_{n+1}-p_n$. Are there infinitely many $n$ such that
35
+ $d_n<d_{n+1}<d_{n+2}$?
36
+ normalized_md_path: STATEMENT.md
37
+ references_path: REFERENCES.md
38
+ evidence_path: EVIDENCE.md
39
+ formalization_path: FORMALIZATION.md
40
+ formalization:
41
+ status: planned
42
+ upstream_state: yes
43
+ upstream_last_update: 2025-09-18
@@ -0,0 +1,17 @@
1
+ # Agent Start
2
+
3
+ Fast start:
4
+ - `erdos problem show 7`
5
+ - `erdos workspace show`
6
+ - `erdos preflight`
7
+ - `erdos continuation use route`
8
+ - `erdos checkpoints sync`
9
+
10
+ Working assumptions:
11
+ - Open problem: yes
12
+ - Active route: seed_route_pending
13
+ - Repo status: cataloged
14
+ - Harness depth: dossier
15
+
16
+ First honest move:
17
+ - tighten the local dossier for problem 7 against its pull bundle, references, and upstream provenance before widening claims.
@@ -0,0 +1,11 @@
1
+ # Checkpoint Notes
2
+
3
+ - Problem: 7
4
+ - Repo status: cataloged
5
+ - Harness depth: dossier
6
+
7
+ Checkpoint prompts:
8
+ - What changed in the active route since the last honest checkpoint?
9
+ - Which claim level is justified right now: Exact, Verified, Heuristic, or Conjecture?
10
+ - Which upstream/public truth changed, if any?
11
+ - Which artifact or literature bundle should the next agent read first?
@@ -0,0 +1,10 @@
1
+ # Evidence
2
+
3
+ - This dossier was seeded for Erdos Problem #7 from a pull bundle.
4
+ - Upstream record included: yes
5
+ - Site snapshot included: yes
6
+ - Repo status at seed time: cataloged
7
+ - Harness depth at seed time: dossier
8
+
9
+ Next maintainer step:
10
+ - replace the seed placeholders with a curated statement, references, evidence notes, and formalization plan.
@@ -0,0 +1,8 @@
1
+ # Formalization
2
+
3
+ - Local status: planned
4
+ - Upstream formalized state: no
5
+ - Upstream formalized last update: 2025-08-31
6
+
7
+ Seed note:
8
+ - this file was created automatically from a pull bundle and should be upgraded as local formal work begins.
@@ -0,0 +1,9 @@
1
+ # References
2
+
3
+ - Public problem page:
4
+ - <https://www.erdosproblems.com/7>
5
+ - Upstream structured data:
6
+ - <https://github.com/teorth/erdosproblems>
7
+ - `data/problems.yaml`
8
+ - Site summary snapshot was present in the pull bundle at seed time.
9
+ - A literature lane bundle was available during seeding.
@@ -0,0 +1,14 @@
1
+ # Routes
2
+
3
+ ## Status Ladder
4
+
5
+ - Open problem: yes
6
+ - Active route: seed_route_pending
7
+ - Route breakthrough: no
8
+ - Problem solved: no
9
+
10
+ ## Starter route notes
11
+
12
+ - Current seeded route placeholder for problem 7: `seed_route_pending`
13
+ - Treat this as a workspace-level route marker until a curated route tree is written.
14
+ - Keep route progress separate from global problem status.
@@ -0,0 +1,21 @@
1
+ # Problem 7 Statement
2
+
3
+ Source: <https://www.erdosproblems.com/7>
4
+
5
+ Normalized focus:
6
+ - Open, but could be proved with a finite example.
7
+ - Seeded with filtered statement candidates from the public site snapshot
8
+
9
+ Statement candidates:
10
+ - Open, but could be proved with a finite example.
11
+ - Is there a distinct covering system all of whose moduli are odd?
12
+ - Asked by Erdős and Selfridge (sometimes also with Schinzel). They also asked whether there can be a covering system such that all the moduli are odd and squarefree. The answer to this stronger question is no, proved by Balister, Bollobás, Morris, Sahasrabudhe, and Tiba [BBMST22] .
13
+ - Hough and Nielsen [HoNi19] proved that at least one modulus must be divisible by either $2$ or $3$. A simpler proof of this fact was provided by Balister, Bollobás, Morris, Sahasrabudhe, and Tiba [BBMST22] , who also prove that if an odd covering system exists then the least common multiple of its moduli must be divisible by $9$ or $15$.
14
+
15
+ Public-site preview:
16
+ - Open, but could be proved with a finite example.
17
+ - - $25
18
+ - Is there a distinct covering system all of whose moduli are odd?
19
+ - #7 : [Er57] [Er61] [Er65] [Er65b] [Er73] [ErGr80] [Er82e] [Er90] [Er95,p.166] [Er96b] [Er97] [Er97c] [Er97e]
20
+ - number theory |
21
+ - covering systems
@@ -0,0 +1,42 @@
1
+ problem_id: "7"
2
+ display_name: "Erdos Problem #7"
3
+ title: "Erdos Problem #7"
4
+ source:
5
+ site: erdosproblems.com
6
+ url: https://www.erdosproblems.com/7
7
+ external_id: "7"
8
+ upstream:
9
+ repo: https://github.com/teorth/erdosproblems
10
+ data_file: data/problems.yaml
11
+ number: "7"
12
+ provenance:
13
+ seeded_at: 2026-03-26T04:41:26.332Z
14
+ seeded_from:
15
+ kind: pull_bundle
16
+ upstream_record_included: true
17
+ site_snapshot_included: true
18
+ status:
19
+ site_status: verifiable
20
+ site_badge: VERIFIABLE
21
+ repo_status: cataloged
22
+ upstream_status: verifiable
23
+ upstream_last_update: 2025-08-31
24
+ cluster: number-theory
25
+ prize:
26
+ display: no
27
+ related_problems: []
28
+ family_tags:
29
+ - number-theory
30
+ - covering-systems
31
+ harness:
32
+ depth: dossier
33
+ statement:
34
+ short: Open, but could be proved with a finite example.
35
+ normalized_md_path: STATEMENT.md
36
+ references_path: REFERENCES.md
37
+ evidence_path: EVIDENCE.md
38
+ formalization_path: FORMALIZATION.md
39
+ formalization:
40
+ status: planned
41
+ upstream_state: no
42
+ upstream_last_update: 2025-08-31
@@ -127,6 +127,12 @@ function printArtifactInventory(problem, inventory, asJson) {
127
127
  for (const artifact of inventory.canonicalArtifacts) {
128
128
  console.log(`- ${artifact.label}: ${artifact.exists ? 'present' : 'missing'} (${artifact.path})`);
129
129
  }
130
+ if (inventory.starterArtifacts.length > 0) {
131
+ console.log('Starter loop artifacts:');
132
+ for (const artifact of inventory.starterArtifacts) {
133
+ console.log(`- ${artifact.label}: ${artifact.exists ? 'present' : 'missing'} (${artifact.path})`);
134
+ }
135
+ }
130
136
  if (inventory.packContext) {
131
137
  console.log(`- ${inventory.packContext.label}: ${inventory.packContext.exists ? 'present' : 'missing'} (${inventory.packContext.path})`);
132
138
  }
@@ -10,6 +10,36 @@ import { getProblemArtifactInventory, scaffoldProblem } from '../runtime/problem
10
10
  import { loadActiveUpstreamSnapshot, syncUpstream } from '../upstream/sync.js';
11
11
  import { fetchProblemSiteSnapshot } from '../upstream/site.js';
12
12
 
13
+ function normalizeClusterLabel(rawTag) {
14
+ return String(rawTag ?? '')
15
+ .trim()
16
+ .toLowerCase()
17
+ .replace(/[^a-z0-9]+/g, '-')
18
+ .replace(/^-+|-+$/g, '');
19
+ }
20
+
21
+ function inferClusterFromUpstream(upstreamRecord) {
22
+ const normalized = Array.isArray(upstreamRecord?.tags)
23
+ ? upstreamRecord.tags.map(normalizeClusterLabel).filter(Boolean)
24
+ : [];
25
+ if (normalized.includes('number-theory')) {
26
+ return 'number-theory';
27
+ }
28
+ if (normalized.includes('graph-theory') || normalized.includes('chromatic-number')) {
29
+ return 'graph-theory';
30
+ }
31
+ if (normalized.includes('geometry')) {
32
+ return 'geometry';
33
+ }
34
+ if (normalized.includes('analysis')) {
35
+ return 'analysis';
36
+ }
37
+ if (normalized.includes('combinatorics') || normalized.includes('intersecting-family')) {
38
+ return 'combinatorics';
39
+ }
40
+ return null;
41
+ }
42
+
13
43
  function parsePullArgs(args) {
14
44
  const [kind, value, ...rest] = args;
15
45
  if (!['problem', 'artifacts', 'literature'].includes(kind)) {
@@ -55,7 +85,7 @@ function buildProblemRecord(problemId, localProblem, upstreamRecord) {
55
85
  generatedAt: new Date().toISOString(),
56
86
  problemId: String(problemId),
57
87
  title: localProblem?.title ?? `Erdos Problem #${problemId}`,
58
- cluster: localProblem?.cluster ?? null,
88
+ cluster: localProblem?.cluster ?? inferClusterFromUpstream(upstreamRecord),
59
89
  siteStatus: localProblem?.siteStatus ?? upstreamRecord?.status?.state ?? 'unknown',
60
90
  repoStatus: localProblem?.repoStatus ?? 'upstream-only',
61
91
  harnessDepth: localProblem?.harnessDepth ?? 'unseeded',
@@ -44,6 +44,16 @@ function printSunflowerStatus(snapshot, registryPaths) {
44
44
  console.log(`Literature focus: ${snapshot.literatureFocus.join(', ') || '(none)'}`);
45
45
  console.log(`Artifact focus: ${snapshot.artifactFocus.join(', ') || '(none)'}`);
46
46
  console.log(`Context file: ${snapshot.contextPath ?? '(none)'}`);
47
+ console.log(`Route packet present: ${snapshot.routePacketPresent ? 'yes' : 'no'}`);
48
+ if (snapshot.routePacket) {
49
+ console.log(`Route packet id: ${snapshot.routePacket.routePacketId ?? '(none)'}`);
50
+ console.log(`Route packet route: ${snapshot.routePacket.routeId ?? '(none)'}`);
51
+ console.log(`Route frontier claim: ${snapshot.routePacket.frontierClaim ?? '(none)'}`);
52
+ console.log(`Theorem module: ${snapshot.routePacket.theoremModule ?? '(none)'}`);
53
+ }
54
+ console.log(`Agent start packet: ${snapshot.agentStartPresent ? snapshot.agentStartPath : '(missing)'}`);
55
+ console.log(`Checkpoint packet: ${snapshot.checkpointPacketPresent ? snapshot.checkpointPacketPath : '(missing)'}`);
56
+ console.log(`Report packet: ${snapshot.reportPacketPresent ? snapshot.reportPacketPath : '(missing)'}`);
47
57
  console.log(`Compute lane present: ${snapshot.computeLanePresent ? 'yes' : 'no'}`);
48
58
  console.log(`Compute lane count: ${snapshot.computeLaneCount}`);
49
59
  console.log(`Compute summary: ${snapshot.computeSummary}`);