@jimhoyd/urlcode 0.4.6 → 0.4.8

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.
@@ -12,8 +12,30 @@
12
12
  "status": 301,
13
13
  "expectBody": ""
14
14
  },
15
+ {
16
+ "path": "/users/42",
17
+ "status": 308,
18
+ "expectHeaders": {
19
+ "location": "https://example.com/profiles/42"
20
+ }
21
+ },
22
+ {
23
+ "path": "/users/42/extra",
24
+ "status": 404
25
+ },
26
+ {
27
+ "path": "/users/42",
28
+ "method": "HEAD",
29
+ "status": 308,
30
+ "expectBody": ""
31
+ },
15
32
  {
16
33
  "path": "/missing",
17
34
  "status": 404
35
+ },
36
+ {
37
+ "path": "/docs",
38
+ "method": "DELETE",
39
+ "status": 405
18
40
  }
19
41
  ]
@@ -1,9 +1,19 @@
1
1
  version: "1"
2
2
  routes:
3
3
  /docs:
4
- description: Move documentation and preserve only the declared campaign key.
4
+ description: Permanent move, forwarding only the declared campaign key.
5
5
  redirect:
6
6
  url: https://example.com/documentation
7
7
  status: 301
8
8
  query:
9
9
  pass: [campaign]
10
+ /users/{id}:
11
+ description: Parameterized redirect; the id segment carries straight through.
12
+ parameters:
13
+ - name: id
14
+ in: path
15
+ required: true
16
+ schema: {type: string, minLength: 1, maxLength: 64}
17
+ redirect:
18
+ url: https://example.com/profiles/{id}
19
+ status: 308
@@ -34,6 +34,8 @@ When the MCP server was started with an operator host file, `get_extensions`
34
34
  returns installed extension configuration/policy schemas, declared project
35
35
  hook contracts, supported authoring surfaces and fast checks. Otherwise use `urlcode extensions --project DIR --host-file
36
36
  ABSOLUTE_HOST --json` when the operator has supplied that host file.
37
+ If the project commits `urlcode.extensions.lock.json`, call `get_extension_artifacts`, then `get_extension_artifact` for only the locked schema, example or README needed; without MCP, run `urlcode extension-artifacts inspect --project DIR --json` before reading its cache.
38
+ These are verified, inert authoring inputs, not proof of an installed executable extension. Fetch or update one only when the user requests that project change and names an immutable `extensions@v…` release.
37
39
  Without the server, run the CLI equivalents and read only the output:
38
40
 
39
41
  ```sh
@@ -22,7 +22,7 @@ static serving and authentication. Read this file before changing anything.
22
22
 
23
23
  When present, `.mcp.json` registers the read-only `urlcode mcp` server; prefer its
24
24
  tools (also `get_manifest`) to reading documents. Inspect `get_extensions` before
25
- replacing extension behavior. `--allow-authoring` is an operator opt-in; never add it.
25
+ replacing extension behavior. `--allow-authoring` is an operator opt-in; never add it. For a committed artifact lock, use `get_extension_artifacts`/`get_extension_artifact`; they expose verified inert data and never activate an extension.
26
26
 
27
27
  ## What the runtime provides (this version)
28
28