Skip to content

feat(app): add isolated offline demo and review access - #3

Open
sjungwon03 wants to merge 1 commit into
devfrom
feat/offline-demo
Open

sjungwon03 wants to merge 1 commit into
devfrom
feat/offline-demo

Conversation

@sjungwon03

Copy link
Copy Markdown
Member

Public offline demonstration

Add a release-available Explore offline demo button to the connection screen. No NAS, credentials, internet connection, OTP, payment or separate device is required to explore synthetic dashboard data, charts and the available native workspaces. This is available to everyone, not a hidden reviewer-only login bypass.

Isolation and disclosure

  • Replace the live MaterialApp instead of nesting a navigator; root dialogs/search cannot escape into the live provider scope.
  • Own an independent provider container with memory-only profiles/layout, a no-op credential vault, a connector that always rejects, a synthetic repository and disabled OS certificate boundaries.
  • Keep an OFFLINE DEMO · SAMPLE DATA banner and Exit demo action above every route/dialog. Back from demo home also exits.
  • Reject management submissions; never portray a successful real NAS change. Real profile/vault state is not inherited, altered or persisted by demo.
  • Label performance data as generated samples rather than live server measurements. Existing production data and capability checks remain unchanged.
  • Reuse existing connector-free preview adapters from a shared sample directory; the separate development entrypoint retains its release guard.
  • Fix sample feed teardown before subscribing and acknowledge local cancellation so covered dashboards resume without a stuck sample loader.

Review/build handoff

  • Version 0.1.0+2; build 1 does not contain the offline demonstration.
  • Updated English/Korean notes, listing disclosure and English Play/App Store access instructions in docs/store/store-setup.md.
  • Local signed AAB verified against the provided upload-key certificate; package com.sloki9637.truenavo, version code 2, demo entry/exit labels verified in the release binary, ZIP integrity passed.
  • Maintainer handoff: TrueNavo-0.1.0-build2-offline-demo.aab in their Windows Downloads. SHA-256: 147481203fc813ce7aeb07cb543a95939355de90f15bc43ee0f4aba2c63ac2ed.
  • No store upload or real NAS write was performed. Demo availability is not a claim of complete TrueNAS parity or guaranteed store acceptance.

Validation

  • Entire application suite: 7,581 passed, 1 existing skipped (including 7 new offline-demo tests).
  • Flutter analyzer: no issues.
  • Persistence security boundary and Drift web-asset verification: passed.
  • Dart formatting and git diff --check: passed.
  • Release/triage Python tests: 27 passed; release metadata 0.1.0+2 and localized notes valid.
  • Signed Android release bundle and upload-key fingerprint: passed.

Merge this feature into protected dev only after review/CI, then update promotion PR #2. Updating dev will require fresh approval of that changed promotion; do not bypass the release branch rules or repeat an accepted store build.

@github-actions github-actions Bot added area:release Signing, packaging and store deployment area:security Authentication, TLS or credential storage area:ui Flutter screens and design system dependencies Dependency or toolchain changes documentation Improvements or additions to documentation enhancement New feature or request tests Test coverage or test tooling labels Oct 5, 2026

@sjungwon03-ai sjungwon03-ai left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review summary

Verdict: Approved

  • Reviewed: Offline-demo isolation, synthetic repository behavior, release entrypoint integration, and coverage
  • Checks: All 6 reported CI checks passed; local git diff --check passed

The targeted Flutter test could not run locally because flutter is not installed on this runner.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:release Signing, packaging and store deployment area:security Authentication, TLS or credential storage area:ui Flutter screens and design system dependencies Dependency or toolchain changes documentation Improvements or additions to documentation enhancement New feature or request tests Test coverage or test tooling

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants