@reviewsensei/cli-win32-x64 0.6.15 → 0.6.17

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
@@ -6,10 +6,12 @@ standalone Python engine bundled for Windows x64.
6
6
 
7
7
  Install the public launcher, which selects the matching native package:
8
8
 
9
+ <!-- release-installation:package-npm-1:start -->
9
10
  ```console
10
- npm install --save-dev @reviewsensei/cli@0.6.15
11
+ npm install --save-dev @reviewsensei/cli@0.6.17
11
12
  npx review-sensei --help
12
13
  ```
14
+ <!-- release-installation:package-npm-1:end -->
13
15
 
14
16
  Use [`@reviewsensei/cli`](https://www.npmjs.com/package/@reviewsensei/cli) for
15
17
  installation, provider/model configuration, authentication, and review examples.
Binary file
@@ -1,4 +1,4 @@
1
- ../../Scripts/jsonschema.exe,sha256=v9u9Hyi233q5q7OIHqsByLwuPgP_W802j5xLbFGJzZY,108352
1
+ ../../Scripts/jsonschema.exe,sha256=U9EfI_FIl1XC3uwy5VfmP44OHp4Yn_0TrG9KiX_KqmU,108352
2
2
  jsonschema-4.26.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
3
3
  jsonschema-4.26.0.dist-info/METADATA,sha256=BbGJhmypipbaOTS_a4NofO0_-FMlJzt34WtwX22LJtI,7592
4
4
  jsonschema-4.26.0.dist-info/RECORD,,
@@ -41,6 +41,16 @@
41
41
  {"type": "string", "pattern": "^[a-f0-9]{8,64}$"}
42
42
  ]
43
43
  },
44
+ "reservation_owner": {
45
+ "description": "Owning run from the authenticated OIDC broker; absent in legacy reservations.",
46
+ "type": "object",
47
+ "additionalProperties": false,
48
+ "required": ["run_id", "head_sha"],
49
+ "properties": {
50
+ "run_id": {"type": "string", "pattern": "^[1-9][0-9]{0,18}$"},
51
+ "head_sha": {"type": "string", "pattern": "^[a-f0-9]{40}$"}
52
+ }
53
+ },
44
54
  "reserved_slot": {
45
55
  "type": ["string", "null"],
46
56
  "enum": ["initial", "verification", "failed-attempt", null]
@@ -133,7 +143,7 @@
133
143
  },
134
144
  "convergence_history": {
135
145
  "type": "object",
136
- "description": "Bounded convergence envelope. The field caps below bound each member; the validation seam additionally rejects an envelope whose canonical UTF-8 encoding exceeds MAX_CONVERGENCE_HISTORY_BYTES (4096), which JSON Schema cannot express.",
146
+ "description": "Bounded convergence envelope. The field caps below bound each member; the validation seam additionally rejects canonical UTF-8 JSON above 12288 history bytes or 20480 record bytes, which JSON Schema cannot express. Writers allocate less history when the surrounding lifecycle state requires it. Older readers reject expanded records; upgrade all shared-ledger readers before enabling new writes.",
137
147
  "additionalProperties": false,
138
148
  "required": ["state", "progress", "provenance"],
139
149
  "properties": {
@@ -184,7 +194,7 @@
184
194
  }
185
195
  },
186
196
  "reviewed_paths": {"type": "array", "maxItems": 512, "items": {"type": "string", "maxLength": 256}},
187
- "related_paths": {"type": "array", "maxItems": 32, "items": {"type": "string", "maxLength": 256}}
197
+ "related_paths": {"type": "array", "maxItems": 64, "items": {"type": "string", "maxLength": 256}}
188
198
  }
189
199
  },
190
200
  "progress": {
@@ -233,6 +243,15 @@
233
243
  }
234
244
  },
