Architecture decisions: files, diagram references, views and panels

- *.archify-decision files: id (unique, words), title, status, date,
  elements, diagrams, supersedes, and prose; parsed, merged and link-checked
  in the model index; diagnostics on the file
- diagrams point at decisions with decisions: [...] on the diagram, nodes
  and edges; stripped before Archify, unknown ids reported, completion,
  hover and go-to-definition for the ids and for elements/diagrams/
  supersedes in decision files
- Decisions panel on the main.archify page; Decisions rail panel under a
  diagram (hover lights up the node or connection); decisions on element
  cards and in the element dialog; decision view for the file, with a
  lost-model note outside a model
- Archify | New Decision… command and template; editor schemas; the three
  New Model examples carry decisions; docs, changelog, 0.8.0
This commit is contained in:
2026-10-19 23:13:05 +03:00
parent 33ebdd6328
commit ebf320a023
49 changed files with 1637 additions and 55 deletions
@@ -0,0 +1,18 @@
schema_version: 1
decision:
id: dead-letter-queue
title: Failed events go to a dead-letter queue, never dropped
status: accepted
date: 2026-09-24
elements: [router, dlq, ops]
diagrams: [0200-containers/platform.archify, 0300-components/router.archify]
context: >
Events that failed schema validation were logged and lost.
Nobody noticed until a customer asked where an order went.
decision: >
The router moves every event it cannot process to a
dead-letter queue with the reason. Operations replays
them after the cause is fixed.
consequences: >
Nothing is lost silently. Someone has to watch the queue;
that is an on-call duty for operations.