@eir-labs/coltrane 0.24.36 → 0.24.38

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 (36) hide show
  1. package/agents/session-analyst.json +28 -0
  2. package/agents/session-review-verifier.json +31 -0
  3. package/agents/session-reviewer.json +32 -0
  4. package/dist/src/chart.js +5 -3
  5. package/dist/src/chart.js.map +1 -1
  6. package/dist/src/claude_invoker.d.ts +26 -0
  7. package/dist/src/claude_invoker.js +57 -1
  8. package/dist/src/claude_invoker.js.map +1 -1
  9. package/dist/src/cli.d.ts +1 -1
  10. package/dist/src/mcp.js +7 -1
  11. package/dist/src/mcp.js.map +1 -1
  12. package/dist/src/releases.d.ts +46 -0
  13. package/dist/src/releases.js +51 -5
  14. package/dist/src/releases.js.map +1 -1
  15. package/dist/src/reuse.d.ts +1 -1
  16. package/dist/src/server.js +26 -0
  17. package/dist/src/server.js.map +1 -1
  18. package/dist/src/version.d.ts +1 -1
  19. package/dist/src/version.js +1 -1
  20. package/domain_types/session-analysis.json +59 -0
  21. package/domain_types/session-census.json +72 -0
  22. package/domain_types/session-review-verdict.json +48 -0
  23. package/domain_types/session-review.json +86 -0
  24. package/domain_types/session-target.json +26 -0
  25. package/package.json +1 -1
  26. package/releases.json +176 -0
  27. package/skills/gig-census/fixtures/basic.json +33 -0
  28. package/skills/gig-census/fixtures/ledger.jsonl +3 -0
  29. package/skills/gig-census/fixtures/outputs/00000000-0000-4000-8000-00000000cens.jsonl +4 -0
  30. package/skills/gig-census/meta.json +20 -0
  31. package/skills/gig-census/skill.mjs +114 -0
  32. package/skills/session-census/fixtures/basic.json +10 -0
  33. package/skills/session-census/fixtures/sample.jsonl +6 -0
  34. package/skills/session-census/meta.json +25 -0
  35. package/skills/session-census/skill.mjs +141 -0
  36. package/standards/session-review-v0.json +104 -0
@@ -1,5 +1,5 @@
1
1
  /** Engine semver. Keep in lockstep with package.json `version` (enforced by test). */
2
- export declare const COLTRANE_VERSION = "0.24.36";
2
+ export declare const COLTRANE_VERSION = "0.24.38";
3
3
  /**
4
4
  * The commit this engine checkout is sitting on, or null when it can't be determined.
5
5
  *
@@ -17,7 +17,7 @@ import { existsSync, readFileSync, statSync } from "node:fs";
17
17
  import { dirname, join, resolve } from "node:path";
18
18
  import { fileURLToPath } from "node:url";
19
19
  /** Engine semver. Keep in lockstep with package.json `version` (enforced by test). */