235
245
  "allOf": [
246
+ {
247
+ "if": {"required": ["reservation_owner"]},
248
+ "then": {
249
+ "properties": {
250
+ "reservation_id": {"type": "string"},
251
+ "reserved_slot": {"type": "string"}
252
+ }
253
+ }
254
+ },
236
255
  {
237
256
  "if": {
238
257
  "required": ["transaction"],
@@ -52,6 +52,7 @@
52
52
  "incomplete-baseline",
53
53
  "missing-baseline",
54
54
  "coverage-incomplete",
55
+ "related-context-overflow",
55
56
  "ledger-untrusted",
56
57
  null
57
58
  ]
@@ -63,7 +64,7 @@
63
64
  },
64
65
  "related_paths": {
65
66
  "type": "array",
66
- "maxItems": 32,
67
+ "maxItems": 64,
67
68
  "items": { "type": "string", "minLength": 1, "maxLength": 4096 }
68
69
  },
69
70
  "changed_paths": {
@@ -0,0 +1,156 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://reviewsensei.dev/schemas/v2/work-recovery-artifact.schema.json",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": [
7
+ "document",
8
+ "authentication"
9
+ ],
10
+ "properties": {
11
+ "authentication": {
12
+ "type": "string",
13
+ "pattern": "^[a-f0-9]{64}$"
14
+ },
15
+ "document": {
16
+ "type": "object",
17
+ "additionalProperties": false,
18
+ "required": [
19
+ "schema_version",
20
+ "plan",
21
+ "execution_identity",
22
+ "resource_budget",
23
+ "saved_at",
24
+ "expires_at",
25
+ "elapsed_ms",
26
+ "counters",
27
+ "completed",
28
+ "pending",
29
+ "request_digests"
30
+ ],
31
+ "properties": {
32
+ "schema_version": {
33
+ "const": "2.0"
34
+ },
35
+ "plan": {
36
+ "type": "object"
37
+ },
38
+ "execution_identity": {
39
+ "type": "string",
40
+ "pattern": "^[a-f0-9]{32}$"
41
+ },
42
+ "resource_budget": {
43
+ "type": "object"
44
+ },
45
+ "saved_at": {
46
+ "type": "string",
47
+ "format": "date-time"
48
+ },
49
+ "expires_at": {
50
+ "type": "string",
51
+ "format": "date-time"
52
+ },
53
+ "elapsed_ms": {
54
+ "type": "integer",
55
+ "minimum": 0,
56
+ "maximum": 86400000
57
+ },
58
+ "counters": {
59
+ "type": "object",
60
+ "additionalProperties": false,
61
+ "required": [
62
+ "provider_calls",
63
+ "transport_retries",
64
+ "structural_retries",
65
+ "prompt_bytes",
66
+ "response_bytes"
67
+ ],
68
+ "properties": {
69
+ "provider_calls": {
70
+ "type": "integer",
71
+ "minimum": 0,
72
+ "maximum": 8
73
+ },
74
+ "transport_retries": {
75
+ "type": "integer",
76
+ "minimum": 0,
77
+ "maximum": 2
78
+ },
79
+ "structural_retries": {
80
+ "type": "integer",
81
+ "minimum": 0,
82
+ "maximum": 2
83
+ },
84
+ "prompt_bytes": {
85
+ "type": "integer",
86
+ "minimum": 0,
87
+ "maximum": 2097152
88
+ },
89
+ "response_bytes": {
90
+ "type": "integer",
91
+ "minimum": 0,
92
+ "maximum": 1048576
93
+ }
94
+ }
95
+ },
96
+ "completed": {
97
+ "type": "array",
98
+ "maxItems": 8,
99
+ "items": {
100
+ "type": "object",
101
+ "additionalProperties": false,
102
+ "required": [
103
+ "batch_id",
104
+ "request_digest",
105
+ "result"
106
+ ],
107
+ "properties": {
108
+ "batch_id": {
109
+ "type": "string",
110
+ "pattern": "^[a-f0-9]{64}$"
111
+ },
112
+ "request_digest": {
113
+ "type": "string",
114
+ "pattern": "^[a-f0-9]{64}$"
115
+ },
116
+ "result": {
117
+ "type": "object"
118
+ }
119
+ }
120
+ }
121
+ },
122
+ "pending": {
123
+ "type": "array",
124
+ "maxItems": 40000,
125
+ "items": {
126
+ "type": "array",
127
+ "minItems": 2,
128
+ "maxItems": 2,
129
+ "items": {
130
+ "type": "string",
131
+ "maxLength": 512
132
+ }
133
+ }
134
+ },
135
+ "request_digests": {
136
+ "type": "object",
137
+ "maxProperties": 8,
138
+ "propertyNames": {
139
+ "pattern": "^[a-f0-9]{64}$"
140
+ },
141
+ "additionalProperties": {
142
+ "anyOf": [
143
+ {
144
+ "type": "string",
145
+ "pattern": "^[a-f0-9]{64}$"
146
+ },
147
+ {
148
+ "type": "null"
149
+ }
150
+ ]
151
+ }
152
+ }
153
+ }
154
+ }
155
+ }
156
+ }
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: review-sensei
3
- Version: 0.6.15
3
+ Version: 0.6.17
4
4
  Summary: Provider-neutral AI code review engine with an Ollama adapter.
5
5
  Author: Mohamad Alsabbagh
6
6
  License-Expression: MIT
@@ -135,10 +135,12 @@ replacements by `review-sensei config`.
135
135
  Node.js 22 or newer can invoke the same Python review engine through the
136
136
  provider-neutral `@reviewsensei/cli` launcher:
137
137
 
138
+ <!-- release-installation:package-npm-1:start -->
138
139
  ```bash
139
- npx --yes @reviewsensei/cli@0.6.15 --version
140
- npx --yes @reviewsensei/cli@0.6.15 --help
140
+ npx --yes @reviewsensei/cli@0.6.17 --version
141
+ npx --yes @reviewsensei/cli@0.6.17 --help
141
142
  ```
143
+ <!-- release-installation:package-npm-1:end -->
142
144
 
143
145
  The launcher selects one of the five native packages (macOS arm64/x64,
144
146
  glibc Linux arm64/x64, or Windows x64), forwards arguments unchanged, and
@@ -240,7 +242,7 @@ broker resolves the same tag at capability exchange time and checks the
240
242
  executing workflow SHA. Moving `v5` is therefore the public cutoff action.
241
243
  The selected provider mode applies consistently to automatic pull-request
242
244
  reviews, manual reviews, learning proposals, artifacts, and authorized
243
- `@sensei` conversations. Cloud runs use GitHub-hosted compute; local runs use
245
+ `@reviewsensei` conversations. Cloud runs use GitHub-hosted compute; local runs use
244
246
  the operator-controlled labeled self-hosted runner. Every generated write
245
247
  switch except automatic approval defaults to `false`; automatic approval
246
248
  defaults to `true` and requires automatic review and GitHub writes as separate
@@ -334,6 +336,14 @@ limits stay in place; opt-in `--orchestrate-large-changes` adds a separate
334
336
  total-work budget so larger diffs can be chunked without silent truncation or
335
337
  unbounded provider calls.
336
338
 
