Commits
Strata analysis now runs on cloudy (local machine) via
scripts/strata-analyze.py, not in a Cloudflare Container. The script
fetches islands from the API, asks letta to produce structured prose
with semantic arrows (→, ←, ↔, ⇏), then uploads the results to
Cloudflare via PUT /api/strata/islands/:id/analysis.
The strata page renders prose with styled arrows showing relationships
between vertices — no canvas graph. Island cards link directly to the
strata page and show "View Strata" when analysis exists.
- Removed: AnalysisContainer durable object, container analysis endpoint,
CarryGraph class, apiPost helper, POST /api/strata/analyze
- Added: PUT /api/strata/islands/:id/analysis endpoint, strata column
in island_cache, scripts/strata-analyze.py, D1 migration
- Frontend: strata page shows prose with arrows, themes, tensions,
open questions, synthesis
👾 Generated with [Letta Code](https://letta.com)
Co-Authored-By: Letta Code <noreply@letta.com>
- Each island card on explore page now has a Strata button that
navigates to the island detail page
- org.latha.strata records now include island graph data (vertices
+ edges) so the record page can render the full constellation
- CarryGraph class renders the island network overlaid with carry
cross-reference nodes: network nodes are circles, carry nodes are
diamonds, carry links are dashed lines
- Legend in the graph canvas shows node types
- CSS for carry graph canvas, island card footer with Strata button
👾 Generated with [Letta Code](https://letta.com)
Co-Authored-By: Letta Code <noreply@letta.com>
Replace preemptive card analysis with island detection (connected
components from network.cosmik.connection records). Each island is
a cluster of linked URLs — the explore page shows islands as cards.
- Worker: detectIslands() BFS for connected components, /api/strata/islands
endpoint, Strata analyze creates org.latha.strata record in D1 and
returns at-uri, removed analyzeNewCards cron
- Container: analysis accepts island (vertices + edges) instead of
single source, cross-references entire cluster against vault + carry
- Frontend: island cards on explore page, Strata button runs analysis
and navigates to /strata?uri= record page, removed modal approach
- CSS: island-card, island-detail, strata-record styles
👾 Generated with [Letta Code](https://letta.com)
Co-Authored-By: Letta Code <noreply@letta.com>
Cloudflare Workers + Containers + Contrail appview that cross-references
Semble cards against local vault and carry data, producing org.latha.strata
synthesis records as stigmergic signals for the network.
- Worker (Hono) with Contrail indexing, connection graph, citation pipeline
- Container analysis engine: reads R2 vault+carry, extracts themes, finds
connections, detects tensions, generates open questions, synthesizes prose
- org.latha.strata lexicon with sourceRef, structuredAnalysis, carryCrossRef
- R2 sync endpoints and CLI script for vault + carry upload
- Frontend SPA with Strata analysis modal on cards and resources
- Per-DID container instances via Durable Objects (10m idle sleep)
👾 Generated with [Letta Code](https://letta.com)
Co-Authored-By: Letta Code <noreply@letta.com>
Strata analysis now runs on cloudy (local machine) via
scripts/strata-analyze.py, not in a Cloudflare Container. The script
fetches islands from the API, asks letta to produce structured prose
with semantic arrows (→, ←, ↔, ⇏), then uploads the results to
Cloudflare via PUT /api/strata/islands/:id/analysis.
The strata page renders prose with styled arrows showing relationships
between vertices — no canvas graph. Island cards link directly to the
strata page and show "View Strata" when analysis exists.
- Removed: AnalysisContainer durable object, container analysis endpoint,
CarryGraph class, apiPost helper, POST /api/strata/analyze
- Added: PUT /api/strata/islands/:id/analysis endpoint, strata column
in island_cache, scripts/strata-analyze.py, D1 migration
- Frontend: strata page shows prose with arrows, themes, tensions,
open questions, synthesis
👾 Generated with [Letta Code](https://letta.com)
Co-Authored-By: Letta Code <noreply@letta.com>
- Each island card on explore page now has a Strata button that
navigates to the island detail page
- org.latha.strata records now include island graph data (vertices
+ edges) so the record page can render the full constellation
- CarryGraph class renders the island network overlaid with carry
cross-reference nodes: network nodes are circles, carry nodes are
diamonds, carry links are dashed lines
- Legend in the graph canvas shows node types
- CSS for carry graph canvas, island card footer with Strata button
👾 Generated with [Letta Code](https://letta.com)
Co-Authored-By: Letta Code <noreply@letta.com>
Replace preemptive card analysis with island detection (connected
components from network.cosmik.connection records). Each island is
a cluster of linked URLs — the explore page shows islands as cards.
- Worker: detectIslands() BFS for connected components, /api/strata/islands
endpoint, Strata analyze creates org.latha.strata record in D1 and
returns at-uri, removed analyzeNewCards cron
- Container: analysis accepts island (vertices + edges) instead of
single source, cross-references entire cluster against vault + carry
- Frontend: island cards on explore page, Strata button runs analysis
and navigates to /strata?uri= record page, removed modal approach
- CSS: island-card, island-detail, strata-record styles
👾 Generated with [Letta Code](https://letta.com)
Co-Authored-By: Letta Code <noreply@letta.com>
Cloudflare Workers + Containers + Contrail appview that cross-references
Semble cards against local vault and carry data, producing org.latha.strata
synthesis records as stigmergic signals for the network.
- Worker (Hono) with Contrail indexing, connection graph, citation pipeline
- Container analysis engine: reads R2 vault+carry, extracts themes, finds
connections, detects tensions, generates open questions, synthesizes prose
- org.latha.strata lexicon with sourceRef, structuredAnalysis, carryCrossRef
- R2 sync endpoints and CLI script for vault + carry upload
- Frontend SPA with Strata analysis modal on cards and resources
- Per-DID container instances via Durable Objects (10m idle sleep)
👾 Generated with [Letta Code](https://letta.com)
Co-Authored-By: Letta Code <noreply@letta.com>