@jimhoyd/urlcode 0.4.6 → 0.4.7

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/README.md CHANGED
@@ -110,7 +110,7 @@ it. Cross-repository acceptance is tracked in
110
110
  ## Status
111
111
 
112
112
  <!-- urlcode-current-version:start -->
113
- The `0.4.6` release line brings core, UI, auth and admin to matching stable
113
+ The `0.4.7` release line brings core, UI, auth and admin to matching stable
114
114
  versions. A stable version selects the npm `latest` channel; it does not close
115
115
  the review and deployment evidence gaps below. `0.4.0-alpha.1`
116
116
  added the extension contract, capabilities and provider conformance, strict
@@ -153,9 +153,9 @@ All of it lives in [`docs/`](docs/README.md) in this repository — guides,
153
153
  references and recipes alongside the contributor and maintainer material: local
154
154
  development, CI, the release process, reviews and the generated field
155
155
  reference. New pages belong here, in the same pull request as the change they
156
- describe. `urlcode-docs`, a private repository that served a documentation site
157
- from its own copy of these pages, is being retired; the content that was ahead
158
- of this repository has been brought across.
156
+ describe. `urlcode-docs`, the separate documentation site repository, was
157
+ deleted on 2026-09-19 after any content ahead of this repository was brought
158
+ across.
159
159
 
160
160
  ## Start your own project
161
161
 
@@ -180,10 +180,30 @@ files are preserved; code placeholders return 501 until implemented.
180
180
  the TypeScript source; the separate `urlcode-auth` extension may have its own
181
181
  SQLite build requirement, unverified from this repository.
182
182
 
183
- ## Try it
183
+ ## Install
184
+
185
+ URLCode needs Node.js 22.13 or later. Pick the installation channel that fits
186
+ your environment:
184
187
 
185
188
  ```sh
189
+ # npm
186
190
  npm install --global @jimhoyd/urlcode@latest
191
+
192
+ # Homebrew
193
+ brew tap jimhoyd-com/urlcode
194
+ brew trust jimhoyd-com/urlcode
195
+ brew install urlcode
196
+
197
+ # Generic installer (downloads a release tarball and verifies its SHA-256)
198
+ curl -fsSL https://raw.githubusercontent.com/jimhoyd-com/urlcode/main/install.sh | sh
199
+ ```
200
+
201
+ For project-local installs, exact version pins, and provenance details, see
202
+ [the installation guide](docs/INSTALL.md).
203
+
204
+ ## Try it
205
+
206
+ ```sh
187
207
  urlcode init my-urls && cd my-urls
188
208
  urlcode dev
189
209
  ```
@@ -16,7 +16,7 @@
16
16
  "dist/capabilities.js": "bb98f5bbf54cc4e82fa197f999a621ad815273176f02692c35566886e2bb8777",
17
17
  "dist/capability-query.js": "9f68bc94901451d7b9ecdd3aee8c3376dca7f0b890e31d8205306cf8120dea86",
18
18
  "dist/catalog.js": "c378ef9bfd63b940790f6975f7db54557c2459722b65a7c170b97df24184bc52",
19
- "dist/cli.js": "c155fc50b1750dd0eda78ec3860f8855f6726e563d6d28632a6e54891e09b768",
19
+ "dist/cli.js": "e1c5fb1a09a420e905ccb760e826a2626f275fb6fa2890b15c36aaaf185b17d5",
20
20
  "dist/client-address.js": "9d0d01466aab23124330605c5a0e0f981f87c897858acfad909f546a63df165b",
21
21
  "dist/cloudflare.js": "17b43b0a6b6a0ef8a893415c989e4ae3976d97cc966adbf897b785f9adc472e3",
22
22
  "dist/compliance-rules/baseline.js": "6296dea6bcb9f9bb80ed6ed5ab2f456e7f74e6de2be5d2d98ca8c983fb4df3ab",
@@ -50,7 +50,7 @@
50
50
  "dist/manifest.js": "83eed0d59621039ef364cf6e7b54c5bd47e0d8cf0a5abe7b07344bfc1db56ed8",
51
51
  "dist/match.js": "53ebcc2cda529a8d07fb83f8cb69a1446036ffc1641af3c4bd45a55851bded28",
52
52
  "dist/mcp-authoring.js": "1183a56c5decb99ecb67a5da7bd91d1b494bc17a2965051aa63c4a7e291462b5",