339
+ Full review and tagged human reassessment can opt into the same evidence planner
340
+ and bounded executor with `advanced.review_work.mode: unified`. This is an
341
+ experimental work mechanism; existing routing remains the default. It batches
342
+ complete required file patches for replies, and whole files or exhaustive parsed
343
+ hunks for discovery. Missing or oversized evidence and failed batches stay
344
+ pending and withhold approval. See [shared review work](docs/shared-review-work.md)
345
+ for budgets, provider qualification and reader-safe rollout.
346
+
337
347
  Npm `package-lock.json` and `npm-shrinkwrap.json` changes are reviewed as
338
348
  material dependency input. Every original hunk remains in the request; a
339
349
  bounded aid identifies visible dependency members with exact diff hashes and
@@ -743,7 +753,7 @@ approval. An unclassified ReviewSensei root, malformed or incomplete thread
743
753
  data, an unverified configuration, or a draft/closed/fork/stale/App-authored PR
744
754
  fails closed or reports why approval was withheld. The finalizer runs after
745
755
  review publication and after the AI resolves a blocking ReviewSensei thread;
746
- `@sensei` replies themselves remain ordinary comments. Existing approval markers
756
+ `@reviewsensei` replies themselves remain ordinary comments. Existing approval markers
747
757
  prevent duplicate approvals, and ReviewSensei never calls a merge endpoint or
748
758
  enables auto-merge.
749
759
 
@@ -755,19 +765,25 @@ blocker. See
755
765
  [ADR 0032](docs/adr/0032-blocking-finding-classification-for-approvals.md)
756
766
  for the criteria and rollback path.
757
767
 
758
- Manual review and authorized `@sensei` replies use the same selected provider
768
+ Manual review and authorized `@reviewsensei` replies use the same selected provider
759
769
  mode. Generated `github reply` commands use the same inference configuration
760
770
  and CLI overrides as normal reviews, including `cloud-ollama` and
761
771
  `local-ollama`. Run from the trusted policy checkout or pass `--config` with
762
772
  its trusted configuration. A local backend receives no ambient cloud key;
763
773
  an explicitly named `--api-key-env` remains an operator opt-in.
774
+ The canonical handle is `@reviewsensei`; `@ReviewSensei` and other ASCII case
775
+ variants work too. `@sensei` remains supported, with its existing case behavior.
776
+ Both handles use the same authorization, publication policy, and bounded context.
777
+ Existing installations need a caller update as well as the matching runtime and
778
+ broker update; see [the caller rollout guide](docs/mention-handle-rollout.md).
779
+
764
780
  Each authorized mention receives a temporary 👀 reaction while the reply
765
781
  is generated; ReviewSensei removes it after the reply or another terminal
766
782
  outcome. Follow-up mentions in the same inline or PR conversation include the
767
783
  bounded prior thread, diff context, findings, and trusted-base learnings. Cloud
768
784
  mode sends that bounded conversation context to Ollama Cloud; local mode keeps
769
785
  it on the configured local service. Published review summaries and inline
770
- findings also tell readers to reply with @sensei followed by their question.
786
+ findings also tell readers to reply with @reviewsensei followed by their question.
771
787
  `review.json` is uploaded only when
772
788
  `github.artifacts: diagnostics` is set in `.reviewsensei.yml`; setup-v5 does not
773
789
  create a separate version artifact. See
@@ -1,19 +1,20 @@
1
- ../../Scripts/review-sensei.exe,sha256=Ald8ApUfWLLbQ69U_O7QBT3p52zJeriHKCJ7HaXjQdc,108355
2
- review_sensei-0.6.15.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
3
- review_sensei-0.6.15.dist-info/METADATA,sha256=b8lGu2nXmQSMy5DesttwNmIy4AreGd0_JnEJRZpfDds,42124
4
- review_sensei-0.6.15.dist-info/RECORD,,
5
- review_sensei-0.6.15.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
- review_sensei-0.6.15.dist-info/WHEEL,sha256=YVMoNqKzERt-wjUZwJ33xBGAwnFl-4cqbYkTtWa4itE,91
7
- review_sensei-0.6.15.dist-info/direct_url.json,sha256=EDhpXdSFq1qZfl2FCT07Hg2gleInjGFaAwkFy0selqU,67
8
- review_sensei-0.6.15.dist-info/entry_points.txt,sha256=Eki1ToC6hiOv8PMEAd2Cnbh5WWstVzzzf0XmHBHzpMQ,57
9
- review_sensei-0.6.15.dist-info/licenses/LICENSE,sha256=-eVBqOV92YK1K76UIcK5MrgUh0EiQMe8xNhSysQE68s,1095
10
- review_sensei-0.6.15.dist-info/top_level.txt,sha256=VCF4gJIJPP3MPJntoITDjMhJ8MUZfVLj-z3-VUQ9XDY,14
1
+ ../../Scripts/review-sensei.exe,sha256=9tavy5Il7RATe9Ut2wRlVHRUZMrsmrY7J3F89JtpQkA,108355
2
+ review_sensei-0.6.17.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
3
+ review_sensei-0.6.17.dist-info/METADATA,sha256=DkmzHfVc-OrR_bLAHP33h12kZ6EsMQp3dk2YaWXDay4,43199
4
+ review_sensei-0.6.17.dist-info/RECORD,,
5
+ review_sensei-0.6.17.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
+ review_sensei-0.6.17.dist-info/WHEEL,sha256=YVMoNqKzERt-wjUZwJ33xBGAwnFl-4cqbYkTtWa4itE,91
7
+ review_sensei-0.6.17.dist-info/direct_url.json,sha256=EDhpXdSFq1qZfl2FCT07Hg2gleInjGFaAwkFy0selqU,67
8
+ review_sensei-0.6.17.dist-info/entry_points.txt,sha256=Eki1ToC6hiOv8PMEAd2Cnbh5WWstVzzzf0XmHBHzpMQ,57
9
+ review_sensei-0.6.17.dist-info/licenses/LICENSE,sha256=-eVBqOV92YK1K76UIcK5MrgUh0EiQMe8xNhSysQE68s,1095
10
+ review_sensei-0.6.17.dist-info/top_level.txt,sha256=VCF4gJIJPP3MPJntoITDjMhJ8MUZfVLj-z3-VUQ9XDY,14
11
11
  review_sensei/__init__.py,sha256=hBA7OkQbK_oV4-fDFucVnpsnIut_JK-BbXLTznhg8ao,10524
