@caddis/cli 0.4.74 → 0.4.76

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.
@@ -0,0 +1,214 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "title": "Hub guide output",
4
+ "type": "object",
5
+ "required": [
6
+ "schema",
7
+ "version",
8
+ "generated",
9
+ "commands",
10
+ "agents",
11
+ "skills",
12
+ "hooks",
13
+ "coverage",
14
+ "counts"
15
+ ],
16
+ "properties": {
17
+ "schema": {
18
+ "type": "integer"
19
+ },
20
+ "version": {
21
+ "type": "string"
22
+ },
23
+ "generated": {
24
+ "type": "string"
25
+ },
26
+ "commands": {
27
+ "type": "array",
28
+ "items": {
29
+ "type": "object",
30
+ "required": [
31
+ "name",
32
+ "description",
33
+ "hint",
34
+ "steps",
35
+ "scripts",
36
+ "noArgs",
37
+ "stage",
38
+ "daily"
39
+ ],
40
+ "properties": {
41
+ "name": {
42
+ "type": "string"
43
+ },
44
+ "description": {
45
+ "type": "string"
46
+ },
47
+ "hint": {
48
+ "type": "string"
49
+ },
50
+ "steps": {
51
+ "type": "array",
52
+ "items": {
53
+ "type": "array",
54
+ "items": {
55
+ "type": "string"
56
+ }
57
+ }
58
+ },
59
+ "scripts": {
60
+ "type": "array",
61
+ "items": {
62
+ "type": "string"
63
+ }
64
+ },
65
+ "noArgs": {
66
+ "type": "boolean"
67
+ },
68
+ "stage": {
69
+ "type": "string"
70
+ },
71
+ "daily": {
72
+ "type": "boolean"
73
+ }
74
+ }
75
+ }
76
+ },
77
+ "agents": {
78
+ "type": "array",
79
+ "items": {
80
+ "type": "object",
81
+ "required": [
82
+ "name",
83
+ "description",
84
+ "tools",
85
+ "model",
86
+ "writes"
87
+ ],
88
+ "properties": {
89
+ "name": {
90
+ "type": "string"
91
+ },
92
+ "description": {
93
+ "type": "string"
94
+ },
95
+ "tools": {
96
+ "type": "array",
97
+ "items": {
98
+ "type": "string"
99
+ }
100
+ },
101
+ "model": {
102
+ "type": "string"
103
+ },
104
+ "writes": {
105
+ "type": "boolean"
106
+ }
107
+ }
108
+ }
109
+ },
110
+ "skills": {
111
+ "type": "array",
112
+ "items": {
113
+ "type": "object",
114
+ "required": [
115
+ "name",
116
+ "category",
117
+ "description",
118
+ "core"
119
+ ],
120
+ "properties": {
121
+ "name": {
122
+ "type": "string"
123
+ },
124
+ "category": {
125
+ "type": "string"
126
+ },
127
+ "description": {
128
+ "type": "string"
129
+ },
130
+ "core": {
131
+ "type": "boolean"
132
+ }
133
+ }
134
+ }
135
+ },
136
+ "hooks": {
137
+ "type": "array",
138
+ "items": {
139
+ "type": "object",
140
+ "required": [
141
+ "event",
142
+ "matcher",
143
+ "handler"
144
+ ],
145
+ "properties": {
146
+ "event": {
147
+ "type": "string"
148
+ },
149
+ "matcher": {
150
+ "type": "string"
151
+ },
152
+ "handler": {
153
+ "type": "string"
154
+ }
155
+ }
156
+ }
157
+ },
158
+ "coverage": {
159
+ "type": "object",
160
+ "required": [
161
+ "commands",
162
+ "skills",
163
+ "agents"
164
+ ],
165
+ "properties": {
166
+ "commands": {
167
+ "type": "array",
168
+ "items": {
169
+ "type": "string"
170
+ }
171
+ },
172
+ "skills": {
173
+ "type": "array",
174
+ "items": {
175
+ "type": "string"
176
+ }
177
+ },
178
+ "agents": {
179
+ "type": "array",
180
+ "items": {
181
+ "type": "string"
182
+ }
183
+ }
184
+ }
185
+ },
186
+ "counts": {
187
+ "type": "object",
188
+ "required": [
189
+ "commands",
190
+ "agents",
191
+ "skills",
192
+ "core",
193
+ "hooks"
194
+ ],
195
+ "properties": {
196
+ "commands": {
197
+ "type": "integer"
198
+ },
199
+ "agents": {
200
+ "type": "integer"
201
+ },
202
+ "skills": {
203
+ "type": "integer"
204
+ },
205
+ "core": {
206
+ "type": "integer"
207
+ },
208
+ "hooks": {
209
+ "type": "integer"
210
+ }
211
+ }
212
+ }
213
+ }
214
+ }
@@ -0,0 +1,91 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "title": "Hub plans output",
4
+ "type": "object",
5
+ "required": [
6
+ "schema",
7
+ "plans"
8
+ ],
9
+ "properties": {
10
+ "schema": {
11
+ "type": "integer"
12
+ },
13
+ "plans": {
14
+ "type": "array",
15
+ "items": {
16
+ "oneOf": [
17
+ {
18
+ "type": "object",
19
+ "required": [
20
+ "path",
21
+ "title",
22
+ "status",
23
+ "feature",
24
+ "tracker",
25
+ "open_rows"
26
+ ],
27
+ "properties": {
28
+ "path": {
29
+ "type": "string"
30
+ },
31
+ "title": {
32
+ "type": [
33
+ "string",
34
+ "null"
35
+ ]
36
+ },
37
+ "status": {
38
+ "type": [
39
+ "string",
40
+ "null"
41
+ ]
42
+ },
43
+ "feature": {
44
+ "type": [
45
+ "string",
46
+ "null"
47
+ ]
48
+ },
49
+ "tracker": {
50
+ "type": "array",
51
+ "items": {
52
+ "type": "object",
53
+ "required": [
54
+ "phase",
55
+ "status"
56
+ ],
57
+ "properties": {
58
+ "phase": {
59
+ "type": "string"
60
+ },
61
+ "status": {
62
+ "type": "string"
63
+ }
64
+ }
65
+ }
66
+ },
67
+ "open_rows": {
68
+ "type": "integer"
69
+ }
70
+ }
71
+ },
72
+ {
73
+ "type": "object",
74
+ "required": [
75
+ "path",
76
+ "error"
77
+ ],
78
+ "properties": {
79
+ "path": {
80
+ "type": "string"
81
+ },
82
+ "error": {
83
+ "type": "string"
84
+ }
85
+ }
86
+ }
87
+ ]
88
+ }
89
+ }
90
+ }
91
+ }
@@ -0,0 +1,79 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "title": "Hub relays output",
4
+ "type": "object",
5
+ "required": [
6
+ "schema",
7
+ "relays"
8
+ ],
9
+ "properties": {
10
+ "schema": {
11
+ "type": "integer"
12
+ },
13
+ "relays": {
14
+ "type": "array",
15
+ "items": {
16
+ "type": "object",
17
+ "required": [
18
+ "name",
19
+ "branch",
20
+ "plan",
21
+ "session_id",
22
+ "updated_at",
23
+ "age_min",
24
+ "status",
25
+ "status_arg",
26
+ "next_step"
27
+ ],
28
+ "properties": {
29
+ "name": {
30
+ "type": "string"
31
+ },
32
+ "branch": {
33
+ "type": [
34
+ "string",
35
+ "null"
36
+ ]
37
+ },
38
+ "plan": {
39
+ "type": [
40
+ "string",
41
+ "null"
42
+ ]
43
+ },
44
+ "session_id": {
45
+ "type": [
46
+ "string",
47
+ "null"
48
+ ]
49
+ },
50
+ "updated_at": {
51
+ "type": "string"
52
+ },
53
+ "age_min": {
54
+ "type": "integer"
55
+ },
56
+ "status": {
57
+ "type": "string",
58
+ "enum": [
59
+ "CONTINUE",
60
+ "OWNER-GATE",
61
+ "BLOCKED",
62
+ "FAILED",
63
+ "INVALID"
64
+ ]
65
+ },
66
+ "status_arg": {
67
+ "type": "string"
68
+ },
69
+ "next_step": {
70
+ "type": [
71
+ "string",
72
+ "null"
73
+ ]
74
+ }
75
+ }
76
+ }
77
+ }
78
+ }
79
+ }
@@ -0,0 +1,185 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "title": "Hub roadmaps output",
4
+ "type": "object",
5
+ "required": [
6
+ "schema",
7
+ "roadmaps"
8
+ ],
9
+ "properties": {
10
+ "schema": {
11
+ "type": "integer"
12
+ },
13
+ "roadmaps": {
14
+ "type": "array",
15
+ "items": {
16
+ "oneOf": [
17
+ {
18
+ "type": "object",
19
+ "required": [
20
+ "roadmap",
21
+ "branch",
22
+ "runner_host",
23
+ "done",
24
+ "total",
25
+ "next",
26
+ "milestones",
27
+ "line"
28
+ ],
29
+ "properties": {
30
+ "roadmap": {
31
+ "type": "string"
32
+ },
33
+ "branch": {
34
+ "type": [
35
+ "string",
36
+ "null"
37
+ ]
38
+ },
39
+ "runner_host": {
40
+ "type": [
41
+ "string",
42
+ "null"
43
+ ]
44
+ },
45
+ "done": {
46
+ "type": "integer"
47
+ },
48
+ "total": {
49
+ "type": "integer"
50
+ },
51
+ "next": {
52
+ "type": [
53
+ "object",
54
+ "null"
55
+ ],
56
+ "required": [
57
+ "milestone",
58
+ "plan",
59
+ "phase"
60
+ ],
61
+ "properties": {
62
+ "milestone": {
63
+ "type": "string"
64
+ },
65
+ "plan": {
66
+ "type": "string"
67
+ },
68
+ "phase": {
69
+ "type": "integer"
70
+ }
71
+ }
72
+ },
73
+ "milestones": {
74
+ "type": "array",
75
+ "items": {
76
+ "type": "object",
77
+ "required": [
78
+ "id",
79
+ "status",
80
+ "owner",
81
+ "target",
82
+ "depends",
83
+ "phases",
84
+ "blockers"
85
+ ],
86
+ "properties": {
87
+ "id": {
88
+ "type": "string"
89
+ },
90
+ "status": {
91
+ "type": "string",
92
+ "enum": [
93
+ "todo",
94
+ "in-progress",
95
+ "code-done/data-pending",
96
+ "done",
97
+ "not-needed"
98
+ ]
99
+ },
100
+ "owner": {
101
+ "type": "string"
102
+ },
103
+ "target": {
104
+ "type": [
105
+ "string",
106
+ "null"
107
+ ]
108
+ },
109
+ "depends": {
110
+ "type": "array",
111
+ "items": {
112
+ "type": "string"
113
+ }
114
+ },
115
+ "phases": {
116
+ "type": "array",
117
+ "items": {
118
+ "type": "object",
119
+ "required": [
120
+ "ref",
121
+ "state"
122
+ ],
123
+ "properties": {
124
+ "ref": {
125
+ "type": "string"
126
+ },
127
+ "state": {
128
+ "type": "string"
129
+ }
130
+ }
131
+ }
132
+ },
133
+ "blockers": {
134
+ "type": "array",
135
+ "items": {
136
+ "type": "object",
137
+ "required": [
138
+ "type",
139
+ "reason",
140
+ "check"
141
+ ],
142
+ "properties": {
143
+ "type": {
144
+ "type": "string"
145
+ },
146
+ "reason": {
147
+ "type": "string"
148
+ },
149
+ "check": {
150
+ "type": [
151
+ "string",
152
+ "null"
153
+ ]
154
+ }
155
+ }
156
+ }
157
+ }
158
+ }
159
+ }
160
+ },
161
+ "line": {
162
+ "type": "string"
163
+ }
164
+ }
165
+ },
166
+ {
167
+ "type": "object",
168
+ "required": [
169
+ "roadmap",
170
+ "error"
171
+ ],
172
+ "properties": {
173
+ "roadmap": {
174
+ "type": "string"
175
+ },
176
+ "error": {
177
+ "type": "string"
178
+ }
179
+ }
180
+ }
181
+ ]
182
+ }
183
+ }
184
+ }
185
+ }
@@ -0,0 +1,39 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "title": "Hub spend output",
4
+ "type": "object",
5
+ "required": [
6
+ "schema",
7
+ "configured",
8
+ "cap_eur",
9
+ "committed_eur",
10
+ "reserve_eur",
11
+ "window_h"
12
+ ],
13
+ "properties": {
14
+ "schema": {
15
+ "type": "integer"
16
+ },
17
+ "configured": {
18
+ "type": "boolean"
19
+ },
20
+ "cap_eur": {
21
+ "type": [
22
+ "number",
23
+ "null"
24
+ ]
25
+ },
26
+ "committed_eur": {
27
+ "type": "number"
28
+ },
29
+ "reserve_eur": {
30
+ "type": [
31
+ "number",
32
+ "null"
33
+ ]
34
+ },
35
+ "window_h": {
36
+ "type": "integer"
37
+ }
38
+ }
39
+ }
@@ -7,8 +7,8 @@ How to fill it:
7
7
 
