scroll # Impress to Feed (Day 382) How a doc reachesthe World Feed — the distinction that bit ustoday, written down so it isn't relearned.Companion to [[Portal-Awakens.00382]] and[[Portal-API.00382]]. ## The two stores aredifferent - **`▲ xo impress <path>`**imports a file into **Hexocampus** — thesearchable / RAG corpus. It makes a doc*findable* (`xo_search`, `xo_read`), nothingmore. - **The feed reads Things in a feedring.** A doc only surfaces in the feed whenit's a `sapphire=scroll` Thing carrying a`diamond.ring` the feed renders (`orient`,`lumen`, `blacksmith`, …). Impressing ≠feeding. A bare impress lands in Hexocampuswith **no ring** → the feed has nothing toshow. That's exactly why `Color-Chain-Rebirth`appeared but `Portal-API` /`Postgres-Node-Topology` didn't: onlyColor-Chain was impressed with `--ring`. ##The recipe ``` ▲ xo impress <path> --ring<ring-name> --web ``` - `--ring <name>`resolves the ring by name → sets`diamond.ring` → feed visibility. **This isthe load-bearing flag.** - `--web` marks itweb-eligible. - Upsert is keyed on **`onyx`**(the filename). Re-impressing the samefilename **updates in place and adds the ring— no duplicate.** So it's safe to re-run onan already-impressed doc just to attach aring. ## The iCloud gotcha The Portal process**cannot read the iCloud / Obsidian folder**directly — macOS TCC returns `Operation notpermitted (os error 1)`. (`Color-Chain` onlyworked earlier because it was impressed*before* it moved into the iCloud `Orient/`folder.) When the source lives in iCloud,**stage a copy under `/Volumes/HEXCRAFT`first, then impress from there:** ``` cp"<iCloud path>/Name.00NNN.md"/Volumes/HEXCRAFT/Sacred-Lab/.scroll-impress-tmp/▲ xo impress/Volumes/HEXCRAFT/Sacred-Lab/.scroll-impress-tmp/Name.00NNN.md--ring orient --web rm -rf/Volumes/HEXCRAFT/Sacred-Lab/.scroll-impress-tmp``` Keep the filename identical — `onyx`(and therefore the feed display name) derivesfrom it. `file_path` just tracks origin;pointing it at a temp copy doesn't affect feedbehavior. ## Verify ``` GET/api/things?ring=ac1d91a9-ba40-491a-84e1-ce968752c861# orient ``` Confirm the doc shows`sapphire=scroll` and the right ring. Theorient ring id is`ac1d91a9-ba40-491a-84e1-ce968752c861`. ##Source -`Portal/rust/src/commands/hexocampus.rs` —`cmd_hexocampus_impress` (`--ring`/`--web`parse, ring-name→uuid resolve),`impress_single_file` (ring merge into`diamond`, upsert-by-onyx).