@fleetless/contracts 1.0.3 → 1.0.4

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/CHANGELOG.md CHANGED
@@ -5,6 +5,25 @@ follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and the
5
5
  project uses [semantic versioning](https://semver.org/spec/v2.0.0.html) over
6
6
  the wire shapes.
7
7
 
8
+ ## [1.0.4] — 2026-09-07
9
+
10
+ Two things a grep over the published 1.0.3 tarball found that the guard was not
11
+ looking for. **No wire shape changes**; `artifacts/` is byte-identical to 1.0.3.
12
+
13
+ ### Fixed
14
+
15
+ - **A published `dist/` comment cited `CLAUDE.md`** and two internal server
16
+ symbols by name. Rewritten to say what the rule is rather than where it is
17
+ written down.
18
+ - **The markdown this package ships was outside the guard.** `README.md`,
19
+ `CHANGELOG.md`, `SECURITY.md`, `CONTRIBUTING.md` and `CODE_OF_CONDUCT.md` are
20
+ published bytes like any other, and nothing was scanning them. They are now
21
+ swept for every marker class — with the stance classes deliberately exempt,
22
+ because those documents are legitimately *about* this repository and a guard
23
+ that reddened on "this repository is a schema library" would be demanding they
24
+ stop addressing their reader.
25
+ - **A new marker class**: a reference to a file only the maintainers have.
26
+
8
27
  ## [1.0.3] — 2026-09-07
9
28
 
10
29
  The second half of 1.0.2's sweep. **No wire shape changes**: every file under
package/dist/routes.js CHANGED
@@ -79,20 +79,18 @@ export const IN_HANDLER_ROUTES = [
79
79
  * `developer_or_client` or MCP surfaces, which is why `CLIENT_GUARD` keeps it.
80
80
  *
81
81
  * **Not `invalid_token`.** That code exists in `ERROR_CODES` and this guard has
82
- * never sent it; the three above are what `sendTokenRefusal` actually maps to.
83
- * Said plainly because the planning note for this file assumed otherwise, and a
84
- * documented refusal a caller cannot receive is the third failure mode in
85
- * CLAUDE.md's list.
82
+ * never sent it; the three above are what the token refusal actually maps to.
83
+ * Said plainly, because a documented refusal a caller cannot receive is worse
84
+ * than an undocumented one: a consumer branches on it and the branch is dead.
86
85
  */
87
86
  const DEVELOPER_GUARD = ['unauthorized', 'token_expired', 'token_revoked'];
88
87
  /**
89
- * The same, for `auth: 'developer_or_client'` — `createRequireDeveloperOrClient`,
90
- * which resolves a developer bearer, an end-user bearer **or** a server key
91
- * through one `resolveAnyToken`.
88
+ * The same, for `auth: 'developer_or_client'` — one guard resolving a developer
89
+ * bearer, an end-user bearer **or** a server key through a single token lookup.
92
90
  *
93
- * **The same four codes, not five.** `sendTokenRefusal` has a fifth arm,
94
- * `account_blocked`, and this list carried it for exactly one commit. Nothing
95
- * reaches it: `TokenRefusalReason` admits `'blocked'`, but no site in
91
+ * **The same four codes, not five.** The token refusal has a fifth arm,
92
+ * `account_blocked`, which this list must not carry. Nothing reaches it: the
93
+ * refusal type admits `'blocked'`, but no site in
96
94
  * the cloud constructs one — the only reasons ever returned are `'invalid'`,
97
95
  * `'revoked'` and `'forbidden'`. Access is withdrawn by removing an assignment
98
96
  * rather than by blocking an account, so an app user who loses access loses it
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fleetless/contracts",
3
- "version": "1.0.3",
3
+ "version": "1.0.4",
4
4
  "description": "Fleetless wire contracts: the bridge-cloud protocol, the REST API schemas and the error codes, as zod schemas with generated JSON Schema and OpenAPI artifacts.",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Dehne Robotik GmbH",