Skip to content

ladder: rung 3 -- polls - #91

Draft
Yaraslaut wants to merge 1 commit into
ladder-foundationfrom
ladder-polls
Draft

ladder: rung 3 -- polls#91
Yaraslaut wants to merge 1 commit into
ladder-foundationfrom
ladder-polls

Conversation

@Yaraslaut

Copy link
Copy Markdown
Member

What

Rung 3 of the application ladder: polls, anchored on Rallly. Split out of #41 into its own PR, targeting #88's ladder-foundation branch since it depends on the shared testkit/CMake infra there.

Draft until #88 merges — retarget to master and un-draft once it does.

Contents

examples/polls/ in full: PollModel (this ladder's BRIDGE_MODEL_KEY-shared/keyed model), DTOs, entity, schema migration, authorizer, server, Qt/QML GUI, and tests — 40 files.

Includes a fix folded in during review of the combined branch:

  • PollModel acquires connections from Lightweight::GlobalDataMapperPool() per execute() call rather than holding one for its own lifetime (WithMapper removed); applyVotes() (a private helper called from within execute() bodies that don't need to share its connection) makes its own independent acquisition.

Verification

Configured and built standalone against the ladder-foundation base with -DMORPH_LADDER_RUNGS=polls (no other rung present). Full suite passes: 557 assertions in 68 test cases (SQLite default). Spec-citation and test-type-name lints clean.

Split out of application-ladder (originally bundled with pastebin/
bookmarks and the shared foundation in #41) into its own PR against the
rung-0 foundation (#88). Includes the pool-migration fix folded in
during review of the combined branch:

- PollModel (this ladder's BRIDGE_MODEL_KEY-shared/keyed model) acquires
  connections from Lightweight::GlobalDataMapperPool() per execute()
  call rather than holding one for its own lifetime (WithMapper
  removed); applyVotes() (private helper, called from within execute()
  bodies that don't need to share its connection) makes its own
  independent acquisition.

Verified standalone against the ladder-foundation base: configures and
builds with -DMORPH_LADDER_RUNGS=polls and no other rung present. Full
suite passes: 557 assertions in 68 test cases (SQLite default).
Spec-citation and test-type-name lints clean.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@codecov

codecov Bot commented Aug 14, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

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