@reviewsensei/cli-linux-x64-gnu 0.6.18 → 0.6.19

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.
package/README.md CHANGED
@@ -8,7 +8,7 @@ Install the public launcher, which selects the matching native package:
8
8
 
9
9
  <!-- release-installation:package-npm-1:start -->
10
10
  ```console
11
- npm install --save-dev @reviewsensei/cli@0.6.18
11
+ npm install --save-dev @reviewsensei/cli@0.6.19
12
12
  npx review-sensei --help
13
13
  ```
14
14
  <!-- release-installation:package-npm-1:end -->
Binary file
@@ -0,0 +1,167 @@
1
+ {
2
+ "type": "object",
3
+ "additionalProperties": false,
4
+ "required": [
5
+ "cache_key",
6
+ "policy_digest",
7
+ "complete",
8
+ "coverage_complete",
9
+ "generation",
10
+ "findings",
11
+ "reviewed_paths",
12
+ "related_paths"
13
+ ],
14
+ "properties": {
15
+ "cache_key": {
16
+ "type": "object",
17
+ "additionalProperties": false,
18
+ "required": [
19
+ "repository",
20
+ "pull_request",
21
+ "base_sha",
22
+ "head_sha",
23
+ "engine",
24
+ "model",
25
+ "profile",
26
+ "stage_digest",
27
+ "context_digest",
28
+ "learning_digest"
29
+ ],
30
+ "properties": {
31
+ "repository": {
32
+ "type": "string",
33
+ "maxLength": 256
34
+ },
35
+ "pull_request": {
36
+ "type": "integer",
37
+ "minimum": 1
38
+ },
39
+ "base_sha": {
40
+ "type": "string",
41
+ "pattern": "^[a-f0-9]{40}$"
42
+ },
43
+ "head_sha": {
44
+ "type": "string",
45
+ "pattern": "^[a-f0-9]{40}$"
46
+ },
47
+ "engine": {
48
+ "type": "string",
49
+ "maxLength": 256
50
+ },
51
+ "model": {
52
+ "type": "string",
53
+ "maxLength": 256
54
+ },
55
+ "profile": {
56
+ "type": "string",
57
+ "maxLength": 256
58
+ },
59
+ "stage_digest": {
60
+ "type": "string",
61
+ "pattern": "^[a-f0-9]{64}$"
62
+ },
63
+ "context_digest": {
64
+ "type": "string",
65
+ "pattern": "^[a-f0-9]{64}$"
66
+ },
67
+ "learning_digest": {
68
+ "type": "string",
69
+ "pattern": "^[a-f0-9]{64}$"
70
+ }
71
+ }
72
+ },
73
+ "policy_digest": {
74
+ "type": "string",
75
+ "pattern": "^[a-f0-9]{64}$"
76
+ },
77
+ "complete": {
78
+ "type": "boolean"
79
+ },
80
+ "coverage_complete": {
81
+ "type": "boolean"
82
+ },
83
+ "generation": {
84
+ "type": "integer",
85
+ "minimum": 0
86
+ },
87
+ "findings": {
88
+ "type": "array",
89
+ "maxItems": 512,
90
+ "items": {
91
+ "type": "object",
92
+ "additionalProperties": false,
93
+ "required": [
94
+ "fingerprint",
95
+ "resolution_criterion",
96
+ "concern",
97
+ "path",
98
+ "symbol",
99
+ "defect_kind",
100
+ "generation",
101
+ "blocking"
102
+ ],
103
+ "properties": {
104
+ "fingerprint": {
105
+ "type": "string",
106
+ "pattern": "^[a-f0-9]{64}$"
107
+ },
108
+ "resolution_criterion": {
109
+ "type": "string",
110
+ "pattern": "^[a-f0-9]{64}$"
111
+ },
112
+ "concern": {
113
+ "type": [
114
+ "string",
115
+ "null"
116
+ ],
117
+ "pattern": "^[a-f0-9]{64}$"
118
+ },
119
+ "path": {
120
+ "type": [
121
+ "string",
122
+ "null"
123
+ ],
124
+ "maxLength": 4096
125
+ },
126
+ "symbol": {
127
+ "type": [
128
+ "string",
129
+ "null"
130
+ ],
131
+ "maxLength": 256
132
+ },
133
+ "defect_kind": {
134
+ "type": "string",
135
+ "maxLength": 256
136
+ },
137
+ "generation": {
138
+ "type": "integer",
139
+ "minimum": 0
140
+ },
141
+ "blocking": {
142
+ "type": "boolean"
143
+ }
144
+ }
145
+ }
146
+ },
147
+ "reviewed_paths": {
148
+ "type": "array",
149
+ "maxItems": 512,
150
+ "items": {
151
+ "type": "string",
152
+ "maxLength": 4096
153
+ }
154
+ },
155
+ "related_paths": {
156
+ "type": "array",
157
+ "maxItems": 64,
158
+ "items": {
159
+ "type": "string",
160
+ "maxLength": 4096
161
+ }
162
+ }
163
+ },
164
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
165
+ "$id": "https://reviewsensei.dev/schemas/v1/baseline-evidence.schema.json",
166
+ "title": "Complete bounded baseline evidence"
167
+ }
@@ -28,13 +28,14 @@
28
28
  "reasons": {
29
29
  "type": "array",
30
30
  "minItems": 1,
31
- "maxItems": 3,
31
+ "maxItems": 4,
32
32
  "uniqueItems": true,
33
33
  "items": {
34
34
  "enum": [
35
35
  "finding-count",
36
36
  "encoded-bytes",
37
- "field-width"
37
+ "field-width",
38
+ "decoded-bytes"
38
39
  ]
39
40
  }
40
41
  },
