Skip to content

fix(atlas:item): harden publish (recreate deleted, guard empty, clearer errors) - #41

Merged
mayoalexander merged 1 commit into
devfrom
fix/atlas-item-publish-hardening
Jun 24, 2026
Merged

fix(atlas:item): harden publish (recreate deleted, guard empty, clearer errors)#41
mayoalexander merged 1 commit into
devfrom
fix/atlas-item-publish-hardening

Conversation

@mayoalexander

Copy link
Copy Markdown

Follow-up hardening to #40, found via stress-testing the publish flow.

Edge caseBeforeAfter
Re-sync a file whose item was deleted upstreamerrored forever (HTTP 500 No query results for model)recreates the item + rewrites frontmatter → stable re-sync preserved
Empty filepublished a blank public docrefused: "File has no content to publish"
Bad --bloqmisleading "try --bloq ""Bloq N not found or has no writable list."
--json failure pathssome returned silentlyalways emit error JSON

All verified live against prod (item recreated 150265→150266, frontmatter updated). Typecheck clean.

🤖 Generated with Claude Code

…, clearer errors
Stress-testing surfaced three gaps in 'atlas:item publish':
- Re-syncing a file whose item was deleted upstream errored forever (HTTP 500
'No query results for model'). Now detected → recreates the item and rewrites
the frontmatter with the new id, keeping the re-sync promise intact.
- Empty files silently published a blank public doc → now refused with a clear msg.
- Bad --bloq gave a misleading 'try --bloq <id>' → now 'Bloq N not found or has
no writable list.'
- createItem/updateItem failure paths now always emit JSON in --json mode.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@mayoalexander
mayoalexander merged commit 2eff240 into devJun 24, 2026
0 of 3 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@mayoalexander