12
12
  review_sensei/__main__.py,sha256=0iDYjdmiXNBinFF23WUyotsdpA6wFKjoB5aw3esTSRg,83
13
13
  review_sensei/__pycache__/__init__.cpython-311.pyc,,
14
14
  review_sensei/__pycache__/__main__.cpython-311.pyc,,
15
15
  review_sensei/__pycache__/baseline.cpython-311.pyc,,
16
16
  review_sensei/__pycache__/broker_diagnostics.cpython-311.pyc,,
17
+ review_sensei/__pycache__/budgets.cpython-311.pyc,,
17
18
  review_sensei/__pycache__/cli.cpython-311.pyc,,
18
19
  review_sensei/__pycache__/concurrency.cpython-311.pyc,,
19
20
  review_sensei/__pycache__/configuration.cpython-311.pyc,,
@@ -24,10 +25,13 @@ review_sensei/__pycache__/coverage.cpython-311.pyc,,
24
25
  review_sensei/__pycache__/dependencies.cpython-311.pyc,,
25
26
  review_sensei/__pycache__/diagnostics.cpython-311.pyc,,
26
27
  review_sensei/__pycache__/diff.cpython-311.pyc,,
28
+ review_sensei/__pycache__/discovery_work.cpython-311.pyc,,
27
29
  review_sensei/__pycache__/disposition.cpython-311.pyc,,
28
30
  review_sensei/__pycache__/document_context.cpython-311.pyc,,
29
31
  review_sensei/__pycache__/errors.cpython-311.pyc,,
30
32
  review_sensei/__pycache__/evaluation.cpython-311.pyc,,
33
+ review_sensei/__pycache__/evidence.cpython-311.pyc,,
34
+ review_sensei/__pycache__/execution.cpython-311.pyc,,
31
35
  review_sensei/__pycache__/hosted.cpython-311.pyc,,
32
36
  review_sensei/__pycache__/human_assessment.cpython-311.pyc,,
33
37
  review_sensei/__pycache__/learnings.cpython-311.pyc,,
@@ -39,23 +43,27 @@ review_sensei/__pycache__/placement.cpython-311.pyc,,
39
43
  review_sensei/__pycache__/planning.cpython-311.pyc,,
40
44
  review_sensei/__pycache__/presentation.cpython-311.pyc,,
41
45
  review_sensei/__pycache__/provider_config.cpython-311.pyc,,
46
+ review_sensei/__pycache__/reassessment_work.cpython-311.pyc,,
42
47
  review_sensei/__pycache__/release_manifest.cpython-311.pyc,,
43
48
  review_sensei/__pycache__/schemas.cpython-311.pyc,,
49
+ review_sensei/__pycache__/scope.cpython-311.pyc,,
44
50
  review_sensei/__pycache__/sequence.cpython-311.pyc,,
45
51
  review_sensei/__pycache__/service.cpython-311.pyc,,
46
52
  review_sensei/__pycache__/session.cpython-311.pyc,,
47
53
  review_sensei/__pycache__/stages.cpython-311.pyc,,
48
54
  review_sensei/__pycache__/validation.cpython-311.pyc,,
49
55
  review_sensei/__pycache__/verifier.cpython-311.pyc,,
56
+ review_sensei/__pycache__/work_recovery.cpython-311.pyc,,
50
57
  review_sensei/__pycache__/workflow.cpython-311.pyc,,
51
- review_sensei/baseline.py,sha256=AeiZYZtfRiVtwt4Amnv7620W-FEZhautDIE877B88Rw,59350
58
+ review_sensei/baseline.py,sha256=q-pcNZqRIuMDONC-Nw30uME0oYQ4_Ya4uJlfxuTLs30,66541
52
59
  review_sensei/broker_diagnostics.py,sha256=F7BAouQwp7kqNGTtJ74RDolYmLw57HHzALvBaLXyi7E,6423
53
- review_sensei/cli.py,sha256=O12Jd0BdDNPxoEcXfSVeeMtOlC8MjE5BO7JuhgUk3Ww,165009
60
+ review_sensei/budgets.py,sha256=1KnpAu5e-onex2mDb6OBx7x5nmPD81AtdjSAyjLLyQs,9639
61
+ review_sensei/cli.py,sha256=SRFCN-3lWMzav3erlEs_-kE1WgXDn94mTqhR2St7yJc,175286
54
62
  review_sensei/concurrency.py,sha256=7nqMDNaIl7YoKafkAF1ctXu6D5SFxXosm-1407OKimQ,20097
