dsh-math-modeling-agent 0.4.1 → 0.5.0

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 (31) hide show
  1. package/README.md +247 -187
  2. package/package.json +34 -34
  3. package/skills/math-modeling-agent/SKILL.md +70 -69
  4. package/skills/math-modeling-agent/references/claims-evidence.md +53 -41
  5. package/skills/math-modeling-agent/references/interaction-protocol.md +165 -163
  6. package/skills/math-modeling-agent/references/report-contract.md +130 -122
  7. package/skills/math-modeling-agent/references/run-directory.md +65 -62
  8. package/skills/math-modeling-agent/references/verification-recipes.md +43 -0
  9. package/skills/math-modeling-agent/schemas/attempt.schema.json +89 -70
  10. package/skills/math-modeling-agent/schemas/evidence.schema.json +110 -0
  11. package/skills/math-modeling-agent/schemas/failure.schema.json +30 -0
  12. package/skills/math-modeling-agent/schemas/ledger.schema.json +88 -68
  13. package/skills/math-modeling-agent/schemas/run.schema.json +126 -102
  14. package/skills/math-modeling-agent/schemas/verification.schema.json +60 -0
  15. package/skills/math-modeling-agent/scripts/correction-lineage.mjs +78 -0
  16. package/skills/math-modeling-agent/scripts/evidence-store.mjs +349 -0
  17. package/skills/math-modeling-agent/scripts/failure-insights.mjs +79 -0
  18. package/skills/math-modeling-agent/scripts/input-snapshot.mjs +98 -0
  19. package/skills/math-modeling-agent/scripts/ledger-mutation.mjs +82 -0
  20. package/skills/math-modeling-agent/scripts/migration-v3.mjs +31 -0
  21. package/skills/math-modeling-agent/scripts/output-integrity.mjs +82 -0
  22. package/skills/math-modeling-agent/scripts/paper-evidence.mjs +45 -0
  23. package/skills/math-modeling-agent/scripts/report-contract.mjs +112 -0
  24. package/skills/math-modeling-agent/scripts/run-state.mjs +829 -707
  25. package/skills/math-modeling-agent/scripts/verification-recipes.mjs +52 -0
  26. package/skills/math-modeling-agent/scripts/verification-runner.mjs +8 -0
  27. package/skills/math-modeling-audit/SKILL.md +41 -41
  28. package/skills/math-modeling-audit/references/mcm-icm-final-judge.md +335 -331
  29. package/skills/math-modeling-audit/scripts/mcm-score.mjs +293 -218
  30. package/skills/math-modeling-audit/scripts/paper-final-review.mjs +40 -0
  31. package/skills/math-modeling-audit/scripts/project-initial-review.mjs +41 -0
