What Is a Working Session?
A working session begins the moment Risksheet loads data into the browser grid and ends when you navigate away from the page or close your browser tab. During a working session, every edit you make — changing a severity rating, adding a mitigation task, modifying a description — accumulates in the browser’s memory. These changes are not immediately written to Polarion. Think of a working session like a draft document in an email client. You compose your message (make edits to cells), and nothing is sent to the recipient (Polarion server) until you press the Send button (Save). Until that point, your draft exists only in your browser.Why Batch Saves Instead of Auto-Save
A natural question is: why not save every cell change immediately? Risksheet uses a batch save model for several important reasons tied to the domain of risk management in regulated industries: Transactional consistency. In an FMEA analysis, a single logical change often involves multiple cells. For example, updating a failure mode might require changing the severity rating, the occurrence rating, and the detection rating simultaneously. The RPN formula depends on all three values. Saving each change individually would create intermediate states where the RPN is inconsistent with the ratings, which could trigger incorrect conditional formatting or confuse concurrent viewers. Performance. Each save operation requires a server round-trip to update one or more Polarion work items. In a risk analysis with 200+ risk items, auto-saving every keystroke would create an unacceptable volume of server requests. Undo capability. The batch save model allows you to undo changes before they are committed. If you realize you made an error, you can revert individual cells or all changes before saving. Audit trail clarity. In ISO 26262, ISO 14971, and other safety standards, the audit trail of changes must be meaningful. A single save operation that captures a coherent set of changes (e.g., “Updated severity ratings after design review”) produces a cleaner revision history than hundreds of auto-saved micro-changes.The Save Operation
When you trigger a save (via the toolbar Save button or keyboard shortcut), Risksheet performs the following sequence:- Collect modified items. The grid identifies all work items whose fields have been modified since the last save (or since the session began).
- Validate changes. Basic validation runs client-side to check for required fields and type constraints.
- Send batch update. The modified work item field values are sent to the server as a batch operation.
- Server-side processing. The Polarion server validates the changes against workflow rules, field permissions, and data integrity constraints. Work items are updated in a transaction.
- Response and refresh. The server responds with the updated work item data. The grid refreshes to reflect any server-side transformations (e.g., workflow state changes, auto-calculated fields, timestamp updates).
Unsaved Changes Tracking
During a working session, Risksheet tracks which cells have been modified but not yet saved. This tracking is essential for:- Visual indicators. Modified cells may display visual cues (such as a subtle change indicator) so you can see which values have changed.
- Navigation warnings. If you attempt to navigate away from the page with unsaved changes, the browser will display a confirmation dialog asking if you want to leave without saving.
- Selective save. The save operation only transmits modified work items, not the entire grid. This makes saves efficient even in large risk analyses.
Concurrent Editing
Risksheet does not implement real-time collaborative editing (like Google Sheets). Multiple users can open the same Risksheet document simultaneously, but they each work within their own independent session with their own unsaved changes.| Scenario | Behavior |
|---|---|
| Two users edit different risk items | Both saves succeed independently |
| Two users edit the same risk item, different fields | Last save wins for each field |
| Two users edit the same field on the same risk item | Last save wins; first user’s change is overwritten |
| User A saves while User B has unsaved changes to the same item | User B’s next save may overwrite User A’s changes |
Session Timeout
Polarion sessions have a server-side timeout. If you leave a Risksheet document open without interaction for an extended period, your session may expire. When this happens:- Save operations will fail with a session timeout error.
- You will need to reload the page, which establishes a new session.
- Any unsaved changes at the time of timeout are lost.
The exact session timeout duration depends on your Polarion server configuration and is not controlled by Risksheet. Consult your Polarion administrator for the configured timeout value.
Read-Only Sessions
Not all working sessions allow editing. Risksheet enters a read-only session under the following conditions:- Historical revision. You are viewing a baseline or historical revision of the document. The
revisionparameter is non-empty, and the grid is automatically set to read-only. - Configuration override. The
readonlyproperty inrisksheet.jsonis set totrue. - Insufficient permissions. The current user does not have edit permission on the work items in the document.
- Reviewer mode. The
reviewerproperty is enabled, restricting the session to review-specific interactions.
Session State and Configuration
The working session also holds the active configuration state:- Active view. If saved views are configured, the currently selected view determines which columns are visible. Switching views during a session does not affect unsaved data — it only changes column visibility.
- Sort order. The current sort order (defined by
sortByor user-initiated column sorting) persists within the session. - Filter state. Active column filters narrow the visible rows but do not affect which items are saved. A save operation writes back all modified items, including those hidden by filters.
Working Sessions and the Data Model
A working session operates on the data model described in Data Model and Work Items. Each row in the grid corresponds to a Polarion work item. The session maintains a local copy of each work item’s field values, and the save operation writes back only the fields that have been modified. The hierarchical structure (levels) defined in the configuration also plays a role in sessions. When you create a new risk item or task within the grid, the session must determine:- Which work item type to create (from
dataTypesconfiguration). - Which document to create it in (from the
createInDocumentproperty or the current document). - Which link role to use for establishing relationships (from the
roleproperty indataTypes).
Mental Model: The Editing Sandbox
The most useful mental model for working sessions is a sandbox. When you load Risksheet, you get a sandbox copy of the data in your browser. You can freely modify values, recalculate formulas, and see the effects of your changes in real time — all within the sandbox. Nothing touches the permanent Polarion data until you explicitly save. This sandbox model gives you the freedom to experiment. You can change a severity rating to see how it affects the RPN, then change it back before saving. You can add a new mitigation task to evaluate its effect on the risk matrix, then decide not to save it. The sandbox is yours to work with until you commit your changes.Related Pages
- Session Management — Technical details of session lifecycle and timeout behavior
- Data Synchronization — How data flows between the client grid and Polarion server
- Live Data Views — How the grid renders and maintains connection to live data
- Data Model and Work Items — Structure of risk items, tasks, and linked elements
- Review Workflows — How review processes interact with editing sessions