20
- export const COLTRANE_VERSION = "0.24.36";
20
+ export const COLTRANE_VERSION = "0.24.38";
21
21
  /**
22
22
  * The commit this engine checkout is sitting on, or null when it can't be determined.
23
23
  *
@@ -0,0 +1,59 @@
1
+ {
2
+ "slug": "session-analysis",
3
+ "version": 1,
4
+ "extends": "Interpretation",
5
+ "domain": "session-review",
6
+ "status": "active",
7
+ "schema": {
8
+ "type": "object",
9
+ "properties": {
10
+ "where_the_cost_went": {
11
+ "type": "array",
12
+ "description": "each finding {finding, evidence, value} — which token class, which tool, which phase carried the bill",
13
+ "items": {
14
+ "type": "object"
15
+ }
16
+ },
17
+ "where_the_time_went": {
18
+ "type": "array",
19
+ "items": {
20
+ "type": "object"
21
+ }
22
+ },
23
+ "rework": {
24
+ "type": "array",
25
+ "description": "work that had to be done twice, with the census evidence that shows it (errors, denials, repeated operator corrections)",
26
+ "items": {
27
+ "type": "object"
28
+ }
29
+ },
30
+ "said_vs_done": {
31
+ "type": "array",
32
+ "description": "where the operator's messages and the tool histogram disagree — what was asked for versus what the session spent itself on",
33
+ "items": {
34
+ "type": "object"
35
+ }
36
+ },
37
+ "turning_points": {
38
+ "type": "array",
39
+ "description": "the moments the session changed direction, each anchored to an operator message",
40
+ "items": {
41
+ "type": "object"
42
+ }
43
+ },
44
+ "caveats": {
45
+ "type": "array",
46
+ "description": "what the census cannot show, stated so the writer does not fill the gap",
47
+ "items": {
48
+ "type": "string"
49
+ }
50
+ }
51
+ }
52
+ },
53
+ "required_fields": [
54
+ "where_the_cost_went",
55
+ "rework",
56
+ "turning_points",
57
+ "caveats"
58
+ ]
59
+ }
@@ -0,0 +1,72 @@
1
+ {
2
+ "slug": "session-census",
3
+ "version": 1,
4
+ "extends": "Signal",
5
+ "domain": "session-review",
6
+ "status": "active",
7
+ "schema": {
8
+ "type": "object",
9
+ "properties": {
10
+ "transcript": {
11
+ "type": "string"
12
+ },
13
+ "bytes": {
14
+ "type": "number"
15
+ },
16
+ "records": {
17
+ "type": "number"
18
+ },
19
+ "span": {
20
+ "type": "object",
21
+ "description": "{first, last} timestamps of the transcript"
22
+ },
23
+ "turns": {
24
+ "type": "object",
25
+ "description": "assistant turns and the token classes they reported, plus the peak context"
26
+ },
27
+ "tools": {
28
+ "type": "array",
29
+ "description": "{name, calls}, most-called first",
30
+ "items": {
31
+ "type": "object"
32
+ }
33
+ },
34
+ "operator_messages": {
35
+ "type": "array",
36
+ "description": "the operator's own messages, identical ones collapsed to {text, count, first, last} — a repeated cron prompt is one decision said many times",
37
+ "items": {
38
+ "type": "object"
39
+ }
40
+ },
41
+ "interruptions": {
42
+ "type": "number"
43
+ },
44
+ "denials": {
45
+ "type": "array",
46
+ "items": {
47
+ "type": "object"
48
+ }
49
+ },
50
+ "errors": {
51
+ "type": "array",
52
+ "items": {
53
+ "type": "object"
54
+ }
55
+ },
56
+ "error": {
57
+ "type": "string",
58
+ "description": "set when the transcript could not be read; the census is then a refusal, not an empty count"
59
+ },
60
+ "source": {
61
+ "type": "string"
62
+ }
63
+ }
64
+ },
65
+ "required_fields": [
66
+ "transcript",
67
+ "records",
68
+ "turns",
69
+ "tools",
70
+ "operator_messages"
71
+ ]
72
+ }
@@ -0,0 +1,48 @@
1
+ {
2
+ "slug": "session-review-verdict",
3
+ "version": 1,
4
+ "extends": "Verdict",
5
+ "domain": "session-review",
6
+ "status": "active",
7
+ "schema": {
8
+ "type": "object",
9
+ "properties": {
10
+ "pass": {
11
+ "type": "boolean"
12
+ },
13
+ "unsupported_claims": {
14
+ "type": "array",
15
+ "description": "claims whose evidence path is absent from the census, or whose value disagrees with it",
16
+ "items": {
17
+ "type": "object"
18
+ }
19
+ },
20
+ "misquoted_decisions": {
21
+ "type": "array",
22
+ "description": "decisions whose quote does not appear verbatim in the census's operator messages",
23
+ "items": {
24
+ "type": "object"
25
+ }
26
+ },
27
+ "omissions": {
28
+ "type": "array",
29
+ "description": "what the census carries that the review does not mention and should",
30
+ "items": {
31
+ "type": "string"
32
+ }
33
+ },
34
+ "checks": {
35
+ "type": "array",
36
+ "items": {
37
+ "type": "object"
38
+ }
39
+ }
40
+ }
41
+ },
42
+ "required_fields": [
43
+ "pass",
44
+ "checks",
45
+ "unsupported_claims",
46
+ "misquoted_decisions"
47
+ ]
48
+ }
@@ -0,0 +1,86 @@
1
+ {
2
+ "slug": "session-review",
3
+ "version": 1,
4
+ "extends": "Artifact",
5
+ "domain": "session-review",
6
+ "status": "active",
7
+ "schema": {
8
+ "type": "object",
9
+ "properties": {
10
+ "title": {
11
+ "type": "string"
12
+ },
13
+ "span": {
14
+ "type": "string",
15
+ "description": "the session's start and end, from the census"
16
+ },
17
+ "what_happened": {
18
+ "type": "string",
19
+ "description": "the arc of the session in plain prose: what was asked, what was built, what was decided"
20
+ },
21
+ "what_it_cost": {
22
+ "type": "string",
23
+ "description": "the measured shape of the spend and the context, from the census and the ledger rows carried in"
24
+ },
25
+ "what_went_wrong": {
26
+ "type": "string",
27
+ "description": "defects, dead ends, wasted work and their causes — named, not softened"
28
+ },
29
+ "decisions": {
30
+ "type": "array",
31
+ "description": "the operator's decisions, each quoted from their own message in the census",
32
+ "items": {
33
+ "type": "object",
34
+ "properties": {
35
+ "decision": {
36
+ "type": "string"
37
+ },
38
+ "quote": {
39
+ "type": "string"
40
+ }
41
+ },
42
+ "required": [
43
+ "decision",
44
+ "quote"
45
+ ]
46
+ }
47
+ },
48
+ "open": {
49
+ "type": "array",
50
+ "description": "what the session left open",
51
+ "items": {
52
+ "type": "string"
53
+ }
54
+ },
55
+ "claims": {
56
+ "type": "array",
57
+ "description": "every factual claim the prose makes, paired with the census path or ledger field that supports it",
58
+ "items": {
59
+ "type": "object",
60
+ "properties": {
61
+ "text": {
62
+ "type": "string"
63
+ },
64
+ "evidence": {
65
+ "type": "string"
66
+ },
67
+ "value": {
68
+ "type": "string"
69
+ }
70
+ },
71
+ "required": [
72
+ "text",
73
+ "evidence"
74
+ ]
75
+ }
76
+ }
77
+ }
78
+ },
79
+ "required_fields": [
80
+ "title",
81
+ "what_happened",
82
+ "what_it_cost",
83
+ "what_went_wrong",
84
+ "claims"
85
+ ]
86
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "slug": "session-target",
3
+ "version": 1,
4
+ "extends": "Signal",
5
+ "domain": "session-review",
6
+ "status": "active",
7
+ "schema": {
8
+ "type": "object",
9
+ "properties": {
10
+ "transcript": {
11
+ "type": "string",
12
+ "description": "absolute path to one Claude Code session transcript (.jsonl)"
13
+ },
14
+ "label": {
15
+ "type": "string",
16
+ "description": "what this session was, in the operator's words — carried, never inferred"
17
+ },
18
+ "source": {
19
+ "type": "string"
20
+ }
21
+ }
22
+ },
23
+ "required_fields": [
24
+ "transcript"
25
+ ]
26
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eir-labs/coltrane",
3
- "version": "0.24.36",
3
+ "version": "0.24.38",
4
4
  "description": "A methodology engine \u2014 a typed substrate for defining agents, composing multi-phase standards, dispatching gigs, and sealing every output to a content-addressed ledger. Ships as an MCP server.",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",