The group-travel team works for many customers at the same time (M-07). A run needs three kinds of memory: what was said in this conversation, what the agents of this order exchange among themselves, and what should be known about a customer beyond the order (for example: "always needs accessible rooms"). None of the three may ever land in another customer's run. This lesson designs the three levels, decides between building it yourself and using the service, and settles the separation so that the code enforces it.
Prior knowledge. "AI track, lesson T7.5" (file 0805, "Memory") distinguishes history, state and long-term memory of an agent, shortens the history with compaction, uses ChatHistoryMemoryProvider with scopes per tenant and person, and deletes everything of a person verifiably. "AI-103, lesson 2.3" introduces the memory of the Agent Service (preview). Here the exam asks further: multi-level, for a team, with lifetime and tenant separation. Building follows in lesson 2.4, compacting in 2.3.
New in this lesson. The team state stores per run: the plan of the planer, the results of the agents, the findings of the pruefer and the versions of the draft, each with laufId. Its lifetime is 30 days (assumption of the exercise). The long-term memory stores only what the trip planner has explicitly confirmed (like the marker in T7.5). A mandantId has the form m- and four digits (lesson 0.2).
The requirement
All numbers are assumptions of the exercise.
| No. | Requirement | Type | Measure | Weight | Source |
|---|---|---|---|---|---|
| 1.3-01 | No reading or writing of state or memory without mandantId. |
R | 0 accesses without a key (the type enforces it) | Must | M-07 |
| 1.3-02 | The team state of a run expires after 30 days. | R | Lifetime on the container | Must | F-03 |
| 1.3-03 | Deleting a tenant removes all three levels. | R | 3 of 3 levels, proof per level | Must | GDPR (legal counsel) |
| 1.3-04 | The long-term memory contains only confirmed statements. | Q | 0 unchecked entries | Must | R-11 |
| 1.3-05 | A stored session is loaded only for the tenant it belongs to. | R | 0 foreign sessions | Must | Learn |