do_not says in plain words what must not be done any more, for example writing new session files once sessions move to the database, and agents read it in their brief, in planning_preflight and in the pre-write check. forbids lists short phrases declared incompatible with the item or with the target state.
When an agent describes its plan to planning_preflight, SyncNow looks for those phrases in its intent, problem and planned solution, and a match returns PLANNING_CONFLICT with the item and the phrase. The match is word for word, not by meaning, so ALIGNED means only that no declared phrase was found, not that the plan fits.
Both lists are set by agents with project_program: the app does not show them, its window has no fields for them and editing an item in the app keeps them. In the app, write what agents must not do in the Description, which people read in the plan's side panel and agents receive with the item.