Skip to content

Placeholders read JSON without empty allowedTypes/deniedTypes - #50

Open
BuildCodelessly wants to merge 1 commit into
masterfrom
claude/relaxed-noether-3wtt92
Open

BuildCodelessly wants to merge 1 commit into
masterfrom
claude/relaxed-noether-3wtt92

Conversation

@BuildCodelessly

Copy link
Copy Markdown
Contributor

Follow-up to #45.

Layouts published from that branch before it merged with master left empty allowedTypes/deniedTypes out of placeholder JSON. Master's reader requires both, so republishing such a project failed while reading its existing published layouts:

variance_node.g.dart: type 'Null' is not a subtype of type 'List<dynamic>'

This reads a missing list as empty (@JsonKey(readValue: readTypesOrEmpty)). Writing is unchanged, and so are per-node defaults: a list view still denies nested lists.

Checks

  • Generated code regenerated.
  • dart format: no changes.
  • dart analyze --fatal-infos: no issues.
  • dart test: all 379 pass, including the new test/placeholder_types_missing_test.dart.
  • Republishing Crate Digger in the editor with this fix succeeded (site.publish to https://site.codelessly.com/crate-digger).

Generated by Claude Code

Layouts published before the merge with master left empty type lists out
of placeholder JSON; master's reader required them, so republishing a
project failed reading its published layouts (variance_node.g.dart:
type 'Null' is not a subtype of type 'List<dynamic>'). Read a missing
list as empty; writing and per-node defaults are unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013oMokUGNW6txknJs7xxTik
Sign up for free to 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.

2 participants