@consciousclouds/access 0.1.1 → 0.1.2

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
@@ -2,6 +2,20 @@
2
2
 
3
3
  All notable changes to `@consciousclouds/access` are documented here.
4
4
 
5
+ ## 0.1.2
6
+
7
+ - No API change. Republished so that the bytes on the registry reproduce from the committed tree and are
8
+ pinned by the published-byte digest gate (`scripts/sdk_packed_digest.py`). 0.1.1's immutable bytes differ
9
+ from the source that followed it by one comment, which no gate could see because no digest was recorded;
10
+ from this release the packed contents are pinned per version and CI refuses a source change that would
11
+ diverge from what was published.
12
+
13
+ ## 0.1.1
14
+
15
+ - Fail-closed repair: `decodeURIComponent` sat outside every guard, so a malformed cookie threw `URIError` out
16
+ of every server-side entry point instead of denying. Packaging repair: the `capability-sdk` dependency was
17
+ `workspace:*`, which would have shipped an uninstallable tarball. No API change.
18
+
5
19
  ## 0.1.0
6
20
 
7
21
  - Initial release. The policy-free Access SDK for the Control Plane's operator
@@ -16,8 +16,8 @@ const EMPTY_SCOPE = { project: '', environment: '' };
16
16
  * Pull one cookie value out of a raw `Cookie:` header.
17
17
  *
18
18
  * FAIL-CLOSED ON A MALFORMED VALUE. `decodeURIComponent` THROWS a URIError on an invalid percent-escape, and a
19
- * cookie header is attacker-influenced input: a request carrying `cc=%` made identity, session and can all
20
- * throw rather than deny, which turns a fail-closed adapter into a 500 — and a crash is not a denial. A value
19
+ * cookie header is attacker-influenced input: a request carrying `cc=%` made every entry point below throw
20
+ * rather than deny, which turns a fail-closed adapter into a 500 — and a crash is not a denial. A value
21
21
  * that cannot be decoded is not a credential, so it reads as ABSENT, which is exactly the state every caller
22
22
  * already handles.
23
23
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@consciousclouds/access",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "Conscious Clouds Access SDK \u2014 the thin, policy-free client for the Control Plane's operator identity + Access surface. Types (root) + isomorphic HTTP wrappers (/client) + a request-bound fail-closed BFF adapter (/server) + React hooks & AccessProvider (/react). Reuses the `Capability` `<primitive>.<verb>` vocabulary and the operator-shell's allowed|denied|unknown decision union. NO policy logic \u2014 every decision is the Control Plane's; the SDK only asks the five operating questions and enforces the answers (fail-closed).",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",