Ticket navigation and current-context protection
Tickets now use shared20/50/100/All choices,page totals and numbered navigation. The ticket component independently clears changed private contexts and suppresses late list,detail,save andattachment callbacks.
- Improvements and fixes
Scoped ticket browsing: Reuse the shared register paginator and server page model after current record scope and filters. Preserve page/filter/language URLs,clamp empty or shrinking results,and honor read-only technician creation limits.
- Improvements and fixes
Private callback lifecycle: Complement the shared session guard with module-level identity/scope/lifetime checks. Discard obsolete results before assigning list state,rendering details,downloading a blob or starting an upload after file reading. Access denial removes obsolete private content;unchanged sessions retain unsaved fields.
The shared session guard and all server ticket permissions,approval andpublication rules remain. Component tests are synthetic current-code tests,not evidence of a production privacy incident. Protected native Arabic/mobile andindependent role acceptance remain pending the existing browser handoff. BrowsingAlldoes not create,approve,publish,activate orpay records.