@@ -0,0 +1,110 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://github.com/yohanchen1/MathModelingAgent/schemas/evidence.schema.json",
4
+ "title": "Math Modeling Evidence",
5
+ "type": "object",
6
+ "additionalProperties": false,
7
+ "required": [
8
+ "id",
9
+ "kind",
10
+ "coveredClaimIds",
11
+ "coveredObligationIds",
12
+ "artifactPath",
13
+ "inputHashes",
14
+ "outputHashes",
15
+ "command",
16
+ "workdir",
17
+ "environment",
18
+ "exitCode",
19
+ "methodFamily",
20
+ "codeHash",
21
+ "level",
22
+ "limitations"
23
+ ],
24
+ "properties": {
25
+ "id": {
26
+ "type": "string",
27
+ "minLength": 1
28
+ },
29
+ "kind": {
30
+ "type": "string",
31
+ "minLength": 1
32
+ },
33
+ "coveredClaimIds": {
34
+ "type": "array",
35
+ "minItems": 1,
36
+ "items": {
37
+ "type": "string",
38
+ "minLength": 1
39
+ }
40
+ },
41
+ "coveredObligationIds": {
42
+ "type": "array",
43
+ "minItems": 1,
44
+ "items": {
45
+ "type": "string",
46
+ "minLength": 1
47
+ }
48
+ },
49
+ "artifactPath": {
50
+ "type": "string",
51
+ "minLength": 1
52
+ },
53
+ "inputHashes": {
54
+ "type": "object",
55
+ "minProperties": 1,
56
+ "additionalProperties": {
57
+ "type": "string",
58
+ "minLength": 1
59
+ }
60
+ },
61
+ "outputHashes": {
62
+ "type": "object",
63
+ "minProperties": 1,
64
+ "additionalProperties": {
65
+ "type": "string",
66
+ "minLength": 1
67
+ }
68
+ },
69
+ "command": {
70
+ "type": "string",
71
+ "minLength": 1
72
+ },
73
+ "workdir": {
74
+ "type": "string",
75
+ "minLength": 1
76
+ },
77
+ "environment": {
78
+ "type": "object",
79
+ "minProperties": 1,
80
+ "additionalProperties": true
81
+ },
82
+ "exitCode": {
83
+ "type": "integer"
84
+ },
85
+ "methodFamily": {
86
+ "type": "string",
87
+ "minLength": 1
88
+ },
89
+ "codeHash": {
90
+ "type": "string",
91
+ "minLength": 1
92
+ },
93
+ "level": {
94
+ "enum": [
95
+ "DERIVED",
96
+ "EXECUTED",
97
+ "VERIFIED",
98
+ "INDEPENDENTLY_VERIFIED",
99
+ "EXTERNALLY_VALIDATED",
100
+ "LEGACY_UNVERIFIED"
101
+ ]
102
+ },
103
+ "limitations": {
104
+ "type": "array",
105
+ "items": {
106
+ "type": "string"
107
+ }
108
+ }
109
+ }
110
+ }
@@ -0,0 +1,30 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://github.com/yohanchen1/MathModelingAgent/schemas/failure.schema.json",
4
+ "title": "Math Modeling Failure",
5
+ "type": "object",
6
+ "additionalProperties": false,
7
+ "required": ["failureId", "stage", "subproblem", "attempt", "rootCause", "candidateId", "assumptionIds", "symptom", "minimalReproduction", "command", "inputHashes", "codeHash", "exitCode", "affectedClaims", "affectedObligations", "whatWasRuledOut", "scientificInsight", "recovery", "status", "evidenceIds"],
8
+ "properties": {
9
+ "failureId": { "type": "string", "minLength": 1 },
10
+ "stage": { "type": "string", "minLength": 1 },
11
+ "subproblem": { "type": "string", "minLength": 1 },
12
+ "attempt": { "type": "integer", "minimum": 1 },
13
+ "rootCause": { "enum": ["DATA", "TOOL", "MODEL", "ASSUMPTION", "ANALYSIS", "VALIDATION", "EVIDENCE", "RESEARCH_GAP"] },
14
+ "candidateId": { "type": "string", "minLength": 1 },
15
+ "assumptionIds": { "type": "array", "items": { "type": "string", "minLength": 1 } },
16
+ "symptom": { "type": "string", "minLength": 1 },
17
+ "minimalReproduction": { "type": "string", "minLength": 1 },
18
+ "command": { "type": "string", "minLength": 1 },
19
+ "inputHashes": { "type": "object", "minProperties": 1, "additionalProperties": { "type": "string", "minLength": 1 } },
20
+ "codeHash": { "type": "string", "minLength": 1 },
21
+ "exitCode": { "type": "integer" },
22
+ "affectedClaims": { "type": "array", "items": { "type": "string", "minLength": 1 } },
23
+ "affectedObligations": { "type": "array", "items": { "type": "string", "minLength": 1 } },
24
+ "whatWasRuledOut": { "type": "array", "items": { "type": "string", "minLength": 1 } },
25
+ "scientificInsight": { "type": "string", "minLength": 1 },
26
+ "recovery": { "type": "string", "minLength": 1 },
27
+ "status": { "enum": ["OPEN", "RECOVERED", "ABANDONED", "STALE"] },
28
+ "evidenceIds": { "type": "array", "items": { "type": "string", "minLength": 1 } }
29
+ }
30
+ }
@@ -1,68 +1,88 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://github.com/yohanchen1/MathModelingAgent/schemas/ledger.schema.json",
4
- "title": "Math Modeling Ledger",
5
- "type": "object",
6
- "additionalProperties": false,
7
- "required": [
8
- "schemaVersion",
9
- "taskId",
10
- "scope",
11
- "assumptions",
12
- "claims",
13
- "obligations",
14
- "subproblems",
15
- "candidates",
16
- "issues"
17
- ],
18
- "properties": {
19
- "schemaVersion": {
20
- "const": 2
21
- },
22
- "taskId": {
23
- "type": "string"
24
- },
25
- "scope": {
26
- "type": "object",
27
- "properties": {
28
- "independentAuditPassed": { "type": "boolean" },
29
- "interactions": {
30
- "type": "array",
31
- "description": "L1 decision-point records: {id, decisionPoint: D0|D1|D-R|D2|D3|D4, question, options, userAnswer, timestamp, effectOnModel} or {auto: true, decisionPoint, reason}; D-R is the pre-modeling literature-research exchange",
32
- "items": { "type": "object" }
33
- },
34
- "decisionStack": {
35
- "type": "array",
36
- "description": "Decision-point stack for backtracking: {id (e.g. D3-SP1), point, choice, at, reason}. REVISE/RESEARCH reasons must reference an entry id.",
37
- "items": { "type": "object" }
38
- },
39
- "robustnessExempt": {
40
- "type": "boolean",
41
- "description": "True only for tasks with no perturbable parameters (pure proofs); terminal states otherwise require a PASSED robustness-kind obligation."
42
- }
43
- }
44
- },
45
- "assumptions": {
46
- "type": "array",
47
- "description": "Per-subproblem incremental assumptions: {id, statement, scope: [SPx]|global, source, status: active|revised|superseded, risk, sensitivityPlan, revisionHistory: [{at, reason, changedTo}]}",
48
- "items": { "type": "object" }
49
- },
50
- "claims": {
51
- "type": "array"
52
- },
53
- "obligations": {
54
- "type": "array"
55
- },
56
- "subproblems": {
57
- "type": "array",
58
- "description": "Subproblem DAG nodes: {id, task, inputs, dependencies, acceptance, status, analysisLog: [{at, entry, trigger}]} — analysisLog is the rolling analysis ledger, updated after every deep-exchange beat.",
59
- "items": { "type": "object" }
60
- },
61
- "candidates": {
62
- "type": "array"
63
- },
64
- "issues": {
65
- "type": "array"
66
- }
67
- }
68
- }
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://github.com/yohanchen1/MathModelingAgent/schemas/ledger.schema.json",
4
+ "title": "Math Modeling Ledger",
5
+ "type": "object",
6
+ "additionalProperties": false,
7
+ "required": [
8
+ "schemaVersion",
9
+ "taskId",
10
+ "scope",
11
+ "assumptions",
12
+ "claims",
13
+ "obligations",
14
+ "subproblems",
15
+ "candidates",
16
+ "issues",
17
+ "requirements",
18
+ "evidence",
19
+ "verifications",
20
+ "failures"
21
+ ],
22
+ "properties": {
23
+ "schemaVersion": {
24
+ "const": 3
25
+ },
26
+ "taskId": {
27
+ "type": "string"
28
+ },
29
+ "scope": {
30
+ "type": "object",
31
+ "properties": {
32
+ "independentAuditPassed": { "type": "boolean" },
33
+ "interactions": {
34
+ "type": "array",
35
+ "description": "L1 decision-point records: {id, decisionPoint: D0|D1|D-R|D2|D3|D4, question, options, userAnswer, timestamp, effectOnModel} or {auto: true, decisionPoint, reason}; D-R is the pre-modeling literature-research exchange",
36
+ "items": { "type": "object" }
37
+ },
38
+ "decisionStack": {
39
+ "type": "array",
40
+ "description": "Decision-point stack for backtracking: {id (e.g. D3-SP1), point, choice, at, reason}. REVISE/RESEARCH reasons must reference an entry id.",
41
+ "items": { "type": "object" }
42
+ },
43
+ "robustnessExempt": {
44
+ "type": "boolean",
45
+ "description": "True only for tasks with no perturbable parameters (pure proofs); terminal states otherwise require a PASSED robustness-kind obligation."
46
+ }
47
+ }
48
+ },
49
+ "assumptions": {
50
+ "type": "array",
51
+ "description": "Per-subproblem incremental assumptions: {id, statement, scope: [SPx]|global, source, status: active|revised|superseded, risk, sensitivityPlan, revisionHistory: [{at, reason, changedTo}]}",
52
+ "items": { "type": "object" }
53
+ },
54
+ "claims": {
55
+ "type": "array"
56
+ },
57
+ "obligations": {
58
+ "type": "array"
59
+ },
60
+ "subproblems": {
61
+ "type": "array",
62
+ "description": "Subproblem DAG nodes: {id, task, inputs, dependencies, acceptance, status, analysisLog: [{at, entry, trigger}]} — analysisLog is the rolling analysis ledger, updated after every deep-exchange beat.",
63
+ "items": { "type": "object" }
64
+ },
65
+ "candidates": {
66
+ "type": "array"
67
+ },
68
+ "issues": {
69
+ "type": "array"
70
+ },
71
+ "requirements": {
72
+ "type": "array",
73
+ "items": { "type": "object" }
74
+ },
75
+ "evidence": {
76
+ "type": "array",
77
+ "items": { "type": "object" }
78
+ },
79
+ "verifications": {
80
+ "type": "array",
81
+ "items": { "type": "object" }
82
+ },
83
+ "failures": {
84
+ "type": "array",
85
+ "items": { "type": "object" }
86
+ }
87
+ }
88
+ }
@@ -1,102 +1,126 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://github.com/yohanchen1/MathModelingAgent/schemas/run.schema.json",
4
- "title": "Math Modeling Run",
5
- "type": "object",
6
- "additionalProperties": false,
7
- "required": [
8
- "schemaVersion",
9
- "taskId",
10
- "mode",
11
- "status",
12
- "eventSequence",
13
- "currentAttempt",
14
- "bestCandidateId",
15
- "budget",
16
- "createdAt",
17
- "updatedAt"
18
- ],
19
- "properties": {
20
- "schemaVersion": {
21
- "const": 1
22
- },
23
- "taskId": {
24
- "type": "string",
25
- "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
26
- },
27
- "mode": {
28
- "enum": [
29
- "fast",
30
- "standard",
31
- "high-assurance"
32
- ]
33
- },
34
- "status": {
35
- "enum": [
36
- "TRIAGE",
37
- "SCOPE_FROZEN",
38
- "INPUT_PROFILED",
39
- "CLAIMS_REGISTERED",
40
- "CANDIDATES_READY",
41
- "ATTEMPT",
42
- "EXECUTE",
43
- "VERIFY",
44
- "REVISE",
45
- "RESEARCH",
46
- "FORK",
47
- "SOLVED",
48
- "PARTIAL",
49
- "CONDITIONAL",
50
- "INCONCLUSIVE",
51
- "REFUTED",
52
- "INFEASIBLE",
53
- "UNIDENTIFIABLE",
54
- "BLOCKED",
55
- "CANCELLED"
56
- ]
57
- },
58
- "eventSequence": {
59
- "type": "integer",
60
- "minimum": 0
61
- },
62
- "currentAttempt": {
63
- "type": "integer",
64
- "minimum": 0
65
- },
66
- "bestCandidateId": {
67
- "type": [
68
- "string",
69
- "null"
70
- ]
71
- },
72
- "budget": {
73
- "type": "object",
74
- "additionalProperties": false,
75
- "required": [
76
- "attempts",
77
- "researchQueries",
78
- "computeSeconds"
79
- ],
80
- "properties": {
81
- "attempts": {
82
- "type": "integer",
83
- "minimum": 1
84
- },
85
- "researchQueries": {
86
- "type": "integer",
87
- "minimum": 0
88
- },
89
- "computeSeconds": {
90
- "type": "integer",
91
- "minimum": 0
92
- }
93
- }
94
- },
95
- "createdAt": {
96
- "type": "string"
97
- },
98
- "updatedAt": {
99
- "type": "string"
100
- }
101
- }
102
- }
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://github.com/yohanchen1/MathModelingAgent/schemas/run.schema.json",
4
+ "title": "Math Modeling Run",
5
+ "type": "object",
6
+ "additionalProperties": false,
7
+ "required": [
8
+ "schemaVersion",
9
+ "taskId",
10
+ "mode",
11
+ "status",
12
+ "eventSequence",
13
+ "currentAttempt",
14
+ "bestCandidateId",
15
+ "budget",
16
+ "createdAt",
17
+ "updatedAt",
18
+ "lineageId",
19
+ "parentRunId",
20
+ "revision",
21
+ "inputSnapshotHash",
22
+ "evidenceGraphHash"
23
+ ],
24
+ "properties": {
25
+ "schemaVersion": {
26
+ "const": 3
27
+ },
28
+ "taskId": {
29
+ "type": "string",
30
+ "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
31
+ },
32
+ "mode": {
33
+ "enum": [
34
+ "fast",
35
+ "standard",
36
+ "high-assurance"
37
+ ]
38
+ },
39
+ "status": {
40
+ "enum": [
41
+ "TRIAGE",
42
+ "SCOPE_FROZEN",
43
+ "INPUT_PROFILED",
44
+ "CLAIMS_REGISTERED",
45
+ "CANDIDATES_READY",
46
+ "ATTEMPT",
47
+ "EXECUTE",
48
+ "VERIFY",
49
+ "EVALUATE",
50
+ "CORRECTION_REQUIRED",
51
+ "REVISE",
52
+ "RESEARCH",
53
+ "FORK",
54
+ "SOLVED",
55
+ "PARTIAL",
56
+ "CONDITIONAL",
57
+ "INCONCLUSIVE",
58
+ "REFUTED",
59
+ "INFEASIBLE",
60
+ "UNIDENTIFIABLE",
61
+ "BLOCKED",
62
+ "CANCELLED"
63
+ ]
64
+ },
65
+ "eventSequence": {
66
+ "type": "integer",
67
+ "minimum": 0
68
+ },
69
+ "currentAttempt": {
70
+ "type": "integer",
71
+ "minimum": 0
72
+ },
73
+ "bestCandidateId": {
74
+ "type": [
75
+ "string",
76
+ "null"
77
+ ]
78
+ },
79
+ "budget": {
80
+ "type": "object",
81
+ "additionalProperties": false,
82
+ "required": [
83
+ "attempts",
84
+ "researchQueries",
85
+ "computeSeconds"
86
+ ],
87
+ "properties": {
88
+ "attempts": {
89
+ "type": "integer",
90
+ "minimum": 1
91
+ },
92
+ "researchQueries": {
93
+ "type": "integer",
94
+ "minimum": 0
95
+ },
96
+ "computeSeconds": {
97
+ "type": "integer",
98
+ "minimum": 0
99
+ }
100
+ }
101
+ },
102
+ "createdAt": {
103
+ "type": "string"
104
+ },
105
+ "updatedAt": {
106
+ "type": "string"
107
+ },
108
+ "lineageId": {
109
+ "type": "string",
110
+ "minLength": 1
111
+ },
112
+ "parentRunId": {
113
+ "type": ["string", "null"]
114
+ },
115
+ "revision": {
116
+ "type": "integer",
117
+ "minimum": 0
118
+ },
119
+ "inputSnapshotHash": {
120
+ "type": ["string", "null"]
121
+ },
122
+ "evidenceGraphHash": {
123
+ "type": ["string", "null"]
124
+ }
125
+ }
126
+ }
@@ -0,0 +1,60 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://github.com/yohanchen1/MathModelingAgent/schemas/verification.schema.json",
4
+ "title": "Math Modeling Verification",
5
+ "type": "object",
6
+ "additionalProperties": false,
7
+ "required": [
8
+ "id",
9
+ "recipeId",
10
+ "evidenceIds",
11
+ "verdict",
12
+ "independenceKey"
13
+ ],
14
+ "properties": {
15
+ "id": {
16
+ "type": "string",
17
+ "minLength": 1
18
+ },
19
+ "recipeId": {
20
+ "type": "string",
21
+ "minLength": 1
22
+ },
23
+ "evidenceIds": {
24
+ "type": "array",
25
+ "minItems": 1,
26
+ "items": {
27
+ "type": "string",
28
+ "minLength": 1
29
+ }
30
+ },
31
+ "verdict": {
32
+ "enum": [
33
+ "PASS",
34
+ "FAIL",
35
+ "INCONCLUSIVE",
36
+ "NOT_RUN"
37
+ ]
38
+ },
39
+ "independenceKey": {
40
+ "type": "string",
41
+ "minLength": 1
42
+ },
43
+ "derivedFrom": {
44
+ "oneOf": [
45
+ {
46
+ "type": "string",
47
+ "minLength": 1
48
+ },
49
+ {
50
+ "type": "array",
51
+ "minItems": 1,
52
+ "items": {
53
+ "type": "string",
54
+ "minLength": 1
55
+ }
56
+ }
57
+ ]
58
+ }
59
+ }
60
+ }