Repository navigation
Publish garden episode proxies with listener views - #12
Conversation
codekiln
left a comment
There was a problem hiding this comment.
Please address the issues
Every gitpa proxy page now comes from logseq:entity:proxy:page:sync run against logseq-encode-garden main plus codekiln/logseq-encode-garden#192, which keeps the source checkout's path out of the manifest. Bodies were already identical to the garden; the run refreshed the sync date, brought the new Executable sync section of Logseq/Entity/Proxy/Page, and imported the task, its entity definitions and the import manifest. Mise now discovers the imported task from gitp-garden/mise-tasks. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Logseq rewrites (pull ?b [*]) to its block attribute list, which omits :block/name, so the published homepage view failed with "Cannot read properties of null (reading 'replace')". The query check now applies the same rewrite before running the query, and fails on the old query. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Vendors logseq:entity:proxy:page:sync from codekiln/logseq-encode-garden#193 and re-syncs every proxied page. Session and asset pages are unchanged; the entity definitions gain entity-proxy-destination-properties::. Refs #14 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
logseq:entity:proxy:page:sync --follow-embeds syncs a session with its embedded asset pages, so gitpa no longer needs its own sync. The page helpers the RSS and site builds share move to scripts/logseq_page.py. Closes #14 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Retire episode:sync in favor of the garden proxy sync task
The assets are workingIn my prior comments, I mentioned that gifs weren't showing up, mp3s weren't playing, and microfreak patches weren't downloading. All that is fixed. Great! Episode pages are still kind of a messAs of right now, the episode pages are still visually very confusing for humans viewing the pages:
Like I mentioned in my comment before, there way too many details in the episode pages. My expectation is that an average listener of synth music may, upon listening to an episode, click through to the episode page that looks immediately intelligible and obvious that they are the target audience for that page. They should see a simple page that shows a graphic (if applicable), that allows them to play the mp3 in the page, and that allows them to download the microfreak patches, without navigating to other pages. They might see a description.
Of course, these changes should be made to the "upstream" pages in logseq encode garden, then the local proxies should be updated from those changes. Also, in the upstream version, you should update the entity definition for a gitpa podcast episode to record these preferences. Then you should bring those changes from upstream into this PR, so that when I view this branch and worktree's garden in Logseq, I can verify that everything looks appropriately. |
Import direct media links and worktree-safe proxy sync from the upstream garden. Hide desktop publication properties and support direct recording links in RSS.
|
Updated the actual editable Gitpa garden for the requested listener simplification in e1d5ea0 — simplify synced listener episode pages. The four episode bodies and Podcast/Episode definition were synced from garden PR #198 with the imported Validation passed: offline tests, the real homepage query and live RSS metadata; the existing feed is unchanged. Anonymous media metadata and MP3 range responses succeed. Native desktop verification of the November 19 episode passed after graph refresh: artwork loaded, only the requested properties appeared, all direct preset links stayed on-page, and muted playback advanced before being paused. Other episode playback was not individually exercised. Agent --AI(gpt-6-unspecified Gitpa listener pages) |
There was a problem hiding this comment.
I don't think I've read about this idea of a .logseq-proxy/manifest.json yet. Where is it specified in the entities system documentation in logseq-encode-garden?
There was a problem hiding this comment.
The manifest was specified by PR #186 companion task contract on the Proxy Page entity and sync task reference. The current illustrated manifest explanation details the sections and update checks. Source PR #203 makes this easier to find with a dedicated Import manifest subsection in the entity definition; the Gitpa worker is importing that source through sync.
--AI(gpt-6-unspecified Proxy task import review)
| @@ -0,0 +1,269 @@ | |||
| """Import explicitly declared file tasks with conservative update ownership.""" | |||
There was a problem hiding this comment.
This docstring and this filename don't tell me what this file does. Please review my communication preferences and rules and revise.
There was a problem hiding this comment.
Source PR #203 renames the module to task_imports.py and describes the entity/task references it follows, the executable files it plans to import, and its manifest ownership checks. It updates the entrypoint, declared task-file mapping, and source links. A migration test runs the imported task after the rename and verifies repeat sync. The Gitpa worker is importing this fix through sync.
--AI(gpt-6-unspecified Proxy task import review)
| return hashlib.sha256(data).hexdigest() | ||
|
|
||
|
|
||
| def compatible_config(root): |
There was a problem hiding this comment.
Source PR #203 adds the docstring: the function reads the destination Mise configuration and requires an explicit includes list to contain mise-tasks; an absent setting uses Mise default task discovery. Tests cover accepted path variants, excluded task discovery, and malformed TOML. The Gitpa worker is importing the documented helper through sync.
--AI(gpt-6-unspecified Proxy task import review)




Episode pages now present the artwork, recording player, description and MicroFreak preset downloads directly in the editable Gitpa Logseq graph. The episode bodies and Podcast/Episode definition are imported through the real proxy sync task from garden PR #198 — simplify listener episode pages. Desktop
config.edndisplays onlylogseq-entityanddate-created; publication and proxy properties remain stored for querying, feed generation and future syncs.The imported sync task includes garden PR #199 — preserve proxy identity across worktrees. Imports from both dependency worktrees retain the registered graph name while source links identify the dependency branch. Re-sync from the registered garden checkout after the upstream PRs merge to refresh source links to main.
RSS accepts the direct recording link and retains support for older embedded recording pages. Existing episode GUIDs, publication times and
rss.xmlare unchanged. Website preparation retains selected-note filtering and the homepage lists public episodes by publication time.Validation: 23 offline Python tests pass, including direct recording and duplicate recording regressions; the actual Logseq homepage query passes with timezone and unpublished fixtures; live anonymous MP3 metadata passes
scripts/build_rss.py --check; source bodies and protected publication properties match the expected originals. The desktop property set leaves only the requested properties visible. Anonymous November artwork, recording and preset URLs return HTTP 200 with expected content types; the recording range probe returns HTTP 206 with an MP3 header. Native desktop verification of the November 19 episode passed after graph refresh: artwork loaded, onlydate-createdandlogseq-entitydisplayed, preset downloads stayed on the page, and muted playback advanced before being paused. Other episode playback was not individually exercised.Closes #13. Depends on garden PR #198 and PR #199 before publication.
--AI(gpt-6-unspecified Gitpa listener pages)