Adds Mobile Ephemeral Mode documentation#8984
Conversation
- new section under Mobile App Deployment > Mobile security features explaining Mobile Ephemeral Mode feature and what it means on the server and mobile client. - entry added to the Security Guide > Mobile Security about Mobile Ephemeral Mode. - Added configurations options related to Mobile Ephemeral Mode to the Administration Guide under Environment configuration settings. - Updated Use cases.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
✅ Files skipped from review due to trivial changes (1)
🚧 Files skipped from review as they are similar to previous changes (1)
📝 WalkthroughWalkthroughThis pull request adds documentation for Mobile Ephemeral Mode, a mobile security feature that manages cached data lifecycle on Mattermost mobile clients. The feature is documented across four key guides: feature definition, administrator configuration, security context, and product messaging. ChangesMobile Ephemeral Mode Documentation
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 4
🧹 Nitpick comments (1)
source/deployment-guide/mobile/mobile-security-features.rst (1)
112-113: ⚡ Quick winConsider clarifying timer relationship earlier for reader flow.
The Disconnection Timeout is introduced after the operations table, but it's a prerequisite concept for understanding when the Offline Persistence Timer (mentioned in the Purge operation) begins. For Novice Nate, this ordering might cause confusion about whether Disconnection Timeout is a fourth configuration setting or how it relates to the three operations.
Consider either briefly mentioning the timer relationship before the table or adding a note in the Purge row that references the Disconnection Timeout grace period.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@source/deployment-guide/mobile/mobile-security-features.rst` around lines 112 - 113, Clarify the relationship between the Disconnection Timeout and the Offline Persistence Timer by either adding a brief sentence before the operations table that states "Disconnection Timeout is a grace period after which the Offline Persistence Timer begins if no reconnection occurs," or by appending a short note to the Purge operation row in the operations table that reads "Note: Purge countdown starts only after the Disconnection Timeout (grace period) elapses." Update the text around the operations table/Purge row so the terms "Disconnection Timeout", "Offline Persistence Timer", and "Purge" are explicitly linked for readers.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In
`@source/administration-guide/configure/environment-configuration-settings.rst`:
- Around line 4449-4459: The wording for the 0-value trigger is inconsistent:
change the phrase "Set to **0** for immediate purge on disconnect." in the
"Offline persistence timer" section to match the earlier wording "after the
Disconnection Timeout elapses" so both references use the same trigger language;
update the sentence near the numerical input (related to NativeAppSettings >
MobileOfflinePersistenceTimerHours and
MM_NATIVEAPPSETTINGS_MOBILEOFFLINEPERSISTENCETIMERHOURS) to read "Set to **0**
for immediate purge after the Disconnection Timeout elapses."
In `@source/deployment-guide/mobile/mobile-security-features.rst`:
- Line 101: Replace the typo in the table header string "What happensoption"
with "What happens" by updating the header cell that currently contains "What
happensoption" in the mobile-security-features table; ensure only the header
text is changed (leave surrounding table markup/columns intact).
- Line 107: Replace the iOS-specific term "keychain" in the sentence "All
persisted content, metadata, and files are removed. Authentication credentials
and tokens are preserved in the keychain, so users can reconnect without
re-authenticating." with platform-neutral wording such as "the platform
credential store (e.g., iOS Keychain, Android Keystore)" or explicitly list both
"iOS Keychain and Android Keystore" so the doc is cross-platform accurate and
clear.
In `@source/security-guide/mobile-security.rst`:
- Line 102: The sentence claiming a "server-initiated wipe ... removes all data,
including credentials, even before the device reconnects" overstates
capabilities for offline devices; update the wording around the
"server-initiated wipe" phrase so it conditions the wipe on the device
reconnecting (e.g., state that the wipe will be applied once the device next
reconnects or that offline devices will be wiped on next contact), and keep the
existing reference to "Mobile Ephemeral Mode" so administrators (Veteran Vince)
understand the reconnection-dependent enforcement model rather than implying
immediate remote action while disconnected.
---
Nitpick comments:
In `@source/deployment-guide/mobile/mobile-security-features.rst`:
- Around line 112-113: Clarify the relationship between the Disconnection
Timeout and the Offline Persistence Timer by either adding a brief sentence
before the operations table that states "Disconnection Timeout is a grace period
after which the Offline Persistence Timer begins if no reconnection occurs," or
by appending a short note to the Purge operation row in the operations table
that reads "Note: Purge countdown starts only after the Disconnection Timeout
(grace period) elapses." Update the text around the operations table/Purge row
so the terms "Disconnection Timeout", "Offline Persistence Timer", and "Purge"
are explicitly linked for readers.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: b77a0c74-36e1-42d2-a77f-50a832396e07
📒 Files selected for processing (4)
source/administration-guide/configure/environment-configuration-settings.rstsource/deployment-guide/mobile/mobile-security-features.rstsource/security-guide/mobile-security.rstsource/use-case-guide/mission-ready-mobile.rst
|
Newest code from mattermost has been published to preview environment for Git SHA a67a984 |
There was a problem hiding this comment.
Pull request overview
Adds documentation for Mobile Ephemeral Mode across Mattermost mobile security, configuration, and mission-ready mobile use-case content.
Changes:
- Adds a Mobile Ephemeral Mode explanation to mobile security feature docs.
- Adds related configuration settings under Environment > Mobile Security.
- Updates security guide and mission-ready mobile use-case messaging to reference ephemeral lifecycle controls.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
source/deployment-guide/mobile/mobile-security-features.rst |
Adds the primary Mobile Ephemeral Mode feature overview and operation table. |
source/administration-guide/configure/environment-configuration-settings.rst |
Adds Mobile Ephemeral Mode configuration settings and timer behavior notes. |
source/security-guide/mobile-security.rst |
Adds a security-guide summary of Mobile Ephemeral Mode. |
source/use-case-guide/mission-ready-mobile.rst |
Updates mission-ready mobile messaging to include ephemeral data lifecycle controls. |
Comments suppressed due to low confidence (2)
source/administration-guide/configure/environment-configuration-settings.rst:4397
- Veteran Vince (Friction): This says any timer expiry purges active cached content, but the linked feature page distinguishes Delete (Auto Cache Cleanup removes only data older than the threshold) from Purge (Offline Persistence Timer removes all persisted content). Admins could misconfigure retention if this summary implies both timers perform the same purge operation; align this text with the Delete/Purge/Wipe terminology.
When a timer expires, active cached content such as posts and file previews is purged, and the app notifies the user that data was removed due to policy enforcement. After a purge, users re-sync from the server on reconnection — server URLs are recoverable from keychain entries so server access is not lost.
source/administration-guide/configure/environment-configuration-settings.rst:4459
- Novice Nate (Polish): "Immediate purge on disconnect" is ambiguous because the setting description above says a value of 0 purges only after the Disconnection Timeout elapses. Use the same wording here so admins don't expect the purge to happen at the moment the WebSocket drops.
| Set to **0** for immediate purge on disconnect. | |
|
Newest code from mattermost has been published to preview environment for Git SHA fd40e25 |
|
Newest code from mattermost has been published to preview environment for Git SHA bdd0549 |
Summary
Adds Mobile Ephemeral Mode documentation
Mobile Ephemeral Mode feature and what it means on the server and mobile client.
Guide under Environment configuration settings.
Ticket Link
https://mattermost.atlassian.net/browse/MM-68282