53
- "dist/mcp.js": "28e6b98a394ae330d4310abc89e0e5a5210d2b892c9ecb3ac97345e765e584f8",
53
+ "dist/mcp.js": "2fe29baed673e10c5dbb0578c982e5d53837872976a5cd9f7e0a519d3eaf12db",
54
54
  "dist/observability.js": "f4b1ab496f051fe3ef2ed36b2b2e469c63a8940700e2df852e6ff2d9cccdd5ae",
55
55
  "dist/operator-host.js": "e3dac9d43a83beb775202b4ab9eeeba7ac63cebfc5dcc669be38d825be587bd0",
56
56
  "dist/pattern-guard.js": "6f157ced99666a89ca5af1418f5a14568d850985042dea309bf9ec0c19dbaca5",
package/dist/cli.js CHANGED
@@ -28,7 +28,7 @@ import { loadComplianceRules, profileNames as complianceProfiles } from './compl
28
28
  import { parseRouteSnapshot, diffRoutes, renderRouteDiff } from './route-diff.js';
29
29
  import { readFile } from 'node:fs/promises';
30
30
 
31
- const usage = `URLCode 0.4.6 — local/self-hosted runtime
31
+ const usage = `URLCode 0.4.7 — local/self-hosted runtime
32
32
  urlcode init <directory> [--template page] [--with ui,auth,admin] [--ack extension:id] [--manifest|--no-manifest] [--pin @scope/pkg=specifier]
33
33
  # --template page: the smallest project (urlcode.yaml, public/index.html, README.md, tests/requests.json), one page route; not combinable with --with
34
34
  # --with: layered site from installed @jimhoyd/urlcode-<name> packages, with a package.json pinning them exactly; --with is an unordered set, core orders the host from each extension's declared requirements and refuses a missing requirement, conflict or cycle before writing