@@ -71,19 +72,63 @@
71
72
  "minimum": 0
72
73
  },
73
74
  "finding_limit": {
74
- "const": 2
75
+ "enum": [
76
+ 2,
77
+ 512
78
+ ]
75
79
  },
76
80
  "maximum_bytes": {
77
81
  "const": 11264
78
82
  },
79
83
  "identity_or_path_character_limit": {
80
- "const": 256
84
+ "enum": [
85
+ 256,
86
+ 4096
87
+ ]
81
88
  },
82
89
  "symbol_character_limit": {
83
90
  "const": 256
84
91
  },
85
92
  "defect_kind_character_limit": {
86
- "const": 128
93
+ "enum": [
94
+ 128,
95
+ 256
96
+ ]
97
+ },
98
+ "decoded_bytes": {
99
+ "type": "integer",
100
+ "minimum": 0
101
+ },
102
+ "maximum_decoded_bytes": {
103
+ "const": 2097152
104
+ }
105
+ },
106
+ "oneOf": [
107
+ {
108
+ "properties": {
109
+ "finding_limit": {
110
+ "const": 2
111
+ },
112
+ "identity_or_path_character_limit": {
113
+ "const": 256
114
+ },
115
+ "defect_kind_character_limit": {
116
+ "const": 128
117
+ }
118
+ }
119
+ },
120
+ {
121
+ "properties": {
122
+ "finding_limit": {
123
+ "const": 512
124
+ },
125
+ "identity_or_path_character_limit": {
126
+ "const": 4096
127
+ },
128
+ "defect_kind_character_limit": {
129
+ "const": 256
130
+ }
131
+ }
87
132
  }
88
- }
133
+ ]
89
134
  }
@@ -43,6 +43,7 @@
43
43
  }
44
44
  },
45
45
  "provider": {"type": "string", "minLength": 1},
46
+ "persistence_status": {"const": "capacity-exceeded"},
46
47
  "review_status": {
47
48
  "type": "string",
48
49
  "enum": ["complete", "partial", "incomplete", "summary-only"]
@@ -155,5 +156,6 @@
155
156
  }
156
157
  }
157
158
  }
158
- }
159
+ },
160
+ "allOf": [{"if": {"required": ["persistence_status"]}, "then": {"properties": {"review_status": {"const": "partial"}}, "required": ["review_status"]}}]
159
161
  }