55
- review_sensei/configuration.py,sha256=b2D09kp8JcMFWaC5hVRirwYI8FB--cxSpiV1EERNU4o,90145
56
- review_sensei/context.py,sha256=pP3GrI0WyVYyWJJHyZgVFEjizBoY2Aeh0a_frLrjvj0,101720
57
- review_sensei/convergence.py,sha256=ZxnHmmFLGramRrOE8IHsAvqdhK3Rd--rimfm7UJKy08,50962
58
- review_sensei/conversation.py,sha256=KRWtF8JnmOrOQsvAX4q-d0UzzXjNp2XeePSbyIm4_pw,7467
63
+ review_sensei/configuration.py,sha256=SQ9IPAV23Vyw_gX_LgbZVWpHN1mXReVLsTZpntOk1rM,92174
64
+ review_sensei/context.py,sha256=kIDGkySUofyOaQlEv6oNW8o6eXYsD0pmRTaNCRh1sk8,101972
65
+ review_sensei/convergence.py,sha256=7pWt_bwLxBskCdrzH41HBM6FJ_3184B8-VAY6d71P-E,51261
66
+ review_sensei/conversation.py,sha256=eD59P1_iH4UAWtd7jQj0LaxNRqm0r1O8Jkqiy31wqoI,7473
59
67
  review_sensei/coverage.py,sha256=kJcf0MchFfrHkc-5nFhpqsx3dGGP6O8xdk6I2vNvzXk,13007
60
68
  review_sensei/default_categories/01-correctness.json,sha256=ZeTTvEavHU6_ih7JKhv8a6gH-4wRJGv0abckRWNWTfs,211
61
69
  review_sensei/default_categories/02-security.json,sha256=6mz8Hlteb9q1PouLDmDoR-1wxrN31XR2X5I9yoYiG-E,231
@@ -66,10 +74,13 @@ review_sensei/default_stages/01-default-review.json,sha256=-y9LP_8XNqEPpRN2K8z_q
66
74
  review_sensei/dependencies.py,sha256=OLNAFDMzmdtRVxex0XSpzwVVJl8jkCtUqxEk-0KohbE,5998
67
75
  review_sensei/diagnostics.py,sha256=ibG_2tI_VP4gTNM1c5XlAUAohYgSOd-5PZ-6xipbEcI,45613
68
76
  review_sensei/diff.py,sha256=na5MWhYcnRimFwGElNBiSp27Su_oufHhWiGtm1W38oY,32057
69
- review_sensei/disposition.py,sha256=d0nsNUKtba3UijH7X2YF7Wj5FSLdjRjE2Ni6HH0d9GI,21496
77
+ review_sensei/discovery_work.py,sha256=IYoyViAJbLAAiiVClVLUY3uqwKM33SZmDn93iuI9Iik,20954
78
+ review_sensei/disposition.py,sha256=vGzMrE5xO71bt4rBiXiPA9e267Dtn1dZAxZjkj_e7jU,22443
70
79
  review_sensei/document_context.py,sha256=NZKmt2lAOi8ICFhCemEe15-5i6M6xvh58YwiEok1q1c,20482
71
80
  review_sensei/errors.py,sha256=1-JKbLcEodjQMXleJwR-QDzRhMSFwDSe9Oc6Pg1UYmY,2901
72
81
  review_sensei/evaluation.py,sha256=kKhbcF3XpHhDYLW8e_dxGjcS0sXJpz8nXYsPpUuXnBE,59450
82
+ review_sensei/evidence.py,sha256=huB64KdjIQug2NRFS9uDNw0HUOJsy67NPg26u_IcA6M,10135
83
+ review_sensei/execution.py,sha256=E7C53idpTM2CGSMXdODswJ1QzAWGonGb9sr-HQDSBWk,15118
73
84
  review_sensei/hosted.py,sha256=sYy8tHLhR3xeBJveu1c1YHG8Uk2T8Br_4CdUIFemx24,10374
74
85
  review_sensei/hosting/__init__.py,sha256=zqIukHwfUzai3x7dJS2nFNlVhP7EQWQ47-4pGCi2Sz0,84
75
86
  review_sensei/hosting/__pycache__/__init__.cpython-311.pyc,,
@@ -91,17 +102,18 @@ review_sensei/hosting/github/__pycache__/learning_pr.cpython-311.pyc,,
91
102
  review_sensei/hosting/github/__pycache__/observed.cpython-311.pyc,,
92
103
  review_sensei/hosting/github/__pycache__/oidc.cpython-311.pyc,,
93
104
  review_sensei/hosting/github/__pycache__/publication.cpython-311.pyc,,
105
+ review_sensei/hosting/github/__pycache__/reservation_recovery.cpython-311.pyc,,
94
106
  review_sensei/hosting/github/__pycache__/session_ledger.cpython-311.pyc,,
95
107
  review_sensei/hosting/github/__pycache__/setup.cpython-311.pyc,,
96
108
  review_sensei/hosting/github/__pycache__/trigger.cpython-311.pyc,,
97
109
  review_sensei/hosting/github/__pycache__/webhooks.cpython-311.pyc,,
98
- review_sensei/hosting/github/application.py,sha256=rLv3dNtECUzOU4zFvGHxvG8Rc-eX3Wi3i_ZS59Sm2sg,76013
99
- review_sensei/hosting/github/approval.py,sha256=n8GQlELM_7AHzxvtIJEytQRUUnCdAndWtniHjm3SGkQ,21051
110
+ review_sensei/hosting/github/application.py,sha256=QfzrW5I6wQGnHkq0MRA4e1355pNE_MPVfGmUURYZzKg,85275
111
+ review_sensei/hosting/github/approval.py,sha256=COrPk_lV6BdgafUKVFfXUcMdvs8ksSai46MJlkaZB98,24376
100
112
  review_sensei/hosting/github/auth.py,sha256=koITagUX9piVboGJ_smEhPsCf4rOQkOqqSKeLKvFRbc,19055
