Document IRIS-NG-v1.4.0; drop the 'not in any image' banners
v1.4.0 is tagged, released and verified, so the provisional warnings on Object
History and Case Lifecycle are no longer true and have been replaced with
'Available from IRIS-NG-v1.4.0'.
- Changelog: the unreleased row and the v1.3.1 row become one released v1.4.0
entry. v1.3.1 joins v1.0.3, v1.1.0, v1.2.1 and v1.2.3 in the never-released
note, with its contents folded forward.
- Analyst Time Tracking: the #41 fix was credited to v1.3.1, which shipped
nothing. v1.4.0 is the first release that carries it.
- Kubernetes: chart 0.8.0, appVersion IRIS-NG-v1.4.0, and the docker pull
examples follow.
- API Reference, Development Guide: the IOC user_id change is now attributable
to a real version instead of 'the unreleased change on main'.
wiki_lint.py is clean on all four checks.
Add Case Lifecycle; document the reviewer requirement before closing (#84)
A case can no longer be closed from the interface until a reviewer is assigned.
There was no page describing what closing a case actually does, so the new Case
Lifecycle page covers the states, both close routes, what closing changes, and
reopening - with the reviewer rule in context rather than as an isolated note.
The load-bearing caveat, stated on both the feature page and the API Reference:
the rule is enforced in the INTERFACE ONLY. POST /manage/cases/close/<id> and
PUT /api/v2/cases/<id> with a Closed state still close a case with no reviewer,
so a report that reads "closed" as "reviewed" will be wrong on any case an n8n
workflow or script closed. Saying this only on the feature page would leave API
clients to discover it by being wrong.
Documented while verifying, because none of it was written down anywhere:
- Reopening always sets the state to Open, not the state the case was in before
it was closed, and the previous state is not recorded.
- Closing also moves related alerts to Closed and maps their resolution from the
case outcome; reopening moves them back to Merged.
- Reviewer and review status are separate fields, and only the reviewer gates
closing - a case can close with the review unstarted.
- Development Guide: close_case() has two callers reached from two controls on
the same modal, so anything gating a close must cover both; plus the two
details that make such a gate correct (transition-only, and check the
incoming value rather than the stored one).
- Analyst Time Tracking: cross-link, since the close lock is one of the effects.
- Home, Changelog: index row and unreleased entry.
The three "not in a released image" banners are deliberate and currently true.