mirror of
https://github.com/olehomelchenko/astrolabe.git
synced 2026-08-08 02:02:33 +00:00
Shell: one-shot #example-<id> deep link consumed at startup
This commit is contained in:
@@ -50,6 +50,16 @@ serializes the builder's no-datasets state only: an un-targeted builder open
|
||||
picks a dataset itself when any exist, so the derived view immediately
|
||||
self-corrects to the `dataset-build` form.
|
||||
|
||||
**One-shot action links are not view states.** A hash form that _requests an
|
||||
action_ (`#example-<id>`: add that gallery example and open it — spec §01E)
|
||||
stays out of the `ViewState` union: it is parsed by its own function in
|
||||
`url-hash.ts`, consumed once at startup (`orchestration/startup.ts`, after
|
||||
persistence wiring so the created record write-throughs, before `startRouting`),
|
||||
and then routing's settle step replaces the hash with the resulting view. It
|
||||
never serializes back and never participates in Back/Forward; `parseHash`
|
||||
degrades it like any unknown hash. Any future action link (e.g. a spec-payload
|
||||
link) follows the same shape rather than growing the view-state union.
|
||||
|
||||
### 1.2 The adapter: `infrastructure/url-hash.ts`
|
||||
|
||||
This is the only file that reads or writes `window.location` / `history`. It
|
||||
|
||||
Reference in New Issue
Block a user