@@ -149,53 +149,86 @@
149
149
  "properties": {
150
150
  "state": {"enum": ["completed", "invalidated", "recovery-required"]},
151
151
  "baseline": {
152
- "type": "object",
153
- "additionalProperties": false,
154
- "required": ["cache_key", "policy_digest", "complete", "coverage_complete", "generation", "findings", "reviewed_paths", "related_paths"],
155
- "properties": {
156
- "cache_key": {
152
+ "oneOf": [
153
+ {
157
154
  "type": "object",
158
155
  "additionalProperties": false,
159
- "required": ["repository", "pull_request", "base_sha", "head_sha", "engine", "model", "profile", "stage_digest", "context_digest", "learning_digest"],
156
+ "required": ["cache_key", "policy_digest", "complete", "coverage_complete", "generation", "findings", "reviewed_paths", "related_paths"],
160
157
  "properties": {
161
- "repository": {"type": "string", "maxLength": 256},
162
- "pull_request": {"type": "integer", "minimum": 1},
163
- "base_sha": {"type": "string", "pattern": "^[a-f0-9]{40}$"},
164
- "head_sha": {"type": "string", "pattern": "^[a-f0-9]{40}$"},
165
- "engine": {"type": "string", "maxLength": 256},
166
- "model": {"type": "string", "maxLength": 256},
167
- "profile": {"type": "string", "maxLength": 256},
168
- "stage_digest": {"type": "string", "pattern": "^[a-f0-9]{64}$"},
169
- "context_digest": {"type": "string", "pattern": "^[a-f0-9]{64}$"},
170
- "learning_digest": {"type": "string", "pattern": "^[a-f0-9]{64}$"}
158
+ "cache_key": {
159
+ "type": "object",
160
+ "additionalProperties": false,
161
+ "required": ["repository", "pull_request", "base_sha", "head_sha", "engine", "model", "profile", "stage_digest", "context_digest", "learning_digest"],
162
+ "properties": {
163
+ "repository": {"type": "string", "maxLength": 256},
164
+ "pull_request": {"type": "integer", "minimum": 1},
165
+ "base_sha": {"type": "string", "pattern": "^[a-f0-9]{40}$"},
166
+ "head_sha": {"type": "string", "pattern": "^[a-f0-9]{40}$"},
167
+ "engine": {"type": "string", "maxLength": 256},
168
+ "model": {"type": "string", "maxLength": 256},
169
+ "profile": {"type": "string", "maxLength": 256},
170
+ "stage_digest": {"type": "string", "pattern": "^[a-f0-9]{64}$"},
171
+ "context_digest": {"type": "string", "pattern": "^[a-f0-9]{64}$"},
172
+ "learning_digest": {"type": "string", "pattern": "^[a-f0-9]{64}$"}
173
+ }
174
+ },
175
+ "policy_digest": {"type": "string", "pattern": "^[a-f0-9]{64}$"},
176
+ "complete": {"type": "boolean"},
177
+ "coverage_complete": {"type": "boolean"},
178
+ "generation": {"type": "integer", "minimum": 0},
179
+ "findings": {
180
+ "type": "array",
181
+ "maxItems": 3,
182
+ "items": {
183
+ "type": "object",
184
+ "additionalProperties": false,
185
+ "required": ["fingerprint", "resolution_criterion", "concern", "path", "symbol", "defect_kind", "generation", "blocking"],
186
+ "properties": {
187
+ "fingerprint": {"type": "string", "pattern": "^[a-f0-9]{64}$"},
188
+ "resolution_criterion": {"type": "string", "pattern": "^[a-f0-9]{64}$"},
189
+ "concern": {"type": ["string", "null"], "pattern": "^[a-f0-9]{64}$"},
190
+ "path": {"type": ["string", "null"], "maxLength": 256},
191
+ "symbol": {"type": ["string", "null"], "maxLength": 256},
192
+ "defect_kind": {"type": "string", "maxLength": 128},
193
+ "generation": {"type": "integer", "minimum": 0},
194
+ "blocking": {"type": "boolean"}
195
+ }
196
+ }
197
+ },
198
+ "reviewed_paths": {"type": "array", "maxItems": 512, "items": {"type": "string", "maxLength": 256}},
199
+ "related_paths": {"type": "array", "maxItems": 64, "items": {"type": "string", "maxLength": 256}}
171
200
  }
172
201
  },
173
- "policy_digest": {"type": "string", "pattern": "^[a-f0-9]{64}$"},
174
- "complete": {"type": "boolean"},
175
- "coverage_complete": {"type": "boolean"},
176
- "generation": {"type": "integer", "minimum": 0},
177
- "findings": {
178
- "type": "array",
179
- "maxItems": 3,
180
- "items": {
181
- "type": "object",
182
- "additionalProperties": false,
183
- "required": ["fingerprint", "resolution_criterion", "concern", "path", "symbol", "defect_kind", "generation", "blocking"],
184
- "properties": {
185
- "fingerprint": {"type": "string", "pattern": "^[a-f0-9]{64}$"},
186
- "resolution_criterion": {"type": "string", "pattern": "^[a-f0-9]{64}$"},
187
- "concern": {"type": ["string", "null"], "pattern": "^[a-f0-9]{64}$"},
188
- "path": {"type": ["string", "null"], "maxLength": 256},
189
- "symbol": {"type": ["string", "null"], "maxLength": 256},
190
- "defect_kind": {"type": "string", "maxLength": 128},
191
- "generation": {"type": "integer", "minimum": 0},
192
- "blocking": {"type": "boolean"}
202
+ {
203
+ "type": "object",
204
+ "additionalProperties": false,
205
+ "required": [
206
+ "encoding",
207
+ "decoded_bytes",
208
+ "sha256",
209
+ "data"
210
+ ],
211
+ "properties": {
212
+ "encoding": {
213
+ "const": "zlib-json-v1"
214
+ },
215
+ "decoded_bytes": {
216
+ "type": "integer",
217
+ "minimum": 1,
218
+ "maximum": 2097152
219
+ },
220
+ "sha256": {
221
+ "type": "string",
222
+ "pattern": "^[a-f0-9]{64}$"
223
+ },
224
+ "data": {
225
+ "type": "string",
226
+ "maxLength": 11264,
227
+ "pattern": "^[A-Za-z0-9+/]*={0,2}$"
193
228
  }
194
229
  }
195
- },
196
- "reviewed_paths": {"type": "array", "maxItems": 512, "items": {"type": "string", "maxLength": 256}},
197
- "related_paths": {"type": "array", "maxItems": 64, "items": {"type": "string", "maxLength": 256}}
198
- }
230
+ }
231
+ ]
199
232
  },
200
233
  "progress": {
201
234
  "type": "array",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: review-sensei
3
- Version: 0.6.18
3
+ Version: 0.6.19
4
4
  Summary: Provider-neutral AI code review engine with an Ollama adapter.
5
5
  Author: Mohamad Alsabbagh
6
6
  License-Expression: MIT
@@ -46,6 +46,9 @@ providers later.
46
46
  > movement remain operator-only. It
47
47
  > defaults to a local Ollama endpoint and does not require a hosted backend.
48
48
 
49
+ For source-linked sequence diagrams, limits, lens behavior, and valid
50
+ configuration examples, see [Review pipelines and customization](docs/review-pipelines.md).
51
+
49
52
  ## What it does
50
53
 
51
54
  - Keeps review business logic independent of GitHub and model vendors.
@@ -137,8 +140,8 @@ provider-neutral `@reviewsensei/cli` launcher:
137
140
 
138
141
  <!-- release-installation:package-npm-1:start -->
139
142
  ```bash
140
- npx --yes @reviewsensei/cli@0.6.18 --version
141
- npx --yes @reviewsensei/cli@0.6.18 --help
143
+ npx --yes @reviewsensei/cli@0.6.19 --version
144
+ npx --yes @reviewsensei/cli@0.6.19 --help
142
145
  ```
143
146
  <!-- release-installation:package-npm-1:end -->
144
147
 
@@ -20,11 +20,14 @@ docs/mention-handle-rollout.md
20
20
  docs/openrouter-qualification.md
21
21
  docs/ownership-and-licensing.md
22
22
  docs/patch-suggestions.md
23
+ docs/proposed-evidence-persistence.md
23
24
  docs/protection-policy.md
24
25
  docs/public-contracts.md
25
26
  docs/release-docs-bot.md
26
27
  docs/release-signing.md
27
28
  docs/releasing.md
29
+ docs/review-pipelines.md
30
+ docs/review-runtime-rollout.md
28
31
  docs/shared-review-work.md
29
32
  docs/adr/0001-provider-neutral-review-engine.md
30
33
  docs/adr/0002-repository-local-review-learnings.md
@@ -93,8 +96,10 @@ docs/adr/0065-complete-human-inventory-and-approval-retry.md
93
96
  docs/adr/0066-incremental-context-overflow-recovery.md
94
97
  docs/adr/0067-shared-review-work-mechanics.md
95
98
  docs/adr/0068-dedicated-release-key-and-publication-approval.md
99
+ docs/adr/0069-verified-draft-github-release.md
96
100
  docs/adr/0070-bounded-checkpoint-overflow.md
97
101
  docs/adr/0071-generated-release-notes.md
102
+ docs/adr/0072-lossless-inline-review-evidence.md
98
103
  docs/adr/README.md
99
104
  docs/architecture/index.md
100
105
  docs/process/adr-process.md
@@ -173,6 +178,7 @@ examples/stages/03-learning-proposals.json
173
178
  src/review_sensei/__init__.py
174
179
  src/review_sensei/__main__.py
175
180
  src/review_sensei/baseline.py
181
+ src/review_sensei/bounded_evidence.py
176
182
  src/review_sensei/broker_diagnostics.py
177
183
  src/review_sensei/budgets.py
178
184
  src/review_sensei/cli.py
@@ -260,6 +266,7 @@ src/review_sensei/providers/profiles.py
260
266
  src/review_sensei/providers/registry.py
261
267
  src/review_sensei/providers/routing.py
262
268
  src/review_sensei/providers/transport.py
269
+ src/review_sensei/schemas/baseline-evidence.schema.json
263
270
  src/review_sensei/schemas/blocker-admission.schema.json
264
271
  src/review_sensei/schemas/broker-diagnostics.json
265
272
  src/review_sensei/schemas/canary-binding.schema.json
package/bin/review-sensei CHANGED
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reviewsensei/cli-linux-x64-gnu",
3
- "version": "0.6.18",
3
+ "version": "0.6.19",
4
4
  "description": "ReviewSensei AI code review engine for Linux x64 with glibc 2.36+; native payload used by @reviewsensei/cli",
5
5
  "license": "MIT",
6
6
  "repository": {