Fix SX client navigation: path-derived names, provide clash, component expansion

- inject_path_name: strip _islands/ convention dirs from path-derived names
- page-functions.sx: fix geography (→ ~geography) and isomorphism (→ ~etc/plan/isomorphic)
- request-handler.sx: rewrite sx-eval-page to call page functions explicitly
  via env-get+apply, avoiding provide special form intercepting (provide) calls
- sx_server.ml: set expand-components? on AJAX aser paths so server-side
  components expand for the browser (islands stay unexpanded for hydration)
- Rename 19 component references in geography/spreads, geography/provide,
  geography/scopes to use path-qualified names matching inject_path_name output

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-18 10:19:00 +00:00
parent 9e0de8831f
commit ac65666f6f
7 changed files with 400 additions and 264 deletions

View File

@@ -24,9 +24,7 @@
(define
geography
(fn
(content)
(if (nil? content) (quote (~geography/index-content)) content)))
(fn (content) (if (nil? content) (quote (~geography)) content)))
(define
applications
@@ -104,7 +102,7 @@
(slug)
(if
(nil? slug)
(quote (~geography/isomorphism))
(quote (~etc/plan/isomorphic))
(case
slug
"bundle-analyzer"