Skip to content

fix(mindmap): register Fallacy/Virtue MindMapDocumentConfig in CustomTypeProvider - #187

Merged
jsboige merged 1 commit into
masterfrom
fix/customtypeprovider-mindmap-subclasses
Apr 8, 2026
Merged

fix(mindmap): register Fallacy/Virtue MindMapDocumentConfig in CustomTypeProvider#187
jsboige merged 1 commit into
masterfrom
fix/customtypeprovider-mindmap-subclasses

Conversation

@jsboige

@jsboige jsboige commented Apr 8, 2026

Copy link
Copy Markdown
Contributor

Summary

  • DynamicExpressionParser is used to resolve CardFunc expressions like {mindMap.GetThumbnailsPath(item)} where mindMap is a concrete FallacyMindMapDocumentConfig or VirtueMindMapDocumentConfig instance.
  • GetThumbnailsPath is defined separately on each subclass (no polymorphic override on the base), so System.Linq.Dynamic.Core cannot resolve the method when only the base type is registered in CustomTypeProvider.
  • Result: ParseException: Methods on type 'FallacyMindMapDocumentConfig' are not accessible at runtime when the Mindmapper mode runs.

Fix

Register both subclasses alongside the base MindMapDocumentConfig in CustomTypeProvider.GetCustomTypes().

Context

Test plan

  • Build succeeds (0 errors)
  • Tests pass (31/31, 1 skipped Freeplane)
  • Mindmapper pipeline run no longer throws ParseException (to be verified on next pipeline run)

🤖 Generated with Claude Code

…ypeProvider

DynamicExpressionParser uses CardFunc expressions like
{mindMap.GetThumbnailsPath(item)} where mindMap is a concrete
FallacyMindMapDocumentConfig or VirtueMindMapDocumentConfig instance.
GetThumbnailsPath is defined separately on each subclass (no
polymorphic override on base class), so System.Linq.Dynamic.Core
cannot resolve the method when only the base type is registered,
throwing ParseException at runtime.

Fix: register both subclasses alongside the base MindMapDocumentConfig
in CustomTypeProvider.GetCustomTypes().

Bug identified by po-2023 during pipeline run #1 on 2026-04-08.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@jsboige
jsboige merged commit 893437f into master Apr 8, 2026
1 check passed
@jsboige
jsboige deleted the fix/customtypeprovider-mindmap-subclasses branch April 8, 2026 21:46
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.

1 participant