@aotter/mantle 0.1.0-alpha.2 → 0.1.0-alpha.3

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.
@@ -116,7 +116,8 @@ CDN cache overrides are removed.
116
116
 
117
117
  `mountPublicRoutes(...)` renders canonical D1 state and opts only successful HTML, markdown,
118
118
  `llms.txt`, and sitemap responses into the shared cache with
119
- `Cache-Control: public, max-age=0, s-maxage=300`. The top-level policy preserves
119
+ `Cache-Control: public, max-age=0, s-maxage=300` and the site-level
120
+ `Cache-Tag: mantle-public`. The top-level policy preserves
120
121
  that opt-in only for anonymous `GET`/`HEAD` responses with status 200, explicit
121
122
  shared freshness, no request `Cookie` or `Authorization`, and no response
122
123
  `Set-Cookie`. It also varies public responses by `Cookie` and `Authorization`.
@@ -124,7 +125,10 @@ shared freshness, no request `Cookie` or `Authorization`, and no response
124
125
  A starter-level Workers Cache may therefore store only responses that still
125
126
  meet that exact public contract. It must bypass credentialed/cookie requests
126
127
  and must never infer cacheability from a URL prefix. Cache entries remain
127
- version-local; cross-version caching is outside this contract.
128
+ version-local; cross-version caching is outside this contract. Successful
129
+ publishing-content and site-setting mutations purge `mantle-public` through
130
+ Cloudflare's native cache API. Operational records and immutable assets do not
131
+ purge the public render cache.
128
132
 
129
133
  Minimum auth/MCP behavior:
130
134
 
@@ -30,8 +30,9 @@ must not query Mantle-owned tables through `runtime.db`.
30
30
  - Cloudflare Workers Cache checks eligible anonymous responses before invoking
31
31
  the Worker. Cache keys are version-local, so a deploy starts with no stale
32
32
  response from the previous Worker version.
33
- - Site-setting and content writes only persist canonical state. They do not
34
- wait for render work or scan/delete cache prefixes.
33
+ - Successful publishing-content and site-setting writes purge the shared
34
+ `mantle-public` Cache-Tag through Cloudflare's native cache API. Operational
35
+ records and immutable assets stay outside that invalidation boundary.
35
36
  - Do not cache every repository read. Cross-isolate correctness for editable
36
37
  data wins unless a read has a measured hot-path contract and explicit
37
38
  invalidation.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aotter/mantle",
3
- "version": "0.1.0-alpha.2",
3
+ "version": "0.1.0-alpha.3",
4
4
  "description": "Umbrella entry for @aotter/mantle. Adopters install this one package and import from subpaths: /spec, /runtime, /cloudflare, /admin-ui. Sub-packages remain individually installable on npm for tooling and adapter authors.",
5
5
  "license": "Apache-2.0",
6
6
  "homepage": "https://mantle.tools/",
@@ -55,10 +55,10 @@
55
55
  "README.md"
56
56
  ],
57
57
  "dependencies": {
58
- "@aotter/mantle-cloudflare": "0.1.0-alpha.2",
59
- "@aotter/mantle-admin-ui": "0.1.0-alpha.2",
60
- "@aotter/mantle-runtime": "0.1.0-alpha.2",
61
- "@aotter/mantle-spec": "0.1.0-alpha.2"
58
+ "@aotter/mantle-admin-ui": "0.1.0-alpha.3",
59
+ "@aotter/mantle-runtime": "0.1.0-alpha.3",
60
+ "@aotter/mantle-spec": "0.1.0-alpha.3",
61
+ "@aotter/mantle-cloudflare": "0.1.0-alpha.3"
62
62
  },
63
63
  "peerDependencies": {
64
64
  "@cloudflare/workers-oauth-provider": "^0.8.2",