@objectstack/service-datasource 9.11.0 → 10.0.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.
@@ -1,5 +1,5 @@
1
1
 
2
- > @objectstack/service-datasource@9.11.0 build /home/runner/work/framework/framework/packages/services/service-datasource
2
+ > @objectstack/service-datasource@10.0.0 build /home/runner/work/framework/framework/packages/services/service-datasource
3
3
  > tsup
4
4
 
5
5
  CLI Building entry: src/index.ts, src/contracts/index.ts
@@ -10,19 +10,19 @@
10
10
  CLI Cleaning output folder
11
11
  ESM Build start
12
12
  CJS Build start
13
- ESM dist/index.js 35.43 KB
13
+ ESM dist/index.js 45.58 KB
14
14
  ESM dist/contracts/index.js 33.00 B
15
- ESM dist/index.js.map 88.79 KB
15
+ ESM dist/index.js.map 110.99 KB
16
16
  ESM dist/contracts/index.js.map 71.00 B
17
- ESM ⚡️ Build success in 1016ms
18
- CJS dist/index.cjs 43.69 KB
17
+ ESM ⚡️ Build success in 1186ms
18
+ CJS dist/index.cjs 55.09 KB
19
19
  CJS dist/contracts/index.cjs 47.00 B
20
+ CJS dist/index.cjs.map 93.99 KB
20
21
  CJS dist/contracts/index.cjs.map 265.00 B
21
- CJS dist/index.cjs.map 75.45 KB
22
- CJS ⚡️ Build success in 1063ms
22
+ CJS ⚡️ Build success in 1190ms
23
23
  DTS Build start
24
- DTS ⚡️ Build success in 16885ms
25
- DTS dist/index.d.ts 19.19 KB
24
+ DTS ⚡️ Build success in 16306ms
25
+ DTS dist/index.d.ts 20.60 KB
26
26
  DTS dist/contracts/index.d.ts 8.10 KB
27
- DTS dist/index.d.cts 19.19 KB
27
+ DTS dist/index.d.cts 20.60 KB
28
28
  DTS dist/contracts/index.d.cts 8.10 KB
package/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # @objectstack/service-external-datasource
2
2
 
3
+ ## 10.0.0
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [d7ff626]
8
+ - Updated dependencies [2a1b16b]
9
+ - Updated dependencies [e16f2a8]
10
+ - Updated dependencies [e411a82]
11
+ - Updated dependencies [a581385]
12
+ - Updated dependencies [d5f6d29]
13
+ - Updated dependencies [220ce5b]
14
+ - Updated dependencies [3efe334]
15
+ - Updated dependencies [feead7e]
16
+ - Updated dependencies [6ca20b3]
17
+ - Updated dependencies [5f875fe]
18
+ - Updated dependencies [b469950]
19
+ - @objectstack/spec@10.0.0
20
+ - @objectstack/core@10.0.0
21
+
3
22
  ## 9.11.0
4
23
 
5
24
  ### Patch Changes
package/README.md CHANGED
@@ -33,6 +33,40 @@ layered on by a private host **without forking**.
33
33
 
34
34
  The runtime admin owns only the `origin: 'runtime'` lifecycle.
35
35
 
36
+ ## REST routes
37
+
38
+ Mounted under `/api/v1/datasources` by `registerDatasourceAdminRoutes` (lifecycle
39
+ + introspection) and the federation routes by the external service. Every route
40
+ degrades gracefully (`503` / "unavailable") when its service isn't wired.
41
+
42
+ **Lifecycle & connection**
43
+ - `GET /datasources` — list (code + runtime, with provenance/health)
44
+ - `GET /datasources/drivers` — driver catalog + per-driver JSON-Schema `configSchema` (drives the Studio connection form)
45
+ - `GET /datasources/:name` — one datasource's detail, **credential-stripped** (`config` + `hasSecret`)
46
+ - `POST /datasources` — create a runtime datasource
47
+ - `PATCH /datasources/:name` — update a runtime datasource
48
+ - `DELETE /datasources/:name` — remove a runtime datasource (blocked while objects are bound)
49
+ - `POST /datasources/test` — probe an unsaved draft (inline body)
50
+ - `POST /datasources/:name/test` — probe a **saved** datasource by name (backs the `test_connection` action)
51
+
52
+ **Introspection / sync (read-only)**
53
+ - `GET /datasources/:name/remote-tables` — list remote tables
54
+ - `POST /datasources/:name/object-draft` — generate an object definition draft for one table (no persistence)
55
+ - federation import/validate/refresh routes under `/datasources/:name/external/*` (ADR-0015)
56
+
57
+ Credentials never travel in `config`: a `format:'password'` field is split into
58
+ the top-level `secret` on write (encrypted to `sys_secret`), and reads never
59
+ echo it (`hasSecret` only).
60
+
61
+ ## Studio integration
62
+
63
+ `datasource` is a metadata type, so it is administered through the generic
64
+ metadata-admin engine (not a bespoke page): the `DatasourceAdminServicePlugin`
65
+ contributes a **Datasources** entry to the Setup app's `group_integrations` nav
66
+ slot (→ the engine route `…/component/metadata/resource?type=datasource`), where
67
+ the list/create/edit/test/**sync objects**/delete UI lives. Runtime records are
68
+ persisted to `sys_metadata` and restored (pools rehydrated) on restart.
69
+
36
70
  ## Exports
37
71
 
38
72
  - Federation: `ExternalDatasourceService`, `ExternalDatasourceServicePlugin`.