Files
daily-notification-plugin/docs/platform/ios/PREFETCH_GLOSSARY.md
Matthew Raymer c39bd7cec6 docs: Consolidate documentation structure (139 files, zero information loss)
Consolidate all markdown documentation into organized structure per
CONSOLIDATION_DIRECTIVE. All files preserved (canonical, merged, or archived).

- docs/integration/ - Integration documentation (7 files)
- docs/platform/ios/ - iOS platform docs (12 files)
- docs/platform/android/ - Android platform docs (9 files)
- docs/testing/ - Testing documentation (15 files)
- docs/design/ - Design & research (5 files)
- docs/ai/ - AI/ChatGPT artifacts (7 files)
- docs/archive/2025-legacy-doc/ - Historical docs (17 files)

- Integration: Root INTEGRATION_GUIDE.md → docs/integration/
- Platform: Separated iOS and Android into platform/ subdirectories
- Testing: Consolidated all testing docs to docs/testing/
- Legacy: Archived entire doc/ directory to archive/
- AI: Moved all ChatGPT artifacts to docs/ai/

- Added docs/00-INDEX.md - Central navigation hub
- Added docs/CONSOLIDATION_SOURCE_MAP.md - Complete audit trail
- Added docs/CONSOLIDATION_COMPLETE.md - Consolidation summary
- Updated README.md with links to documentation index

- All 139 files have destinations (see CONSOLIDATION_SOURCE_MAP.md)
- Zero information loss (all files preserved)
- Archive preserves original structure
- Index provides clear navigation

- 87 files moved/created/updated
- Root-level docs consolidated
- Legacy doc/ directory archived
- Test app docs remain with test apps (indexed)

Ref: CONSOLIDATION_DIRECTIVE
Author: Matthew Raymer
2025-12-18 09:13:18 +00:00

3.1 KiB
Raw Blame History

iOS Prefetch Glossary

Purpose: Shared terminology definitions for iOS prefetch testing and implementation

Last Updated: 2025-11-15
Status: 🎯 ACTIVE - Reference glossary for iOS prefetch documentation


Core Terms

BGTaskScheduler iOS framework for scheduling background tasks (BGAppRefreshTask / BGProcessingTask). Provides heuristic-based background execution, not exact timing guarantees.

BGAppRefreshTask Specific BGTaskScheduler task type for background app refresh. Used for prefetch operations that need to run periodically.

UNUserNotificationCenter iOS notification framework for scheduling and delivering user notifications. Handles permission requests and notification delivery.

T-Lead The lead time between prefetch and notification fire, e.g., 5 minutes. Prefetch is scheduled at notificationTime - T-Lead.

earliestBeginDate The earliest time iOS may execute a BGTask. This is a hint, not a guarantee; iOS may run the task later based on heuristics.

UTC Coordinated Universal Time. All internal timestamps are stored in UTC to avoid DST and timezone issues.


Behavior Classification

Bucket A/B/C Deterministic vs heuristic classification used in Behavior Classification:

  • Bucket A (Deterministic): Test in Simulator and Device - Logic correctness
  • Bucket B (Partially Deterministic): Test flow in Simulator, timing on Device
  • Bucket C (Heuristic): Test on Real Device only - Timing and reliability

Deterministic Behavior that produces the same results given the same inputs, regardless of when or where it runs. Can be fully tested in simulator.

Heuristic Behavior controlled by iOS system heuristics (user patterns, battery, network, etc.). Timing is not guaranteed and must be tested on real devices.


Testing Terms

Happy Path The expected successful execution flow: Schedule → BGTask → Fetch → Cache → Notification Delivery.

Negative Path Failure scenarios that test error handling: Network failures, permission denials, expired tokens, etc.

Telemetry Structured metrics and counters emitted by the plugin for observability (e.g., dnp_prefetch_scheduled_total).

Log Sequence The ordered sequence of log messages that indicate successful execution of a prefetch cycle.


Platform Terms

Simulator iOS Simulator for testing logic correctness. BGTask execution can be manually triggered.

Real Device Physical iOS device for testing timing and reliability. BGTask execution is controlled by iOS heuristics.

Background App Refresh iOS system setting that controls whether apps can perform background tasks. Must be enabled for BGTask execution.

Low Power Mode iOS system mode that may delay or disable background tasks to conserve battery.


References

  • Testing Guide: doc/test-app-ios/IOS_PREFETCH_TESTING.md
  • Test App Requirements: doc/test-app-ios/IOS_TEST_APP_REQUIREMENTS.md
  • Main Directive: doc/directives/0003-iOS-Android-Parity-Directive.md

Status: 🎯 READY FOR USE
Maintainer: Matthew Raymer