package/dist/mcp.js CHANGED
@@ -91,7 +91,7 @@ export async function serveMcp(options ) {
91
91
  if(message.method==='initialize') {
92
92
  if(initialized){await error(id,-32600,'Already initialized');return;}
93
93
  if(typeof params.protocolVersion!=='string'||!object(params.capabilities)||!object(params.clientInfo)||typeof params.clientInfo.name!=='string'||typeof params.clientInfo.version!=='string'){await error(id,-32602,'Invalid initialize params');return;}
94
- initialized=true;await send({jsonrpc:'2.0',id,result:{protocolVersion,capabilities:{tools:{}},serverInfo:{name:'urlcode',version:'0.4.6'}}});return;
94
+ initialized=true;await send({jsonrpc:'2.0',id,result:{protocolVersion,capabilities:{tools:{}},serverInfo:{name:'urlcode',version:'0.4.7'}}});return;
95
95
  }
96
96
  if(message.method==='ping'){await send({jsonrpc:'2.0',id,result:{}});return;}
97
97
  if(!ready){await error(id,-32002,'Initialize first');return;}
package/llms-full.txt CHANGED
@@ -7,7 +7,7 @@
7
7
  > A portable runtime for programmable URL behavior, and the framework that grows
8
8
  > from it: routes in YAML, functions and middleware, then accounts, administration and
9
9
  > stored links as operator-installed extensions. Stable project format
10
- > `version: "1"`. Core is Apache-2.0; this revision is `0.4.6`. `function`/`middleware`
10
+ > `version: "1"`. Core is Apache-2.0; this revision is `0.4.7`. `function`/`middleware`
11
11
  > routes are trusted by default with `sandbox: true` as the per-route opt-in. The
12
12
  > auth, admin and ui extension packages in this repository are versioned at the same
13
13
  > revision; confirm what is published with `npm run release:status`.
@@ -727,7 +727,7 @@ programmatic compatibility analysis and provider verification limits.
727
727
  Source: https://github.com/jimhoyd-com/urlcode/blob/main/docs/YAML-GUIDE.md
728
728
 
729
729
  <!-- urlcode-current-version:start -->
730
- This guide targets URLCode 0.4.6. Start with the function example below,
730
+ This guide targets URLCode 0.4.7. Start with the function example below,
731
731
  then add only the fields your route needs. The authoritative machine-readable
732
732
  shape is [JSON Schema](https://github.com/jimhoyd-com/urlcode/blob/main/schemas/urlcode.schema.json); semantic rules are in the
733
733
  [specification](https://github.com/jimhoyd-com/urlcode/blob/main/docs/SPECIFICATION.md). Unsupported fields fail validation.
package/llms.txt CHANGED
@@ -4,7 +4,7 @@
4
4
  > A portable runtime for programmable URL behavior, and the framework that grows
5
5
  > from it: routes in YAML, functions and middleware, then accounts, administration and
6
6
  > stored links as operator-installed extensions. Stable project format
7
- > `version: "1"`. Core is Apache-2.0; this revision is `0.4.6`. `function`/`middleware`
7
+ > `version: "1"`. Core is Apache-2.0; this revision is `0.4.7`. `function`/`middleware`
8
8
  > routes are trusted by default with `sandbox: true` as the per-route opt-in. The
9
9
  > auth, admin and ui extension packages in this repository are versioned at the same
10
10
  > revision; confirm what is published with `npm run release:status`.
@@ -120,7 +120,7 @@ publish or comment on an issue without the user's explicit approval.
120
120
 
121
121
  ## Operations
122
122
  - [Operations](docs/OPERATIONS.md), [install](docs/INSTALL.md), [deployment checks](docs/DEPLOYMENT-CHECKS.md), [CI action](docs/CI.md).
123
- - [Readiness](docs/READINESS.md), [capacity](docs/CAPACITY.md), [performance](docs/PERFORMANCE.md), [resilience](docs/RESILIENCE.md), [observability](docs/OBSERVABILITY.md).
123
+ - [Readiness](docs/READINESS.md), [capacity](docs/CAPACITY.md), [resilience](docs/RESILIENCE.md), [observability](docs/OBSERVABILITY.md).
124
124
  - [Vercel](docs/VERCEL.md), [AWS](docs/AWS.md), [Cloudflare](docs/CLOUDFLARE.md): adapters with local conformance tests; no provider deployment verified yet.
125
125
  - [Static hosting](docs/STATIC.md): `urlcode build --target static` compiles redirects/pages/static/downloads to S3 + CloudFront objects and redirect metadata; no server, so function/middleware/extension/proxy/signals/conditions/parameters/bindings/policies are all refused; GitHub Pages is explicitly out of scope.
126
126
  - [Release readiness](docs/RELEASE-READINESS.md), [roadmap](ROADMAP.md): what is proven, what is planned.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jimhoyd/urlcode",
3
- "version": "0.4.6",
3
+ "version": "0.4.7",
4
4
  "description": "Portable runtime for programmable URL behavior",
5
5
  "type": "module",
6
6
  "workspaces": [
@@ -94,7 +94,6 @@
94
94
  "workspace:styles": "npm run styles --workspace @jimhoyd/urlcode-ui",
95
95
  "verify:workspaces": "npm run verify --workspace @jimhoyd/urlcode-ui && npm run verify --workspace @jimhoyd/urlcode-auth && npm run verify --workspace @jimhoyd/urlcode-admin && npm run verify --workspace @jimhoyd/urlcode-store && npm run audit:packages && npm run test:workspace-integration",
96
96
  "audit:packages": "node scripts/package-audit.ts --all",
97
- "benchmark": "node benchmarks/routing.ts",
98
97
  "test:package": "npm run build && npm run test:package:built",
99
98
  "dev": "node src/cli.ts dev --project starters/default",
100
99
  "serve": "node src/cli.ts serve --project starters/default",
@@ -110,9 +109,6 @@
110
109
  "docs:llms": "node scripts/build-llms-full.ts",
111
110
  "docs:cookbook-index": "node scripts/build-cookbook-index.ts",
112
111
  "check:downstream-skills": "node scripts/check-downstream-skill-drift.ts",
113
- "benchmark:bulk": "node benchmarks/bulk.ts",
114
- "benchmark:sandbox-vs-trusted": "node benchmarks/sandbox-vs-trusted.ts",
115
- "benchmark:agent": "node benchmarks/agent/run.ts",
116
112
  "sync:agents": "node scripts/sync-agent-lists.ts",
117
113
  "check:docs": "node scripts/check-trust-model-prose.ts && node scripts/check-version-statements.ts && node scripts/check-local-links.ts && node scripts/check-guidance-claims.ts && node scripts/generate-yaml-reference.ts --check && node scripts/build-llms-full.ts --check && node scripts/build-cookbook-index.ts --check && node scripts/generate-claude-plugin.ts --check",
118
114
  "ci:plan": "node scripts/ci-plan.ts",