Repository navigation
Conversation
…deletes Artifacts can report lastPushAt as null after git pushes, so a sink that started cold (a new or evicted Durable Object) ran git init instead of cloning, built a new root commit, and every push after that was rejected as not a fast-forward. The sink now asks the remote whether the branch exists (listServerRefs) instead of trusting lastPushAt. Commits can also delete files now: a null file in SinkCommit removes that path. The smoke test covers both against a real repo. Co-Authored-By: Claude <noreply@anthropic.com>
demo/deck is the demo as slides. A deck agent (Code Mode plus codemode-git) keeps one program per slide in a deck-slides Artifacts repo, and the presenter renders slides from it. You chat with the agent to add, change, remove or reorder slides; every write runs the program in a fresh Dynamic Worker, checks the layout, and commits. The agent's own runs go to a deck-agent repo through GitHistoryConnector. Viewing is public. Editing goes through Cloudflare Access on /edit and /api/agent, and the Worker verifies the Access JWT itself. Design tokens live in src/design/tokens.css. npm run pdf saves an offline copy. Co-Authored-By: Claude <noreply@anthropic.com>
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
demo/deck: the demo as a slide deck, built and edited by a Code Mode agent. Each slide is a program in adeck-slidesArtifacts repo (slides/<id>.jsplus the spec it returns), and the presenter renders slides from that repo. In the chat panel you ask the agent to add, change, remove or reorder slides. Everyslides.writeruns the program in a fresh Dynamic Worker, checks the layout, and commits. The agent's own runs land in adeck-agentrepo throughGitHistoryConnector./editand/api/agent, and the Worker also verifies the Access JWT (signature, audience, expiry). Without Access configured, only localhost can edit.src/design/tokens.css.slide.cssstyles slide elements by class, and the layout checker reads its metrics from the same tokens. Slides fade in once, with no per-element animation.fix(sink)in@smithclay/codemode-git, as its own commit:lastPushAtnull after git pushes. A cold sink (a new or evicted Durable Object) then rangit init, built a new root commit, and had every push rejected as non-fast-forward. It now checks the remote's refs instead.nullinSinkCommit.files).The deck can also export to PDF for presenting offline (
npm run pdf -w demo/deck).Test plan
npm run typecheckandnpm testacross workspaceslastPushAtnull, and a deleteoutline.md, then edited, added, reordered and removed slides; checked in thedeck-slidesgit log/api/agentredirects to Access when signed out; a forged JWT gets 401