@abloatai/ablo 0.40.0 → 0.42.0

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.
Files changed (2) hide show
  1. package/CHANGELOG.md +57 -0
  2. package/package.json +3 -3
package/CHANGELOG.md CHANGED
@@ -1,5 +1,62 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.42.0
4
+
5
+ ### `ablo whoami`: what does this key act on?
6
+
7
+ `whoami` returns the server-confirmed organization, project, and branch a key
8
+ acts on, or fails. Where `status` is the broad health report and deliberately
9
+ degrades when an older or unreachable server cannot confirm identity, `whoami`
10
+ is the strict form of the question, which makes it safe to run before a
11
+ `connect` or `deregister` instead of inferring a key's scope from a failed
12
+ mutation.
13
+
14
+ ### Bound sessions resolve their schema again
15
+
16
+ Every read seam that honored a first-party schema binding substituted the
17
+ owner's organization but kept the caller's own branch, a location where the
18
+ owner's schema never lives. Bound sessions therefore resolved an empty schema:
19
+ bootstraps returned no models and every query answered `unknown_model`. Reads
20
+ and commits now resolve the model map on the owner's branch axis, and an
21
+ absent branch resolves to the owner's root.
22
+
23
+ ### Re-pushing an unchanged schema no longer fails
24
+
25
+ The unchanged-schema fast path skipped the provisioning deferral the real
26
+ migration path has, so an identical `ablo push` was refused on any plane that
27
+ had no DDL to run. The fast path now defers exactly like the real path, and a
28
+ second push of the same schema succeeds with nothing left undone.
29
+
30
+ ## 0.41.0
31
+
32
+ ### Log in before you have a schema
33
+
34
+ `mintUserSessionKey` accepts `controlPlaneOnly` as a third grant form, for
35
+ sessions that exist to prove identity to the dashboard and control surfaces
36
+ rather than to read or write data. An organization that has pushed no schema
37
+ can now complete `ablo login`, which is the very credential pushing requires;
38
+ the old circle (push needs keys, keys need login, login needed a schema) is
39
+ gone. Data sessions are unchanged, and a control-plane session holds no model
40
+ authority.
41
+
42
+ ### `connect apply` asks before it touches your database
43
+
44
+ The locate preflight runs before provisioning. When another plane of your
45
+ organization already holds the source, `connect apply` refuses with exit 1,
46
+ names `ablo connect deregister` as the way out, and leaves your database
47
+ exactly as it found it; the same conflict used to be discovered only after a
48
+ run had created roles and a publication. A connection string without a
49
+ password is refused at registration with the field named, instead of failing
50
+ later as a masked server error.
51
+
52
+ ### A CLI that says when a command does not exist
53
+
54
+ Typing a command the CLI does not recognize used to print the full help and
55
+ exit zero. It now fails with the name it did not recognize and, when a
56
+ plausible target exists, the command to use: a typo lands on the intended
57
+ command, and a wrong-but-reasonable name like `disconnect` points at
58
+ `ablo connect deregister`.
59
+
3
60
  ## 0.40.0
4
61
 
5
62
  ### The price is a contract, and the pricing page derives from it
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@abloatai/ablo",
3
- "version": "0.40.0",
3
+ "version": "0.42.0",
4
4
  "description": "The public Ablo SDK for coordinated reads, commits, claims, observation, and reactive applications.",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -124,8 +124,8 @@
124
124
  "directory": "packages/ablo"
125
125
  },
126
126
  "dependencies": {
127
- "@abloatai/humans": "^0.40.0",
128
- "@abloatai/transaction": "^0.40.0"
127
+ "@abloatai/humans": "^0.42.0",
128
+ "@abloatai/transaction": "^0.42.0"
129
129
  },
130
130
  "peerDependencies": {
131
131
  "ai": "^6.0.0 || ^7.0.0",