Zum Inhalt

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Unreleased

1.7.1 - 2026-06-02

Fixed

  • Android release build for Flutter 3.44 / Kotlin 2.0
  • Embedded probability estimates in import files (v1 format, as used by the bundled sample data) are no longer silently dropped; they are converted into a direction plus confidence level (#111)
  • Resolving a question twice (e.g. by double-tapping) could create duplicate resolutions that permanently crashed the detail and statistics screens for that question. Resolutions are now unique per question (schema v6 deduplicates existing data) and resolving again updates the existing entry (#108)
  • Restoring a backup is now atomic: if the backup file turns out to be corrupt mid-restore, the existing data is kept instead of being lost (#105)
  • Brier score on the dashboard and in the feedback sheet now uses the same direction-based semantics as the statistics screen; the three displays no longer contradict each other (#104)
  • Deadline reminders were scheduled in UTC instead of the device time zone; the 9:00 reminder now fires at 9:00 local time (#103)
  • Winkler score now uses the error tolerance (α = 1 − confidence level) instead of the confidence level itself, matching the standard interval score (Gneiting & Raftery). Missed intervals with high confidence are now penalized harder, not milder. Displayed historical Winkler values change accordingly; no data migration is required (#102)

1.7.1-beta.1 - 2026-06-01

Added

  • MIT LICENSE file with full license text; linked from README
  • "Über Mich" page with humanist values and personal stance (#96)

1.7.0 - 2026-03-07

Added

  • Fullscreen charts support x-axis zoom and pan via pinch gesture; double-tap resets the view; axis labels recalculate for the visible range (#91)
  • Category (Epistemisch/Aleatorisch) and prediction type (Wahrscheinlichkeit, Ja/Nein, Faktual, Intervall) filter chips in the prediction list; chips appear only when relevant (#93)
  • Overdue filter chip cycles through three states: no filter, overdue only, not overdue only
  • Manual import shows full checkbox list with per-question selection; duplicates are pre-deselected, struck through, and non-selectable; imported count shown on button and success card (#94)

Fixed

  • Back navigation from a Winkler Score prediction detail now returns to the fullscreen chart in its previous zoom state (#91)
  • Factual prediction type missing from type filter chips (#93)
  • Overdue filter had no effect on the resolved tab (#93)

1.7.0-beta.7 - 2026-03-07

Fixed

  • Factual prediction type missing from type filter chips (#93)
  • Overdue filter chip had no effect on the resolved tab (#93)

1.7.0-beta.6 - 2026-03-07

Added

  • Manual import shows full checkbox list with per-question selection; duplicates are pre-deselected, struck through, and non-selectable (#94)
  • Import button and post-import success card show actual imported question count for both manual and AI import (#94)

1.7.0-beta.5 - 2026-03-07

Added

  • Overdue filter chip cycles through three states: no filter, overdue only, not overdue only

1.7.0-beta.4 - 2026-03-07

Added

  • Category (Epistemisch/Aleatorisch) and prediction type (Wahrscheinlichkeit, Ja/Nein, Intervall) filter chips in the prediction list; chips appear only when relevant (#93)

1.7.0-beta.3 - 2026-03-07

Fixed

  • Back navigation from a Winkler Score prediction detail now returns to the fullscreen chart in its previous zoom state (#91)

1.7.0-beta.2 - 2026-03-07

Added

  • Fullscreen charts support x-axis zoom and pan via pinch gesture; double-tap resets the view; axis labels recalculate for the visible range (#91)

1.6.0 - 2026-03-07

Fixed

  • Winkler Score data point links now active only in the fullscreen detail view, not on the summary chart; any tap on the summary chart opens fullscreen, consistent with Brier and Log Loss (#90)

1.5.0 - 2026-03-07

Added

  • Winkler Score chart: tapping a data point opens the corresponding prediction detail; back navigation returns to statistics (#90)

1.4.2 - 2026-03-06

Fixed

  • Winkler Score chart y-axis is now logarithmic; scores spanning multiple orders of magnitude are readable without visual compression of small values (#89)

1.4.1 - 2026-03-06

Fixed

  • Replace misleading Winkler Score mean card with a per-estimate scatter chart; dots coloured green (hit) and red (miss) (#88)

1.4.0 - 2026-03-06

Added

  • Winkler Score for interval predictions on the statistics screen; shows mean interval score and hit rate (#88)

Fixed

  • Template share buttons now write to a temporary file before sharing; XFile.fromData() produced no valid URI for Android share intents (#81)

1.3.0 - 2026-03-06

Added

  • AES-256-GCM encrypted full backup with PBKDF2-SHA256 key derivation; create and restore .kbak files from Settings (#85)
  • Delete button in prediction detail screen AppBar with confirmation dialog (#87)
  • Per-tab sort direction persisted via SharedPreferences; each tab remembers its own sort order across sessions (#86)
  • Skip duplicate questions by default on import; configurable toggle in the import screen (#84)
  • Full multi-select list in AI generator preview, all pre-selected; replaces the static "first 5" preview (#83)
  • YAML template buttons for each prediction type in import screen
  • Share button in prediction list view; exports the active tab as JSON
  • Tag chip selector on new-prediction screen
  • Preselect existing tags in the bulk-edit dialog
  • "Ohne Tag" filter chip in statistics screen
  • Exact 5 % steps in calibration chart x-axis

Fixed

  • Invalid confidence values (< 0.5) in documentation examples (#82)

1.2.0 - 2026-03-05

Breaking Changes

  • Database schema updated; migration runs automatically on first launch. Downgrading to v1.0.0 is not supported without data loss.

Added

  • Overdue indicator on home screen stat cards; cards turn red with a warning icon when unresolved predictions have passed their deadline (#54)
  • "Überfällig" filter chip in prediction list to show only overdue predictions across open and pending tabs (#55)
  • Delete button in resolve screen AppBar with confirmation dialog (#56)
  • Sort order toggle in prediction list; reverses per-tab default (open/pending: oldest first; resolved: newest first) (#57)
  • Tag selection via FilterChips in the AI generator (#68)
  • Calendar toggle in pending tab AppBar to sort by deadline; entries without a deadline stay at the end regardless of direction
  • Global tag manager in Settings to delete tags from all predictions at once, with per-tag confirmation dialog (#70)
  • "Ohne Tag" filter chip in prediction list; visible only when untagged entries exist, visually distinct via secondary-color border (#72)
  • Rename action in global tag manager; inline dialog with pre-filled name, updates all predictions at once (#73)
  • Confidence slider snaps to 5 % steps from 50 to 100 % (#71)

Fixed

  • Interval confidence slider minimum raised to 50 % (#67)
  • Calibration dot size scaled proportionally to the most-populated bin instead of a hard clamp (#69)
  • Type cast error in v3 schema migration (#73)

1.2.0-beta.1 - 2026-03-05

Added

  • "Ohne Tag" filter chip in prediction list; visible only when untagged entries exist, visually distinct via secondary-color border (#72)
  • Rename action in the global tag manager; inline dialog with pre-filled name, updates all predictions at once (#73)
  • Confidence slider now snaps to 5 % steps from 50 to 100 %; one-time startup migration rounds existing values (#71)

Fixed

  • Type cast error in v3 schema migration (addColumn expected GeneratedColumn<Object>) (#73)

1.1.1-beta.1 - 2026-03-05

Added

  • Calendar toggle in the pending tab AppBar to sort by deadline; entries without a deadline stay at the end regardless of direction
  • Global tag manager in Settings to delete tags from all predictions at once, with per-tag confirmation dialog (#70)

1.1.0-beta.1 - 2026-03-05

Added

  • Overdue indicator on home screen stat cards; cards turn red with a warning icon when unresolved predictions have passed their deadline (#54)
  • "Überfällig" filter chip in prediction list to show only overdue predictions across open and pending tabs (#55)
  • Delete button in resolve screen AppBar with confirmation dialog (#56)
  • Sort order toggle in prediction list; reverses per-tab default (open/pending: oldest first; resolved: newest first) (#57)
  • Tag selection via FilterChips in the AI generator, sourced from existing database tags (#68)

Fixed

  • Interval confidence slider minimum raised to 50 %; calibration bins restructured to cover 50–100 % range (#67)
  • Calibration dot size scaled proportionally to the most-populated bin instead of a hard clamp (#69)

1.0.0 - 2026-03-04

First stable release of Kailibrate. All features from the v0.20–v0.28 beta cycle are considered production-ready. The database schema (v5), import/export format (v2), and public API surface are now stable; breaking changes will follow semver and require a major version bump.

0.28.0 - 2026-03-04

Added

  • AI-powered question catalog generator via OpenRouter; configurable prompt templates, question count (5/10/15/20), and model selection
  • API key for OpenRouter stored securely; write-only after saving (#40)
  • Preview screen before AI import with share-as-obfuscated-JSON option
  • Tags input in AI generator restricts LLM-assigned labels (#36)
  • Generation cost and token count shown after each AI run (#39, #50)
  • Configurable model list (one per line); selection persists per session
  • Aleatory AI templates for binary and interval predictions (#46)
  • {date} placeholder in aleatory templates for future-only deadlines
  • Warning and exclusion checkbox for past-deadline questions in preview
  • New factual prediction type for epistemic Wahr/Falsch questions (#43)
  • Wahr/Falsch UI in estimate, resolve, feedback, card, and detail views (#43)
  • Deadline shown on prediction cards with color-coded urgency (#48)
  • Deadline editing from detail view for open/pending predictions (#47)
  • "Überfällig" badge for overdue predictions (#47)
  • Binary confidence slider restricted to 50–99 % (#33)
  • Default prompt templates can be deleted and recovered (#34)

Changed

  • probability type replaced by binary (aleatory) and factual (epistemic); import parser remaps legacy entries; schema migrated to v5 (#45)
  • Tapping any prediction card opens detail view; primary action via FAB (#47)
  • Mixed AI template removed in favour of focused aleatory templates (#46)
  • Docs restructured with why/what/how narrative and new concept pages

Fixed

  • Calibration scores use directional confidence for binary/factual predictions; correct "99 % FALSCH" appears in 99 % bin, not 1 % (#52)
  • Resolution outcome hidden in detail view until user has estimated (#51)
  • Generation cost shown prominently on AI import success screen (#50)
  • Settings navigation in AI generator corrected (#31)
  • AI import preview no longer reveals resolution icons (#32)
  • Yes/no prompts set predictionType "binary" correctly (#35)
  • Binary feedback shows actual Ja/Nein answer below verdict (#42)
  • Binary correctness based on binaryChoice == outcome (#41)

0.28.0-beta.1 - 2026-03-04

Fixed

  • Calibration curve and scores now use directional confidence for binary/factual predictions; a "99 % FALSCH" estimate that was correct now appears in the 99 % bin, not the 1 % bin (#52)

0.27.0-beta.1 - 2026-03-04

Fixed

  • Generation cost and token count now shown prominently above the success icon after AI import (#50)
  • Resolution outcome hidden in detail view until user has estimated; shows locked indicator instead (#51)

0.26.0-beta.1 - 2026-03-04

Changed

  • Restructured docs with why/what/how narrative flow
  • New Konzepte page covering calibration, categories, types, and states
  • New KI-Generator page with step-by-step usage guide
  • Removed deprecated probability type from examples
  • Fixed stale navigation description in prediction workflow

0.25.0-beta.1 - 2026-03-04

Added

  • Warning in AI generator preview when questions have past deadlines
  • Checkbox to exclude past-deadline questions before import
  • {date} placeholder in aleatory prompt templates so the model generates future-only deadlines

0.24.0-beta.1 - 2026-03-04

Added

  • Deadline shown on prediction cards with color-coded urgency: red for overdue, orange for due within 7 days (#48)

0.23.0-beta.1 - 2026-03-04

Added

  • Deadline can be set, changed, or cleared from the detail view for open and pending predictions (#47)
  • Overdue open/pending predictions flagged with "Überfällig" badge in the overview (#47)

Changed

  • Tapping any prediction card now opens the detail view; primary action (Schätzen/Auflösen) surfaced via FAB for non-resolved predictions (#47)

0.22.0-beta.1 - 2026-03-04

Added

  • Aleatory AI templates for binary (Ja/Nein) and interval predictions on future events without known answers (#46)

Changed

  • probability prediction type removed; replaced by binary (aleatory) and factual (epistemic) throughout the app (#45)
  • Import parser remaps legacy probability entries to binary/factual based on category; schema migrated to v5 (#45)
  • Stats and feedback screens updated to reflect new type set (#44, #45)
  • Mixed AI template removed in favour of the two focused aleatory templates (#46)
  • LLM prompt docs and type reference updated (#45, #46)

0.21.0-beta.5 - 2026-03-04

Added

  • New 'factual' predictionType for epistemic Wahr/Falsch questions, distinct from 'binary' (Ja/Nein) used for aleatory events (#43)
  • Wahr/Falsch buttons in estimate, resolve, feedback, card, and detail views for factual questions (#43)

Changed

  • DB migration v4 converts existing epistemic binary entries to factual (#43)
  • New-prediction screen shows Wahr/Falsch segment only for epistemic category; Ja/Nein stays for aleatory (#43)
  • Default AI prompt template updated to use predictionType "factual" (#43)

Fixed

  • Binary feedback banner now shows actual Ja/Nein answer below Richtig/Falsch verdict (#42)

0.21.0-beta.4 - 2026-03-04

Fixed

  • Yes/no questions now show green for a correct "Nein" prediction; color and icon are based on binaryChoice == outcome instead of outcome alone (feedback banner, prediction card, detail view) (#41)

0.21.0-beta.3 - 2026-03-04

Added

  • Tags input in AI generator: restricts which labels the LLM assigns to generated questions, for consistent in-app filtering (#36)
  • Generation cost and token count shown in the preview after each run (#39)
  • Info icon in model settings links to openrouter.ai/models (#37)
  • Clipboard copy button for the model list (#37)

Changed

  • Model list editor replaced with a multiline text field (one model per line); easier to manage and paste from (#37)
  • Selected model is persisted and restored on next session (#38)
  • API key is now write-only: after saving, only bullet placeholders are shown with an "Ändern" button (#40)

Fixed

  • Yes/no question prompts (default and mixed templates) now correctly set predictionType: "binary" so the binary estimate UI is shown after import (#35)

0.21.0-beta.2 - 2026-03-03

Added

  • Default prompt templates can now be deleted; they are hidden via a per-device suppression list and remain recoverable from source code (#34)

0.21.0-beta.1 - 2026-03-03

Added

  • Configurable model list in Settings: add/remove OpenRouter models, first entry used as default (#34)
  • Model dropdown in AI generator form, pre-filled with the first configured model; selection persists per session (#34)
  • Binary confidence slider now spans 50–99 % (50 % = maximum uncertainty / guessing); below 50 % the answer direction should be flipped instead (#33)

Fixed

  • "Einstellungen" button in the missing-API-key card now navigates correctly with go_router (context.push instead of Navigator.pushNamed) (#31)
  • Import preview in AI generator no longer reveals correct/incorrect icons for questions with embedded resolutions (#32)

0.20.0-beta.1 - 2026-03-03

Added

  • Generate epistemic quiz questions via OpenRouter AI; supports custom prompt templates (editable and deletable) and a configurable question count (5 / 10 / 15 / 20)
  • API key for OpenRouter stored securely via flutter_secure_storage; configurable in Settings
  • Preview screen before import: category, source, question count, first 5 questions with resolution indicators
  • Share generated catalog as obfuscated v2 JSON directly from the preview screen, without importing first
  • ImportParser.obfuscateResolution() as public static method for encoding resolutions outside the database layer

0.18.2 - 2026-03-03

Fixed

  • "Select all" button now toggles: first tap selects all visible predictions in the active tab, second tap deselects all (#29)
  • Button icon and tooltip reflect current state (select_alldeselect)

0.18.1 - 2026-03-03

Changed

  • Project renamed from Calibrate to Kailibrate: package name, applicationId (dev.kailibrate.app), database filename (kailibrate.db), notification channel ID, and app title

Fixed

  • Release workflow: APK filename in files: parameter corrected (calibrate-kailibrate-); fail_on_unmatched_files: true added

0.18.0 - 2026-03-03

Changed

  • Project renamed from Calibrate to Kailibrate: package name, applicationId (dev.kailibrate.app), database filename (kailibrate.db), notification channel ID, app title, and all documentation updated accordingly

0.17.4 - 2026-03-03

Fixed

  • Interval unit (e.g. "Liter", "km") is now stored in the Questions table (schema v3) instead of only in Estimates; previously the unit was lost for imported questions without bounds, causing the estimate screen to ask for it again
  • Estimate screen shows a read-only label instead of an editable text field when the unit is already known from the question or an existing estimate

0.17.3 - 2026-03-03

Fixed

  • Unit field in v2 interval imports now read from question level as fallback when absent from the estimate sub-object; data from callibrate-gen and similar tools was silently dropped (#28)
  • exportForSharing now includes unit for interval predictions so the unit survives re-import (#28)

0.17.2 - 2026-03-03

Fixed

  • Unit (e.g. km, °C) now persisted and shown when estimating interval predictions via the estimate screen; previously lost on every save (#28)
  • Prediction card shows numeric outcome with unit for resolved interval predictions instead of plain "Ja"/"Nein" (#28)

0.17.1 - 2026-03-03

Fixed

  • Tapping anywhere on a chart now opens the fullscreen view; previously only the bottom-left blank area responded because fl_chart's internal GestureDetector consumed touch events across most of the surface (#27)

0.17.0 - 2026-03-03

Added

  • Tap any chart on the statistics screen to open it fullscreen in landscape orientation for easier reading (#27)

0.16.1 - 2026-03-03

Fixed

  • Redundant floating action button for new prediction removed from home screen; the navigation tile serves as the single entry point (#26)

0.16.0 - 2026-03-02

Added

  • Brier Score and Log Loss history charts on the statistics screen; each chart shows the cumulative average after every resolved estimate, sorted chronologically, with a dashed coin-flip reference line (0.25 / ln 2) and a segmented button to limit the view to the last 25, 50, or 100 estimates

0.15.6 - 2026-03-02

Fixed

  • Interval bounds and numeric outcomes now display as integers when the stored value has no fractional part (e.g. "45 km" instead of "45.0 km"); unit is also shown in the feedback sheet's outcome row

0.15.5 - 2026-03-02

Fixed

  • Feedback sheet after estimating a pre-resolved question now displays resolution notes and the numeric outcome stored with the import (#24)

0.15.4 - 2026-03-02

Fixed

  • Resolve screen now shows the known answer for questions imported with an embedded answer (e.g. trivia catalogues) (#24)

0.15.3 - 2026-03-02

Fixed

  • Switch from exact to inexact alarm scheduling to prevent a PlatformException when SCHEDULE_EXACT_ALARM is not granted on Android 12+ (#22)

0.15.2 - 2026-03-02

Fixed

  • Inline estimate state (slider value, Ja/Nein selection) no longer resets when switching prediction type or toggling the deadline; root cause was ListView position-shift destroying the Consumer element and triggering an autoDispose provider reset (#21)

0.15.1 - 2026-03-02

Fixed

  • Tag filter no longer shows an empty list after all entries with a selected tag are deleted; stale filters are cleared on data refresh (#20)

0.15.0 - 2026-03-02

Added

  • Trash icon in selection mode AppBar to permanently delete all selected predictions including their estimates and resolutions; a confirmation dialog warns before the irreversible action (#19)

0.14.1 - 2026-03-02

Fixed

  • Interval outcome now recomputed from the current estimate bounds when estimating a pre-resolved question; previously a stale outcome from the original resolution could mark a wrong estimate as correct (#18)

0.14.0 - 2026-03-02

Added

  • Feedback sheet shown immediately after estimating a question that already has a resolution (e.g. trivia imports with embedded answers); same CalibrationFeedbackSheet as the resolve flow (#16)

0.13.0 - 2026-03-02

Added

  • Bottom sheet after resolving shows Brier contribution of the current estimate, overall Brier Score and Log Loss, and a type-specific section when predictions of multiple types exist (#16)

0.12.2 - 2026-03-02

Fixed

  • Statistics tag filter replaced with FilterChips; the previous autocomplete showed no options on empty input, making the filter undiscoverable (#9)

0.12.1 - 2026-03-02

Fixed

  • Tag dialog now flushes the text field before saving; typed input was silently discarded when "Setzen" was pressed without Enter, deleting all existing tags instead of replacing them (#17)

0.12.0 - 2026-03-02

Added

  • Multi-select mode in the predictions list; long-press activates selection, "Select All" covers the active tab and tag filter (#15)
  • Bulk tag editing for selected predictions; the dialog replaces tags on all selected items at once (#15)

0.11.0 - 2026-03-02

Added

  • Tag filter in the sharing export dialog; select one or more tags to export only matching resolved predictions (#8)

0.10.1 - 2026-03-02

Fixed

  • Import parser now reads resolution fields in version 1 files; previously they were silently ignored, preventing auto-resolution (#14)

0.10.0 - 2026-03-02

Added

  • Clipboard import now recognizes ```json and ```yaml fences; LLM-generated output can be pasted directly without editing (#13)

0.9.0 - 2026-03-02

Added

  • Export resolved questions for others without own estimates; optional category filter (epistemic/aleatory) (#8)
  • Version tile in Settings shows build number and share icon for JSON debug info (OS, device model, API level) (#11)

0.8.0 - 2026-03-02

Added

  • Statistics screen now supports three combinable filters: category (single-select), prediction type (multi-select), and tags (autocomplete, OR-linked) (#9)

0.7.1 - 2026-03-02

Changed

  • Import format reference restructured with per-field descriptions and an import behavior table explaining the "Lösung vorhanden" flow
  • LLM prompt guide added to docs: three copy-ready prompts for generating calibration exercises with hidden answers

0.7.0 - 2026-03-01

Added

  • MkDocs documentation site deployed to GitHub Pages with versioned URLs via mike; triggered automatically on every release tag
  • Settings screen links to the documentation version matching the installed APK (#6)

0.6.0 - 2026-03-01

Added

  • Tapping a resolved prediction card opens a detail view showing question text, category, tags, estimate, and resolution with outcome, notes, and numeric value (#5)

0.5.0 - 2026-03-01

Added

  • Import now supports resolutions: questions with estimate and resolution are marked resolved immediately; questions with a resolution but no estimate show a "Lösung vorhanden" hint and auto-resolve after estimating (#4)
  • Export obfuscates resolution data with ROT13 + Base64 to prevent accidental spoilers when sharing question sets (#4)

0.4.3 - 2026-03-01

Fixed

  • Import parser now accepts version 2 export format: reads per-question categories, hasKnownAnswer/knownAnswer, and nested estimate objects (#2)

0.4.2 - 2026-03-01

Fixed

  • Add missing Java 17 (Temurin) setup step to release workflow
  • Strip newlines before base64 decode to prevent keystore corruption

0.4.1 - 2026-03-01

Fixed

  • FilterTab enum was renamed from _FilterTab in predictions_screen.dart but the old private name remained in app.dart, breaking the CI build

0.4.0 - 2026-03-01

Added

  • Dashboard stat cards (Offen, Ausstehend, Aufgelöst) are now tappable and navigate directly to the predictions list on the matching tab

Fixed

  • Release APK signing: replaced machine-specific debug keystore with a dedicated release keystore loaded from key.properties or CI secrets; prevents "Update not installed" errors when sideloading updates

0.3.0 - 2026-03-01

Added

  • Optional inline estimation when creating a new prediction; saves the separate estimate step for users who already know their probability
  • Estimate fields in JSON/YAML import files: predictionType, probability, binaryChoice, confidenceLevel, lowerBound, upperBound, and unit — imported estimates are saved automatically
  • Sample data updated with embedded estimate examples for all three prediction types

Changed

  • Estimate form logic extracted to shared/widgets/estimate_inputs.dart (EstimateFormState, EstimateFormNotifier, BinaryEstimateInput, IntervalEstimateInput, ConfidenceSlider) and reused across EstimateScreen and NewPredictionScreen

0.2.1 - 2026-03-01

Fixed

  • Enable core library desugaring in android/app/build.gradle so that flutter_local_notifications builds on all supported Android runtimes; resolves checkReleaseAarMetadata failure in CI

0.2.0 - 2026-03-01

Added

  • Binary prediction type: choose Yes/No and set confidence level; probability is derived as confidence (Yes) or 1 − confidence (No)
  • Interval prediction type: define a numeric range with confidence level; resolves as true when the measured value falls within the interval
  • Optional unit field on interval predictions (e.g. m, °C, kg)
  • Local deadline notifications: reminded the day before and on the deadline day at 09:00; rescheduled automatically on app start to survive device reboots (flutter_local_notifications, timezone)
  • Type-selector (SegmentedButton) on the new prediction screen
  • Type-aware estimate screen: slider for probability, Yes/No buttons plus confidence slider for binary, numeric fields plus confidence slider for interval
  • Type-aware resolve screen: numeric input for interval resolutions; outcome computed automatically from the stored bounds

0.1.2 - 2026-03-01

Fixed

  • Add mipmap launcher icons (mdpi–xxxhdpi) and adaptive icon for API 26+; resolves AAPT build error "resource mipmap/ic_launcher not found"

0.1.1 - 2026-03-01

Fixed

  • Drift column name conflict (Questions.text shadowed inherited text() method); renamed to questionText with .named('text')
  • Replace SharePlus.instance/ShareParams with stable Share.shareXFiles API (share_plus 10.x)
  • Bump compileSdk/targetSdk to 36 (required by path_provider and flutter_plugin_android_lifecycle)
  • Upgrade Gradle wrapper to 8.10.2, AGP to 8.7.0, Kotlin to 2.1.0

0.1.0 - 2026-03-01

Added

  • Core app: probability estimation, resolution, calibration stats, and JSON/YAML import
  • Settings screen, tag filter, and clipboard import for question sets
  • GitHub Actions release workflow for tag-triggered APK builds