8
8
  - Replace every `"<fill: ...>"` string with the real value. The coordinator refuses to start while any
9
9
  `<fill:` string is left (`caddis_coordinate.py config show` lists them).
10
- - Keep every key. A missing key also stops the coordinator. Only `relay` is optional: delete its line if the
11
- coordinator has no relay.
10
+ - Keep every key. A missing key also stops the coordinator. Only `relay` and `start_mode` are optional: delete
11
+ the `relay` line if the coordinator has no relay. Without `start_mode`, every start is in interim mode.
12
12
  - Put no host names and no secrets here. The production base URL comes from the environment variable that
13
13
  `deploy.base_url_env` names.
14
14
 
@@ -44,6 +44,7 @@ What the keys mean:
44
44
  | `quiet.coordination` | Quiet hours for merges (`none`: no quiet hours). |
45
45
  | `quiet.timing_checks` | When timing checks may run. |
46
46
  | `relay` | The workstream name of the coordinator's relay (optional; the coordinator reads `.caddis/relay/<relay>.md` and its tasks file at start). |
47
+ | `start_mode` | The merge mode each start begins in (optional): `interim` (the PR's session merges after `go`) or `target` (the coordinator runs `gh pr merge`). `target` here is the owner's standing consent, so set it only in a PR the owner approves. Missing means `interim`. |
47
48
 
48
49
  ```json
49
50
  {
@@ -89,6 +90,7 @@ What the keys mean:
89
90
  "coordination": "none",
90
91
  "timing_checks": "<fill: when timing checks may run, for example quiet window only>"
91
92
  },
92
- "relay": "<fill: workstream name of the coordinator's relay, e.g. coordinator>"
93
+ "relay": "<fill: workstream name of the coordinator's relay, e.g. coordinator>",
94
+ "start_mode": "interim"
93
95
  }
94
96
  ```