101
113
  review_sensei/hosting/github/broker.py,sha256=FFC7DsFhzy1tENXTCmLNuYzX2cHaYsgMkDGwXEcJaTU,18014
102
- review_sensei/hosting/github/broker_client.py,sha256=clm_eInRSUg9MI6fxl_QfhUBGJglgy4pKB65FCwpv-k,16903
114
+ review_sensei/hosting/github/broker_client.py,sha256=askIvbReTUZq9NejQansW8FBdm0jSTctdLzFbEaYSQ0,17500
103
115
  review_sensei/hosting/github/checks.py,sha256=7jdUkaHO9UzpeBn8WLhrT-PSz4W6tHVOFU00zXgQbPY,17481
104
- review_sensei/hosting/github/conversation.py,sha256=Jg-H3xtEg5TpBujA8271IlCfIxpvkG1r54a7PfNTGrc,63578
116
+ review_sensei/hosting/github/conversation.py,sha256=OvFS5uHWVZLt8BKqXFfQOkJVhPd12YSpAx65wusw-H4,73429
105
117
  review_sensei/hosting/github/errors.py,sha256=KUGHSn1Udl4vVCKPWQ6NfkRmGSQ2YZVhPbyyJdBh63o,5826
106
118
  review_sensei/hosting/github/fixtures/__init__.py,sha256=2sBygkvppFJ6F8KV1_MDmbBNl7Yd0oPvYOFG6R_NOpA,82
107
119
  review_sensei/hosting/github/fixtures/__pycache__/__init__.cpython-311.pyc,,
@@ -109,26 +121,28 @@ review_sensei/hosting/github/fixtures/historical-v4-uninstall.yml,sha256=VrX1XpT
109
121
  review_sensei/hosting/github/fixtures/merge-focused-v4-caller.yml,sha256=EGs0F3O7Ictx0azK07q_6Px2cMTA87mKCLnsWSyIoFY,17496
110
122
  review_sensei/hosting/github/fixtures/merge-focused-v4-config.yml,sha256=4L1UvSucMGJqPh_OwmPgq_lE-nenySkIg7Xogtmk7Us,464
111
123
  review_sensei/hosting/github/fixtures/released-v4-resolve-trigger-runner-switch.yml,sha256=09um6w5QmIodLMrbR10z4gdZ3f5AaVj7eqjhQzOfkV8,16194
112
- review_sensei/hosting/github/http.py,sha256=6Dz9S-U4M07KehE7FhjNyrBt_XKKz4Dnp6zULMFKHk0,8943
113
- review_sensei/hosting/github/human_assessment.py,sha256=gpnTM8xMnnrPsHjw2aQQIYATZasfbZLyFY3f2jUZJrQ,13438
124
+ review_sensei/hosting/github/fixtures/sensei-only-v5-caller.yml,sha256=n0ZSa1lxTRSw0qsizg8m80E74VCBjkwDO5RAZy1S604,13030
125
+ review_sensei/hosting/github/http.py,sha256=QY45Tv6teZ-2mmk7hjyxbJ80KjBPZ0BeqiCfAi8LA7I,11080
126
+ review_sensei/hosting/github/human_assessment.py,sha256=xHQtK3YcFoIf0dfahiwnEdZN3jZHlzFFw3e-rwigwcA,21786
114
127
  review_sensei/hosting/github/jwt.py,sha256=mTakXBxU-GR-hBnIZE-FryfFXwpS9hJ7qb3X7P0FBMo,4582
115
128
  review_sensei/hosting/github/learning_pr.py,sha256=hT7FmmpWCnUO5WCQEmP9XioQiceNALxuJCtcZXAQxSU,112424
116
129
  review_sensei/hosting/github/observed.py,sha256=Sk0J_kfTBS1je6_YI5-HgGE266zv0_JP1CfvaR7X_zY,36461
117
130
  review_sensei/hosting/github/oidc.py,sha256=h3UVcBYQIKy-xQS7Ixv3_fy670mmuBoNKSYurPZWZ60,13310
118
- review_sensei/hosting/github/publication.py,sha256=aruNXWQ0y1y4fShJJKGxOqDNpb5y5d2knVvU-RpzVQc,103398
119
- review_sensei/hosting/github/session_ledger.py,sha256=DZgLY-fP1SMjsQh55k7DsEEdEdPh-72uGEezCjePP9s,31131
120
- review_sensei/hosting/github/setup.py,sha256=5L3O3gZ7CMbFPKj37XKq33hpj59Gx0pCr1B5c7CTKgI,119022
121
- review_sensei/hosting/github/trigger.py,sha256=7jwSWoFU5VsJ1XUhhEEgne9-pA6zaHyYJ_BVlMcqlsI,10434
131
+ review_sensei/hosting/github/publication.py,sha256=DfIh-xIW5SSLLsgyaohFVzMV5Q1J9iQJmyl8nQLnlvM,113061
132
+ review_sensei/hosting/github/reservation_recovery.py,sha256=rOa6bVold_eHaJxOv-7E2ZiFHWkipXtu1Jttxxkg3jk,9787
133
+ review_sensei/hosting/github/session_ledger.py,sha256=7hlTjDwNBydvDd2EjurdH4VwDIt9aRQUOl8mix4YhIQ,36519
134
+ review_sensei/hosting/github/setup.py,sha256=Lxs1zeGy7wHBCAy1Nl8EISuPma8ZLnGRoObPPT39W6E,120115
135
+ review_sensei/hosting/github/trigger.py,sha256=O4z65mAqgFCnrwuRqGzH5iRzf0WB-AS2VWCGsFKCo4M,10576
122
136
  review_sensei/hosting/github/webhooks.py,sha256=7hh_YlF7riV6wov7A_27aOb5g6-Ivob1PBWR4m5bF3I,13662
