@zackbart/connecta 0.16.1 → 0.17.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.
- package/CHANGELOG.md +102 -0
- package/dist/catalog-service.d.ts +4 -0
- package/dist/catalog-service.js +8 -1
- package/dist/catalog.js +114 -12
- package/dist/errors.d.ts +4 -6
- package/dist/execute.d.ts +5 -0
- package/dist/execute.js +229 -161
- package/dist/invocation.js +3 -1
- package/dist/meta-tools.d.ts +4 -0
- package/dist/meta-tools.js +46 -14
- package/dist/operator-ui/generated.d.ts +1 -1
- package/dist/operator-ui/generated.js +1 -1
- package/dist/operator-ui/model.d.ts +3 -1
- package/dist/providers/mixpanel.d.ts +3 -5
- package/dist/providers/mixpanel.js +73 -5
- package/dist/providers/stripe.d.ts +2 -2
- package/dist/providers/stripe.js +13 -11
- package/dist/registry.d.ts +32 -9
- package/dist/registry.js +217 -33
- package/dist/routes/mcp.js +6 -0
- package/dist/skills.d.ts +4 -0
- package/dist/skills.js +157 -18
- package/dist/types.d.ts +14 -2
- package/dist/ui.js +4 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/documentation/architecture.md +7 -4
- package/documentation/code-mode.md +45 -53
- package/documentation/connector-guides.md +24 -19
- package/documentation/connectors.md +13 -1
- package/documentation/meta-tools.md +26 -17
- package/documentation/mixpanel.md +20 -0
- package/documentation/operations.md +21 -18
- package/documentation/operator-ui.md +12 -2
- package/documentation/provider-audit.md +3 -3
- package/documentation/provider-conventions.md +26 -13
- package/documentation/stripe.md +45 -14
- package/documentation/upgrading.md +28 -4
- package/ethos.md +3 -3
- package/examples/worker/README.md +4 -3
- package/package.json +1 -1
- package/templates/node/package.json +1 -1
package/ethos.md
CHANGED
|
@@ -49,8 +49,8 @@ order, and amending it is a design decision, not a drive-by edit.
|
|
|
49
49
|
changes declared capability, no policy engine, no approvals, no pauses.
|
|
50
50
|
- **Not a schema ingester.** No OpenAPI or GraphQL → tools. Generated tool
|
|
51
51
|
sprawl is the disease the meta-tools treat, not a feature to add.
|
|
52
|
-
- **Not multi-tenant.** No
|
|
53
|
-
|
|
52
|
+
- **Not multi-tenant.** No Connecta account model, per-user credential store, or org hierarchy; credentials, storage, admission, and health stay connector-scoped.
|
|
53
|
+
Provider-owned sessions may expose provider-native account scope only through live schemas. Metadata never proves account identity; Connecta never invents or normalizes selectors, and ambiguity stops.
|
|
54
54
|
- **Not stateful.** No protocol sessions, no server push. Scope resolves per
|
|
55
55
|
request — which is also where the MCP spec itself has now arrived.
|
|
56
56
|
- **Not a nanny.** Credentials fail loudly at use; connecta never probes one.
|
|
@@ -97,6 +97,7 @@ proposing one without a new argument is not.
|
|
|
97
97
|
| MRTR / `input_required` passthrough | gated | statelessly relayable via `requestState`, but no host or downstream emits it yet; fails loudly until adoption evidence ([#176](https://github.com/zackbart/connecta/issues/176)) |
|
|
98
98
|
| Native Tasks for oversized results | refused | tasks solve duration, `get_result` solves size; paging on a polling extension adds round trips for nothing ([#176](https://github.com/zackbart/connecta/issues/176)) |
|
|
99
99
|
| Downstream `ttlMs` cache hints | gated | fixed TTL + fingerprint is battle-tested and catalog reads are ~3 ms; earns its way in with refresh-churn evidence ([#176](https://github.com/zackbart/connecta/issues/176)) |
|
|
100
|
+
| Inbound-demand catalog stale-while-revalidate | accepted | an agent-facing catalog read may return a complete, fingerprint-verified entry inside its configured stale window and move the refresh that same read demanded onto the runtime's existing deferred-work channel; this originates no timer, schedule, warmup, or credential probe, and operator status remains blocking — one refresh per connector is shared across agent and operator requests, a deferred owner uses a fresh bounded signal and connector scope and closes that scope, and invalidation is rechecked before stale publication, so no request-bound capability survives and no partial or pre-invalidation catalog gains authority ([#396](https://github.com/zackbart/connecta/issues/396)) |
|
|
100
101
|
| Rich program output (`connecta.emit`) | accepted | one host-collected emission channel: programs emit strictly validated text/image/audio blocks, delivered after the result envelope on success only; budgets fail loudly at the emit call ([design record](./documentation/rich-output-design.md), [#267](https://github.com/zackbart/connecta/issues/267)) |
|
|
101
102
|
| Result-channel widening of the `Executor` contract | refused | `ExecuteResult` stays `{ result, error?, logs? }` — structural compatibility with `@cloudflare/codemode` is the parity guarantee; emission rides the provider bridge instead ([#267](https://github.com/zackbart/connecta/issues/267)) |
|
|
102
103
|
| Guest-emitted `resource` / `resource_link` blocks | refused | a program can never mint a URI a client may dereference, and the carve-out this row waited on does not need one: `connecta.ui` takes HTML content, and the only `ui://` URI is connecta's build-time shell ([design record](./documentation/mcp-ui-design.md), [#266](https://github.com/zackbart/connecta/issues/266), [#267](https://github.com/zackbart/connecta/issues/267)) |
|
|
@@ -108,7 +109,6 @@ proposing one without a new argument is not.
|
|
|
108
109
|
| View-initiated mutation calls from program UI | gated | live-read utility says nothing about write consent: a click is not approval, stale/replayed effects need a host-tested story, and the ordinary destructive path keeps the action in the transcript ([#287](https://github.com/zackbart/connecta/issues/287)) |
|
|
109
110
|
| Result sampling on the catalog surface (`sample` / `dryRun`) | refused | sampling is execution and cannot ride a catalog read; most tools carry required arguments no sampler can invent, and undeclared `outputSchema` (measured 0/30 and 3/30 on real deployments) is a real gap that is not a sampleable one — a program that checks the shape before rendering already hands back the first record inside the run it was going to make anyway, at zero new surface ([#282](https://github.com/zackbart/connecta/issues/282)) |
|
|
110
111
|
| Legacy embedded `UIResource` delivery | refused | superseded upstream and rendered by none of the clients connecta faces; per-request minted URIs also fight the caching the Apps spec assumes ([#266](https://github.com/zackbart/connecta/issues/266)) |
|
|
111
|
-
|
|
112
112
|
## Invariants
|
|
113
113
|
|
|
114
114
|
One line each; the enforcing tests live beside the subsystem documentation.
|
|
@@ -152,9 +152,10 @@ The required Worker Loader binding is checked into `wrangler.jsonc`:
|
|
|
152
152
|
"worker_loaders": [{ "binding": "LOADER" }]
|
|
153
153
|
```
|
|
154
154
|
|
|
155
|
-
`src/index.ts` constructs `DynamicWorkerExecutor`
|
|
156
|
-
the seven-tool surface.
|
|
157
|
-
|
|
155
|
+
`src/index.ts` constructs `DynamicWorkerExecutor` with only `env.LOADER` and
|
|
156
|
+
serves the seven-tool surface. Do not add `bindings`, `modules`, or
|
|
157
|
+
`globalOutbound`; they grant guest code ambient authority. A copied deployment
|
|
158
|
+
owns the package install — see
|
|
158
159
|
[copied into its own repository](#copied-into-its-own-repository).
|
|
159
160
|
|
|
160
161
|
## Activity history (optional)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zackbart/connecta",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.17.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"description": "One MCP to rule them all — a single MCP endpoint aggregating many downstream connectors behind a code-first surface of seven meta-tools.",
|