Skip to content

Harden configuration validation, toolbar selection, and regression coverage - #402

Merged
devmobasa merged 33 commits into
mainfrom
refactor/runtime-foundations
Oct 3, 2026
Merged

devmobasa merged 33 commits into
mainfrom
refactor/runtime-foundations

Conversation

@devmobasa

Copy link
Copy Markdown
Owner

Summary

Land the shared configuration, selection, runtime-error, and test infrastructure
changes before the session-persistence and clipboard-saving PRs.

This is a mixed foundation PR, not a config-only change.

Changes

Configuration validation

  • Normalize non-finite loaded values to safe defaults.
  • Share numeric bounds and click-highlight policy between the core app and configurator.
  • Add an independent float-field inventory covering NaN, infinities, nested values, and containers.
  • Preserve typed configuration conflict errors and clarify recovery behavior.
  • Keep successful configuration loads from rewriting authored files.

Toolbar selection

  • Resolve selected shapes once across property entries, text controls, and spotlight magnification.
  • Preserve selection order, missing-ID handling, and locked-text behavior.
  • Retain the tiny-selection fast path rather than hashing the entire frame.

Runtime errors and portal transport

  • Preserve broker error categories across local and socket failures.
  • Publish terminal session-dialog outcomes through the runtime controller.
  • Exercise portal subscription transactions against a private D-Bus service.
  • Replace broad dead-code suppression with narrowly documented exceptions.

Regression coverage and CI

  • Strengthen image-admission, PNG/PDF export, rendered highlighting, and input-effect tests.
  • Remove unnecessary test-only wrappers and duplicated fixture setup.
  • Restore test environments through shared guards and keep temporary files under owned guards.
  • Require Poppler for PDF artifact checks in CI.
  • Strengthen shared-layer dependency checks, including grouped imports and raw identifiers.
  • Discover domain sources recursively without relying on an exact source-file count.

@devmobasa
devmobasa merged commit 7c8d1fe into main Oct 3, 2026
3 checks passed
@devmobasa
devmobasa deleted the refactor/runtime-foundations branch October 5, 2026 12:49
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