123
137
  review_sensei/hosting/openrouter_workflow.py,sha256=qepVpa12sL6mTaBqTGhcWEaYI8zawcgAYK6sOCRnKtE,1330
124
- review_sensei/human_assessment.py,sha256=mzP92oPBlV7-OVweb0IdCNFatZXCCIt2i2leCY6MSt0,13540
138
+ review_sensei/human_assessment.py,sha256=d8wOYXudhSMSNXIh-4uw_b3l43PJbO7K1lOih2gMr6s,27226
125
139
  review_sensei/learnings.py,sha256=AF9Dqyreb9WQLWLZiciuyRXNviSso6sYVTe2xzx1ZfY,21434
126
- review_sensei/models.py,sha256=gT5E-4YL7y763xwszpFbQGiqONGTF3Tjb_b6LZPADMk,93081
140
+ review_sensei/models.py,sha256=tB2gDYGuk42ZzDm0WtxLbnECMFcZbixuO_P9Gn2wvP8,94685
127
141
  review_sensei/openrouter_qualification.py,sha256=UKUL8oK8oexX1P_othR3y_QAAW0PG2EdAYnWXA-ACZI,30296
128
- review_sensei/outcomes.py,sha256=ni0WaxHGkYDMINRExljkgeP0dqSaIIps_w2jmsspIaY,35428
142
+ review_sensei/outcomes.py,sha256=z3Uintn8a31qZk1W1odTXPlfQfwKBDupoHNbMSuHl3w,35590
129
143
  review_sensei/patches.py,sha256=P9plsU7-5Z-Jxy8EJBFQX5hX3bcmxBoRJxTnEqA_tbA,15981
130
144
  review_sensei/placement.py,sha256=ABioTJwmS4bhyB1M6IdWqyGOx9j1Ge3CeYSKMk9GXSA,6607
131
- review_sensei/planning.py,sha256=SB1Jrq9YaTLGo9bINppO1QUN8P2k6ILPYr1fUmQ9GYQ,23585
145
+ review_sensei/planning.py,sha256=ApQ91kJlCM-pArDQ0Dq58lD8LKPDytBrOU-E0KNCNFw,37121
132
146
  review_sensei/presentation.py,sha256=xbqLb1OcDwk0wOD_bHVBiRyfO6ZLXq5-PWGdGWG0Zl0,30226
133
147
  review_sensei/provider_config.py,sha256=y03TeL6wNsx_9KECr_AhHQkWyWOBOUMnPHzDDyL9AdQ,16382
134
148
  review_sensei/providers/__init__.py,sha256=gmfB6gm0QN_FfN3lJJ0kN8QgTtJom4ayzaqUkLmwQwc,779
@@ -144,13 +158,14 @@ review_sensei/providers/__pycache__/routing.cpython-311.pyc,,
144
158
  review_sensei/providers/__pycache__/transport.cpython-311.pyc,,
145
159
  review_sensei/providers/base.py,sha256=u-z9bQNi3sjPudoDb52czjOmM2YwBX_Kwniopz_LfWI,2009
146
160
  review_sensei/providers/fixture.py,sha256=-HXetG6cXpWd5NlF1-RMA3aqyr88YHwYpiyz0Bc6BO8,1554
147
- review_sensei/providers/ollama.py,sha256=50u86LU-FYulbBxJP_vShGw-9t2sGCVfceGE8vjZdFY,10739
148
- review_sensei/providers/openai_compatible.py,sha256=fJFCUz_tyhBG7STItvfNybOq7V620k47_VgSbizRDWU,19441
149
- review_sensei/providers/openrouter.py,sha256=8gFslaz82oOtDxG58o1-wdn9IH2T_bKjeJE738gphJ8,23224
161
+ review_sensei/providers/ollama.py,sha256=CtwWFs4OA8035Lg6fdFCU0xzGySrtrXNptzPJ7dmcBI,11174
162
+ review_sensei/providers/openai_compatible.py,sha256=nZYy_xy0dlujJPY-LKaog1MF1SMl8bqq4G59-jBNpJc,19725
163
+ review_sensei/providers/openrouter.py,sha256=bxuibfKD__E8Oyf5m24UI8_fGJGM9DMMNW7Or1LDGF8,23583
150
164
  review_sensei/providers/profiles.py,sha256=_vhQPNMBT2x-6AU-xVqM0lqTlT2cTiXMv5xwb5-C2EM,9352
151
165
  review_sensei/providers/registry.py,sha256=_YifbpFtgsARRF5l1VJsyQgovJgjrgvB_VLT-SUAE9k,12088
152
166
  review_sensei/providers/routing.py,sha256=-EttO963m9Gh3E5hlF72EvyFDN9qMabPmm05b3m5QH0,7064
