Task: The IAM read-only surfaces: permission, session and session statistics

Table of Contents

This page documents a task in the Implement every IAM entity in the web client story. It captures the goal, current status, acceptance, and any notes or results.

1. Goal

Implement the entities that are never written from the browser. permission is a catalogue with no version and no audit fields, so it is a read-only list. session is observational, so it is a read-only list sorted most-recent-first with no save and no delete. Session statistics are shown, or the screen says the figures are not modelled, which is what the service answers today.

2. Status

Field Value
State DONE
Parent story Implement every IAM entity in the web client
Now Nothing.
Waiting on Nothing.
Next Nothing.
Last touched 2026-09-20

3. Acceptance

  • No save, edit or delete action is offered on any of the three.
  • The session list is most-recent-first.
  • The screens meet the same state requirements as a writable one: loading, empty, filtered-empty, error and unauthorized.
  • permission's lack of a version and an audit trail is recorded as the reason it is read-only.

4. Plan

(Implementation strategy. Written when work starts; key decisions are distilled into the parent story's * Decisions at close, but the plan itself stays — it is the historical record of what we did.)

5. Notes

6. Test Scenarios

Manual QA scenarios (scaffolded via compass add test_scenario) that verify this task. Link new ones here as they're created; the scenario doc itself links back via its "Verifies task" field.

Scenario State Notes
     

7. PRs

PR Title
   

8. Review

Comment summary File Decision Notes
       

9. Result

Superseded on 2026-09-23. These three were to be read-only surfaces on the shared shell, and the shell is deleted. The session and permission data stay available through the protocol layer, and a journey shows what its own steps require.

Emacs 29.3 (Org mode 9.6.15)