Skip to content

Commit ed593ac

Browse files
stop naming a default that is about to change
Two docstrings said an omitted grant version keeps v1, and described that as back-compat rather than a deprecation. Both would have become false on 18 September, when the server's implicit default moves to v2 — without anyone touching this file. They now say what this SDK actually does, which is send no version field at all, and point at the thing that cannot go stale: the response and its deprecation and sunset headers. Pinning the version explicitly is what controls the outcome, and that is stated in both places.
1 parent 64e2191 commit ed593ac

1 file changed

Lines changed: 14 additions & 9 deletions

File tree

‎coderifts/client.py‎

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -285,13 +285,17 @@ def preflight_change_set(
285285
derivation. Sent ONLY as the ``X-Coderifts-Scm-Token`` header
286286
(never in the JSON body, never stored on the client).
287287
include_execution_grant: Opt-in execution grant on authorize.
288-
Default omitted. WHICH grant depends on ``grant_version``:
289-
omitted issues ``cr.exec.v1``, ``'v2'`` issues ``cr.exec.v2``.
290-
The Python client does not verify grants offline (no Ed25519
291-
dependency); use the app/SDK-TS kernel.
292-
grant_version: ``'v2'`` requests a ``cr.exec.v2`` grant. Omitted —
293-
the default — keeps ``cr.exec.v1``, which the server still
294-
issues. That is back-compat, not a deprecation.
288+
Default omitted. WHICH grant the server mints when
289+
``grant_version`` is also omitted is the server's default at
290+
request time — pin ``grant_version`` explicitly to control
291+
this. ``'v2'`` requests ``cr.exec.v2``. The Python client does
292+
not verify grants offline (no Ed25519 dependency); use the
293+
app/SDK-TS kernel.
294+
grant_version: ``'v1'`` / ``'v2'`` selects the grant envelope.
295+
Omitted — this SDK sends no version field. The server's default
296+
at request time is what is issued; the response (and any
297+
deprecation / sunset headers) is the statement that cannot go
298+
stale. Pin explicitly to control this.
295299
execution_grant_binding: The v2 identity the grant should bind, as
296300
:class:`~coderifts.types.ExecutionGrantV2Request`:
297301
``executor_id`` / ``adapter_id`` / ``target_uri`` /
@@ -424,8 +428,9 @@ def authorize_change_set(
424428
you are looking for a "sign a grant" call here, its absence is the design.
425429
426430
Args:
427-
grant_version: ``"v2"`` selects the ATOMIC-profile grant. Omitted → the server's
428-
default (v1); this SDK sends no version of its own.
431+
grant_version: ``"v2"`` selects the ATOMIC-profile grant. Omitted —
432+
this SDK sends no version field. The server's default at request
433+
time is what is issued; pin explicitly to control this.
429434
execution_grant_binding: The v2 identity the grant should bind. Forwarded at the
430435
request's top level; unknown keys are dropped rather than sent.
431436
resolve_state_challenge: Zero-argument callable returning

0 commit comments

Comments
 (0)