153
167
  review_sensei/providers/transport.py,sha256=9QhvHM33gYE7DbmXNxhfBoVDsa7Hx3audaxzRd_7pS4,2937
168
+ review_sensei/reassessment_work.py,sha256=O2xeQ0-uqf_RyW9ypaiV8YjBjfoV5utM3cHf2eRrDN8,18872
154
169
  review_sensei/release_manifest.py,sha256=a7pPhr0YVBCrzC6Q8JC4HiqTD3aBUyTYV4Y0827U5TA,37775
155
170
  review_sensei/schemas.py,sha256=DG0Z2VsZUKRaoLNquemWSsGT8XFavUy1ot-W3ADowWw,2736
156
171
  review_sensei/schemas/blocker-admission.schema.json,sha256=M3nBzti7M5yAWKFDcsfdJ3TsPbiJrEEn2Zj4yYUDBPQ,2800
@@ -181,14 +196,17 @@ review_sensei/schemas/review-round-decision.schema.json,sha256=d1GOE4RSgNRkvF35k
181
196
  review_sensei/schemas/review-stage.schema.json,sha256=H5CDiC-ngQXJpVomEvd8YPP1tgyPgwo_k3atK4Vjev0,4707
182
197
  review_sensei/schemas/review-transaction.schema.json,sha256=KWtsfa0p0CmPx--cB91XpDizF2Z6N2Ehg5YMlRqJwN8,2215
183
198
  review_sensei/schemas/run-outcome.schema.json,sha256=pyByHFmQ8yNFPsLD7wccR5lxsWBwzoxNyD77bjNqeU8,1744
184
- review_sensei/schemas/session-record.schema.json,sha256=b3YKz4r4-qeNcuOgCP8ntM1IByduJguZUj2q4X_lAXA,12173
199
+ review_sensei/schemas/session-record.schema.json,sha256=KraPFMHQdKHcDa6ShFe8CqAHXZClLG4aXCpMWLT5KVo,12976
185
200
  review_sensei/schemas/stage.schema.json,sha256=WsxbwZFGpRNCyZ6xzWsAQHf8f7YpJLAh9FKRXN_vlao,2900
186
201
  review_sensei/schemas/verification-result.schema.json,sha256=Hf765S-aC1Tk4c7KMWaaSf5DMsg6ogmjnHXcjcHE01k,625
187
- review_sensei/schemas/verification-scope.schema.json,sha256=402Q7OiLHnb41lwb5JkVoKUpCe19fMV9hVhTjsenLFo,2141
202
+ review_sensei/schemas/verification-scope.schema.json,sha256=qACGMuiiu434cYVvI7akHffIx2lm98bXE1W3D4JWNDk,2178
203
+ review_sensei/schemas/work-recovery-artifact.schema.json,sha256=0xzGv2WlF5unF1P7ySkHeI5HSD23xaAAh9nS-d8GGDo,3968
204
+ review_sensei/scope.py,sha256=nhds_ZB86snKaptKu6Llbt5ggzTR3ft1NhyICouA7BM,3293
188
205
  review_sensei/sequence.py,sha256=Mc3ejY8Cmo7xASNAo2vfep9rILb3BgnzH8T9rw8xjRY,23746
189
- review_sensei/service.py,sha256=B5ld08iQa6A_770zio1g5ejQ_-a41Q16JCYZh8bnVbs,73541
190
- review_sensei/session.py,sha256=y_RC3zhmSLtT18yP11b-hN1qjjreyyvOttq7-X4Z3rs,126590
206
+ review_sensei/service.py,sha256=3h-Vyl4JuExjlup_QTgM41jzFxL9MW6orN8caGvCEqs,76968
207
+ review_sensei/session.py,sha256=4f43X6atsV6umkufKBJCWEr4zwIZtF9K5Qzmw--fDIs,131418
191
208
  review_sensei/stages.py,sha256=rMomi3dvKrEl3yiuy2VbX09_bLu8dWD2rblFH8aJ6yI,24256
192
209
  review_sensei/validation.py,sha256=euLaI7cxwTCxcpNRh-F8zGz0BQu8GMG3cA3_1_wtdkU,12390
193
210
  review_sensei/verifier.py,sha256=_6cbaoXj8R9hatM7fZav-BgfkSPRyJ4ASmQlZbxF5HA,34913
211
+ review_sensei/work_recovery.py,sha256=1d1JFk-MBq_Kk55VNbzpZ-rxqaHgRDJfZ4-4VEOpSac,15611
194
212
  review_sensei/workflow.py,sha256=b20eeP9ekbNYGibNCYCcvKSLK7cO3bpCsXiA7y9y33Y,23572
Binary file
package/package.json CHANGED
@@ -1,13 +1,21 @@
1
1
  {
2
2
  "name": "@reviewsensei/cli-win32-x64",
3
- "version": "0.6.15",
3
+ "version": "0.6.17",
4
4
  "description": "ReviewSensei AI code review engine for Windows x64; native payload used by @reviewsensei/cli",
5
5
  "license": "MIT",
6
6
  "repository": {
7
7
  "type": "git",
8
8
  "url": "git+https://github.com/malsabbagh/review-sensei.git"
9
9
  },
10
- "os": ["win32"],
11
- "cpu": ["x64"],
12
- "files": ["bin", "README.md", "LICENSE"]
10
+ "os": [
11
+ "win32"
12
+ ],
13
+ "cpu": [
14
+ "x64"
15
+ ],
16
+ "files": [
17
+ "bin",
18
+ "README.md",
19
+ "LICENSE"
20
+ ]
13
21
  }