recall-os 0.2.1 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/README.md +36 -32
  2. package/dist/cli.js +431 -80
  3. package/dist/cli.js.map +1 -1
  4. package/dist/index.js +431 -80
  5. package/dist/index.js.map +1 -1
  6. package/examples/generated-flutter/AGENTS.md +13 -0
  7. package/examples/generated-flutter/docs/60-engineering/AI_AGENT_RULES.md +9 -0
  8. package/examples/generated-flutter/docs/ai/RECALL_COMMANDS.md +13 -1
  9. package/examples/generated-generic/AGENTS.md +13 -0
  10. package/examples/generated-generic/docs/60-engineering/AI_AGENT_RULES.md +9 -0
  11. package/examples/generated-generic/docs/ai/RECALL_COMMANDS.md +13 -1
  12. package/examples/generated-ios-swift/AGENTS.md +13 -0
  13. package/examples/generated-ios-swift/docs/60-engineering/AI_AGENT_RULES.md +9 -0
  14. package/examples/generated-ios-swift/docs/ai/RECALL_COMMANDS.md +13 -1
  15. package/examples/generated-kotlin-android/AGENTS.md +13 -0
  16. package/examples/generated-kotlin-android/docs/60-engineering/AI_AGENT_RULES.md +9 -0
  17. package/examples/generated-kotlin-android/docs/ai/RECALL_COMMANDS.md +13 -1
  18. package/examples/generated-laravel-api/AGENTS.md +13 -0
  19. package/examples/generated-laravel-api/docs/60-engineering/AI_AGENT_RULES.md +9 -0
  20. package/examples/generated-laravel-api/docs/ai/RECALL_COMMANDS.md +13 -1
  21. package/examples/generated-laravel-react/AGENTS.md +13 -0
  22. package/examples/generated-laravel-react/docs/60-engineering/AI_AGENT_RULES.md +9 -0
  23. package/examples/generated-laravel-react/docs/ai/RECALL_COMMANDS.md +13 -1
  24. package/examples/generated-laravel-vue/AGENTS.md +13 -0
  25. package/examples/generated-laravel-vue/docs/60-engineering/AI_AGENT_RULES.md +9 -0
  26. package/examples/generated-laravel-vue/docs/ai/RECALL_COMMANDS.md +13 -1
  27. package/examples/generated-nextjs/AGENTS.md +13 -0
  28. package/examples/generated-nextjs/docs/60-engineering/AI_AGENT_RULES.md +9 -0
  29. package/examples/generated-nextjs/docs/ai/RECALL_COMMANDS.md +13 -1
  30. package/examples/generated-python-fastapi/AGENTS.md +13 -0
  31. package/examples/generated-python-fastapi/docs/60-engineering/AI_AGENT_RULES.md +9 -0
  32. package/examples/generated-python-fastapi/docs/ai/RECALL_COMMANDS.md +13 -1
  33. package/package.json +2 -2
@@ -13,3 +13,16 @@ Required reading:
13
13
  - `docs/60-engineering/ENGINEERING_STANDARDS.md`
14
14
 
15
15
  Repository rules override model preferences. If instructions conflict, stop and report the conflict.
16
+
17
+ ## Changing an accepted decision
18
+
19
+ Before changing anything an accepted ADR governs (framework, database, auth, API shape, and
20
+ similar):
21
+
22
+ 1. Check `docs/adrs/` for an accepted ADR that covers it.
23
+ 2. If your change contradicts one, stop and confirm with a human first — do not silently change the
24
+ code and leave the ADR saying the opposite.
25
+ 3. Record the change as a new decision with `recall adr supersede <old> <new-title>`. That
26
+ supersedes the old ADR instead of overwriting history, so the reasoning stays auditable.
27
+
28
+ Repository memory is only trustworthy if decisions change through this trail, not silently.
@@ -4,3 +4,12 @@ AI agents must follow repository memory over model preference.
4
4
 
5
5
  If a request conflicts with accepted repository memory or engineering standards, stop and report the
6
6
  conflict.
7
+
8
+ ## Changing an accepted decision
9
+
10
+ When work would change something an accepted ADR governs:
11
+
12
+ 1. Find the accepted ADR in `docs/adrs/` that covers it.
13
+ 2. If the change contradicts it, stop and confirm with a human before changing the code.
14
+ 3. Record the new decision with `recall adr supersede <old> <new-title>` so the old ADR is marked
15
+ superseded and the reasoning is preserved, instead of silently editing or contradicting it.
@@ -108,6 +108,17 @@ Options:
108
108
  - `--dry-run`: show planned writes without writing files.
109
109
  - `--force`: overwrite existing files explicitly.
110
110
 
111
+ ### `recall adr supersede <old> <new-title>`
112
+
113
+ Record a changed decision. Marks an accepted ADR as `Accepted — superseded by ADR-####` and creates
114
+ a new accepted ADR that declares what it supersedes, so the reasoning trail stays auditable instead
115
+ of being overwritten. Doctor then warns about any memory still referencing the superseded decision.
116
+
117
+ Options:
118
+
119
+ - `--dry-run`: show planned writes without writing files.
120
+ - `--force`: overwrite existing files explicitly.
121
+
111
122
  ### `recall module create <name>`
112
123
 
113
124
  Create module memory docs under the configured modules directory.
@@ -124,7 +135,8 @@ engineering evidence is present, and whether memory references decisions that ex
124
135
  accepted.
125
136
 
126
137
  Doctor also runs deterministic drift checks: feature or module memory that references a missing ADR
127
- is an error, and memory that references a not-yet-accepted ADR is a warning.
138
+ is an error, memory that references a not-yet-accepted ADR is a warning, and memory that still
139
+ references a superseded decision is a warning.
128
140
 
129
141
  Exit codes:
130
142
 
@@ -13,3 +13,16 @@ Required reading:
13
13
  - `docs/60-engineering/ENGINEERING_STANDARDS.md`
14
14
 
15
15
  Repository rules override model preferences. If instructions conflict, stop and report the conflict.
16
+
17
+ ## Changing an accepted decision
18
+
19
+ Before changing anything an accepted ADR governs (framework, database, auth, API shape, and
20
+ similar):
21
+
22
+ 1. Check `docs/adrs/` for an accepted ADR that covers it.
23
+ 2. If your change contradicts one, stop and confirm with a human first — do not silently change the
24
+ code and leave the ADR saying the opposite.
25
+ 3. Record the change as a new decision with `recall adr supersede <old> <new-title>`. That
26
+ supersedes the old ADR instead of overwriting history, so the reasoning stays auditable.
27
+
28
+ Repository memory is only trustworthy if decisions change through this trail, not silently.
@@ -4,3 +4,12 @@ AI agents must follow repository memory over model preference.
4
4
 
5
5
  If a request conflicts with accepted repository memory or engineering standards, stop and report the
6
6
  conflict.
7
+
8
+ ## Changing an accepted decision
9
+
10
+ When work would change something an accepted ADR governs:
11
+
12
+ 1. Find the accepted ADR in `docs/adrs/` that covers it.
13
+ 2. If the change contradicts it, stop and confirm with a human before changing the code.
14
+ 3. Record the new decision with `recall adr supersede <old> <new-title>` so the old ADR is marked
15
+ superseded and the reasoning is preserved, instead of silently editing or contradicting it.
@@ -108,6 +108,17 @@ Options:
108
108
  - `--dry-run`: show planned writes without writing files.
109
109
  - `--force`: overwrite existing files explicitly.
110
110
 
111
+ ### `recall adr supersede <old> <new-title>`
112
+
113
+ Record a changed decision. Marks an accepted ADR as `Accepted — superseded by ADR-####` and creates
114
+ a new accepted ADR that declares what it supersedes, so the reasoning trail stays auditable instead
115
+ of being overwritten. Doctor then warns about any memory still referencing the superseded decision.
116
+
117
+ Options:
118
+
119
+ - `--dry-run`: show planned writes without writing files.
120
+ - `--force`: overwrite existing files explicitly.
121
+
111
122
  ### `recall module create <name>`
112
123
 
113
124
  Create module memory docs under the configured modules directory.
@@ -124,7 +135,8 @@ engineering evidence is present, and whether memory references decisions that ex
124
135
  accepted.
125
136
 
126
137
  Doctor also runs deterministic drift checks: feature or module memory that references a missing ADR
127
- is an error, and memory that references a not-yet-accepted ADR is a warning.
138
+ is an error, memory that references a not-yet-accepted ADR is a warning, and memory that still
139
+ references a superseded decision is a warning.
128
140
 
129
141
  Exit codes:
130
142
 
@@ -13,3 +13,16 @@ Required reading:
13
13
  - `docs/60-engineering/ENGINEERING_STANDARDS.md`
14
14
 
15
15
  Repository rules override model preferences. If instructions conflict, stop and report the conflict.
16
+
17
+ ## Changing an accepted decision
18
+
19
+ Before changing anything an accepted ADR governs (framework, database, auth, API shape, and
20
+ similar):
21
+
22
+ 1. Check `docs/adrs/` for an accepted ADR that covers it.
23
+ 2. If your change contradicts one, stop and confirm with a human first — do not silently change the
24
+ code and leave the ADR saying the opposite.
25
+ 3. Record the change as a new decision with `recall adr supersede <old> <new-title>`. That
26
+ supersedes the old ADR instead of overwriting history, so the reasoning stays auditable.
27
+
28
+ Repository memory is only trustworthy if decisions change through this trail, not silently.
@@ -4,3 +4,12 @@ AI agents must follow repository memory over model preference.
4
4
 
5
5
  If a request conflicts with accepted repository memory or engineering standards, stop and report the
6
6
  conflict.
7
+
8
+ ## Changing an accepted decision
9
+
10
+ When work would change something an accepted ADR governs:
11
+
12
+ 1. Find the accepted ADR in `docs/adrs/` that covers it.
13
+ 2. If the change contradicts it, stop and confirm with a human before changing the code.
14
+ 3. Record the new decision with `recall adr supersede <old> <new-title>` so the old ADR is marked
15
+ superseded and the reasoning is preserved, instead of silently editing or contradicting it.
@@ -108,6 +108,17 @@ Options:
108
108
  - `--dry-run`: show planned writes without writing files.
109
109
  - `--force`: overwrite existing files explicitly.
110
110
 
111
+ ### `recall adr supersede <old> <new-title>`
112
+
113
+ Record a changed decision. Marks an accepted ADR as `Accepted — superseded by ADR-####` and creates
114
+ a new accepted ADR that declares what it supersedes, so the reasoning trail stays auditable instead
115
+ of being overwritten. Doctor then warns about any memory still referencing the superseded decision.
116
+
117
+ Options:
118
+
119
+ - `--dry-run`: show planned writes without writing files.
120
+ - `--force`: overwrite existing files explicitly.
121
+
111
122
  ### `recall module create <name>`
112
123
 
113
124
  Create module memory docs under the configured modules directory.
@@ -124,7 +135,8 @@ engineering evidence is present, and whether memory references decisions that ex
124
135
  accepted.
125
136
 
126
137
  Doctor also runs deterministic drift checks: feature or module memory that references a missing ADR
127
- is an error, and memory that references a not-yet-accepted ADR is a warning.
138
+ is an error, memory that references a not-yet-accepted ADR is a warning, and memory that still
139
+ references a superseded decision is a warning.
128
140
 
129
141
  Exit codes:
130
142
 
@@ -13,3 +13,16 @@ Required reading:
13
13
  - `docs/60-engineering/ENGINEERING_STANDARDS.md`
14
14
 
15
15
  Repository rules override model preferences. If instructions conflict, stop and report the conflict.
16
+
17
+ ## Changing an accepted decision
18
+
19
+ Before changing anything an accepted ADR governs (framework, database, auth, API shape, and
20
+ similar):
21
+
22
+ 1. Check `docs/adrs/` for an accepted ADR that covers it.
23
+ 2. If your change contradicts one, stop and confirm with a human first — do not silently change the
24
+ code and leave the ADR saying the opposite.
25
+ 3. Record the change as a new decision with `recall adr supersede <old> <new-title>`. That
26
+ supersedes the old ADR instead of overwriting history, so the reasoning stays auditable.
27
+
28
+ Repository memory is only trustworthy if decisions change through this trail, not silently.
@@ -4,3 +4,12 @@ AI agents must follow repository memory over model preference.
4
4
 
5
5
  If a request conflicts with accepted repository memory or engineering standards, stop and report the
6
6
  conflict.
7
+
8
+ ## Changing an accepted decision
9
+
10
+ When work would change something an accepted ADR governs:
11
+
12
+ 1. Find the accepted ADR in `docs/adrs/` that covers it.
13
+ 2. If the change contradicts it, stop and confirm with a human before changing the code.
14
+ 3. Record the new decision with `recall adr supersede <old> <new-title>` so the old ADR is marked
15
+ superseded and the reasoning is preserved, instead of silently editing or contradicting it.
@@ -108,6 +108,17 @@ Options:
108
108
  - `--dry-run`: show planned writes without writing files.
109
109
  - `--force`: overwrite existing files explicitly.
110
110
 
111
+ ### `recall adr supersede <old> <new-title>`
112
+
113
+ Record a changed decision. Marks an accepted ADR as `Accepted — superseded by ADR-####` and creates
114
+ a new accepted ADR that declares what it supersedes, so the reasoning trail stays auditable instead
115
+ of being overwritten. Doctor then warns about any memory still referencing the superseded decision.
116
+
117
+ Options:
118
+
119
+ - `--dry-run`: show planned writes without writing files.
120
+ - `--force`: overwrite existing files explicitly.
121
+
111
122
  ### `recall module create <name>`
112
123
 
113
124
  Create module memory docs under the configured modules directory.
@@ -124,7 +135,8 @@ engineering evidence is present, and whether memory references decisions that ex
124
135
  accepted.
125
136
 
126
137
  Doctor also runs deterministic drift checks: feature or module memory that references a missing ADR
127
- is an error, and memory that references a not-yet-accepted ADR is a warning.
138
+ is an error, memory that references a not-yet-accepted ADR is a warning, and memory that still
139
+ references a superseded decision is a warning.
128
140
 
129
141
  Exit codes:
130
142
 
@@ -13,3 +13,16 @@ Required reading:
13
13
  - `docs/60-engineering/ENGINEERING_STANDARDS.md`
14
14
 
15
15
  Repository rules override model preferences. If instructions conflict, stop and report the conflict.
16
+
17
+ ## Changing an accepted decision
18
+
19
+ Before changing anything an accepted ADR governs (framework, database, auth, API shape, and
20
+ similar):
21
+
22
+ 1. Check `docs/adrs/` for an accepted ADR that covers it.
23
+ 2. If your change contradicts one, stop and confirm with a human first — do not silently change the
24
+ code and leave the ADR saying the opposite.
25
+ 3. Record the change as a new decision with `recall adr supersede <old> <new-title>`. That
26
+ supersedes the old ADR instead of overwriting history, so the reasoning stays auditable.
27
+
28
+ Repository memory is only trustworthy if decisions change through this trail, not silently.
@@ -4,3 +4,12 @@ AI agents must follow repository memory over model preference.
4
4
 
5
5
  If a request conflicts with accepted repository memory or engineering standards, stop and report the
6
6
  conflict.
7
+
8
+ ## Changing an accepted decision
9
+
10
+ When work would change something an accepted ADR governs:
11
+
12
+ 1. Find the accepted ADR in `docs/adrs/` that covers it.
13
+ 2. If the change contradicts it, stop and confirm with a human before changing the code.
14
+ 3. Record the new decision with `recall adr supersede <old> <new-title>` so the old ADR is marked
15
+ superseded and the reasoning is preserved, instead of silently editing or contradicting it.
@@ -108,6 +108,17 @@ Options:
108
108
  - `--dry-run`: show planned writes without writing files.
109
109
  - `--force`: overwrite existing files explicitly.
110
110
 
111
+ ### `recall adr supersede <old> <new-title>`
112
+
113
+ Record a changed decision. Marks an accepted ADR as `Accepted — superseded by ADR-####` and creates
114
+ a new accepted ADR that declares what it supersedes, so the reasoning trail stays auditable instead
115
+ of being overwritten. Doctor then warns about any memory still referencing the superseded decision.
116
+
117
+ Options:
118
+
119
+ - `--dry-run`: show planned writes without writing files.
120
+ - `--force`: overwrite existing files explicitly.
121
+
111
122
  ### `recall module create <name>`
112
123
 
113
124
  Create module memory docs under the configured modules directory.
@@ -124,7 +135,8 @@ engineering evidence is present, and whether memory references decisions that ex
124
135
  accepted.
125
136
 
126
137
  Doctor also runs deterministic drift checks: feature or module memory that references a missing ADR
127
- is an error, and memory that references a not-yet-accepted ADR is a warning.
138
+ is an error, memory that references a not-yet-accepted ADR is a warning, and memory that still
139
+ references a superseded decision is a warning.
128
140
 
129
141
  Exit codes:
130
142
 
@@ -13,3 +13,16 @@ Required reading:
13
13
  - `docs/60-engineering/ENGINEERING_STANDARDS.md`
14
14
 
15
15
  Repository rules override model preferences. If instructions conflict, stop and report the conflict.
16
+
17
+ ## Changing an accepted decision
18
+
19
+ Before changing anything an accepted ADR governs (framework, database, auth, API shape, and
20
+ similar):
21
+
22
+ 1. Check `docs/adrs/` for an accepted ADR that covers it.
23
+ 2. If your change contradicts one, stop and confirm with a human first — do not silently change the
24
+ code and leave the ADR saying the opposite.
25
+ 3. Record the change as a new decision with `recall adr supersede <old> <new-title>`. That
26
+ supersedes the old ADR instead of overwriting history, so the reasoning stays auditable.
27
+
28
+ Repository memory is only trustworthy if decisions change through this trail, not silently.
@@ -4,3 +4,12 @@ AI agents must follow repository memory over model preference.
4
4
 
5
5
  If a request conflicts with accepted repository memory or engineering standards, stop and report the
6
6
  conflict.
7
+
8
+ ## Changing an accepted decision
9
+
10
+ When work would change something an accepted ADR governs:
11
+
12
+ 1. Find the accepted ADR in `docs/adrs/` that covers it.
13
+ 2. If the change contradicts it, stop and confirm with a human before changing the code.
14
+ 3. Record the new decision with `recall adr supersede <old> <new-title>` so the old ADR is marked
15
+ superseded and the reasoning is preserved, instead of silently editing or contradicting it.
@@ -108,6 +108,17 @@ Options:
108
108
  - `--dry-run`: show planned writes without writing files.
109
109
  - `--force`: overwrite existing files explicitly.
110
110
 
111
+ ### `recall adr supersede <old> <new-title>`
112
+
113
+ Record a changed decision. Marks an accepted ADR as `Accepted — superseded by ADR-####` and creates
114
+ a new accepted ADR that declares what it supersedes, so the reasoning trail stays auditable instead
115
+ of being overwritten. Doctor then warns about any memory still referencing the superseded decision.
116
+
117
+ Options:
118
+
119
+ - `--dry-run`: show planned writes without writing files.
120
+ - `--force`: overwrite existing files explicitly.
121
+
111
122
  ### `recall module create <name>`
112
123
 
113
124
  Create module memory docs under the configured modules directory.
@@ -124,7 +135,8 @@ engineering evidence is present, and whether memory references decisions that ex
124
135
  accepted.
125
136
 
126
137
  Doctor also runs deterministic drift checks: feature or module memory that references a missing ADR
127
- is an error, and memory that references a not-yet-accepted ADR is a warning.
138
+ is an error, memory that references a not-yet-accepted ADR is a warning, and memory that still
139
+ references a superseded decision is a warning.
128
140
 
129
141
  Exit codes:
130
142
 
@@ -13,3 +13,16 @@ Required reading:
13
13
  - `docs/60-engineering/ENGINEERING_STANDARDS.md`
14
14
 
15
15
  Repository rules override model preferences. If instructions conflict, stop and report the conflict.
16
+
17
+ ## Changing an accepted decision
18
+
19
+ Before changing anything an accepted ADR governs (framework, database, auth, API shape, and
20
+ similar):
21
+
22
+ 1. Check `docs/adrs/` for an accepted ADR that covers it.
23
+ 2. If your change contradicts one, stop and confirm with a human first — do not silently change the
24
+ code and leave the ADR saying the opposite.
25
+ 3. Record the change as a new decision with `recall adr supersede <old> <new-title>`. That
26
+ supersedes the old ADR instead of overwriting history, so the reasoning stays auditable.
27
+
28
+ Repository memory is only trustworthy if decisions change through this trail, not silently.
@@ -4,3 +4,12 @@ AI agents must follow repository memory over model preference.
4
4
 
5
5
  If a request conflicts with accepted repository memory or engineering standards, stop and report the
6
6
  conflict.
7
+
8
+ ## Changing an accepted decision
9
+
10
+ When work would change something an accepted ADR governs:
11
+
12
+ 1. Find the accepted ADR in `docs/adrs/` that covers it.
13
+ 2. If the change contradicts it, stop and confirm with a human before changing the code.
14
+ 3. Record the new decision with `recall adr supersede <old> <new-title>` so the old ADR is marked
15
+ superseded and the reasoning is preserved, instead of silently editing or contradicting it.
@@ -108,6 +108,17 @@ Options:
108
108
  - `--dry-run`: show planned writes without writing files.
109
109
  - `--force`: overwrite existing files explicitly.
110
110
 
111
+ ### `recall adr supersede <old> <new-title>`
112
+
113
+ Record a changed decision. Marks an accepted ADR as `Accepted — superseded by ADR-####` and creates
114
+ a new accepted ADR that declares what it supersedes, so the reasoning trail stays auditable instead
115
+ of being overwritten. Doctor then warns about any memory still referencing the superseded decision.
116
+
117
+ Options:
118
+
119
+ - `--dry-run`: show planned writes without writing files.
120
+ - `--force`: overwrite existing files explicitly.
121
+
111
122
  ### `recall module create <name>`
112
123
 
113
124
  Create module memory docs under the configured modules directory.
@@ -124,7 +135,8 @@ engineering evidence is present, and whether memory references decisions that ex
124
135
  accepted.
125
136
 
126
137
  Doctor also runs deterministic drift checks: feature or module memory that references a missing ADR
127
- is an error, and memory that references a not-yet-accepted ADR is a warning.
138
+ is an error, memory that references a not-yet-accepted ADR is a warning, and memory that still
139
+ references a superseded decision is a warning.
128
140
 
129
141
  Exit codes:
130
142
 
@@ -13,3 +13,16 @@ Required reading:
13
13
  - `docs/60-engineering/ENGINEERING_STANDARDS.md`
14
14
 
15
15
  Repository rules override model preferences. If instructions conflict, stop and report the conflict.
16
+
17
+ ## Changing an accepted decision
18
+
19
+ Before changing anything an accepted ADR governs (framework, database, auth, API shape, and
20
+ similar):
21
+
22
+ 1. Check `docs/adrs/` for an accepted ADR that covers it.
23
+ 2. If your change contradicts one, stop and confirm with a human first — do not silently change the
24
+ code and leave the ADR saying the opposite.
25
+ 3. Record the change as a new decision with `recall adr supersede <old> <new-title>`. That
26
+ supersedes the old ADR instead of overwriting history, so the reasoning stays auditable.
27
+
28
+ Repository memory is only trustworthy if decisions change through this trail, not silently.
@@ -4,3 +4,12 @@ AI agents must follow repository memory over model preference.
4
4
 
5
5
  If a request conflicts with accepted repository memory or engineering standards, stop and report the
6
6
  conflict.
7
+
8
+ ## Changing an accepted decision
9
+
10
+ When work would change something an accepted ADR governs:
11
+
12
+ 1. Find the accepted ADR in `docs/adrs/` that covers it.
13
+ 2. If the change contradicts it, stop and confirm with a human before changing the code.
14
+ 3. Record the new decision with `recall adr supersede <old> <new-title>` so the old ADR is marked
15
+ superseded and the reasoning is preserved, instead of silently editing or contradicting it.
@@ -108,6 +108,17 @@ Options:
108
108
  - `--dry-run`: show planned writes without writing files.
109
109
  - `--force`: overwrite existing files explicitly.
110
110
 
111
+ ### `recall adr supersede <old> <new-title>`
112
+
113
+ Record a changed decision. Marks an accepted ADR as `Accepted — superseded by ADR-####` and creates
114
+ a new accepted ADR that declares what it supersedes, so the reasoning trail stays auditable instead
115
+ of being overwritten. Doctor then warns about any memory still referencing the superseded decision.
116
+
117
+ Options:
118
+
119
+ - `--dry-run`: show planned writes without writing files.
120
+ - `--force`: overwrite existing files explicitly.
121
+
111
122
  ### `recall module create <name>`
112
123
 
113
124
  Create module memory docs under the configured modules directory.
@@ -124,7 +135,8 @@ engineering evidence is present, and whether memory references decisions that ex
124
135
  accepted.
125
136
 
126
137
  Doctor also runs deterministic drift checks: feature or module memory that references a missing ADR
127
- is an error, and memory that references a not-yet-accepted ADR is a warning.
138
+ is an error, memory that references a not-yet-accepted ADR is a warning, and memory that still
139
+ references a superseded decision is a warning.
128
140
 
129
141
  Exit codes:
130
142
 
@@ -13,3 +13,16 @@ Required reading:
13
13
  - `docs/60-engineering/ENGINEERING_STANDARDS.md`
14
14
 
15
15
  Repository rules override model preferences. If instructions conflict, stop and report the conflict.
16
+
17
+ ## Changing an accepted decision
18
+
19
+ Before changing anything an accepted ADR governs (framework, database, auth, API shape, and
20
+ similar):
21
+
22
+ 1. Check `docs/adrs/` for an accepted ADR that covers it.
23
+ 2. If your change contradicts one, stop and confirm with a human first — do not silently change the
24
+ code and leave the ADR saying the opposite.
25
+ 3. Record the change as a new decision with `recall adr supersede <old> <new-title>`. That
26
+ supersedes the old ADR instead of overwriting history, so the reasoning stays auditable.
27
+
28
+ Repository memory is only trustworthy if decisions change through this trail, not silently.
@@ -4,3 +4,12 @@ AI agents must follow repository memory over model preference.
4
4
 
5
5
  If a request conflicts with accepted repository memory or engineering standards, stop and report the
6
6
  conflict.
7
+
8
+ ## Changing an accepted decision
9
+
10
+ When work would change something an accepted ADR governs:
11
+
12
+ 1. Find the accepted ADR in `docs/adrs/` that covers it.
13
+ 2. If the change contradicts it, stop and confirm with a human before changing the code.
14
+ 3. Record the new decision with `recall adr supersede <old> <new-title>` so the old ADR is marked
15
+ superseded and the reasoning is preserved, instead of silently editing or contradicting it.
@@ -108,6 +108,17 @@ Options:
108
108
  - `--dry-run`: show planned writes without writing files.
109
109
  - `--force`: overwrite existing files explicitly.
110
110
 
111
+ ### `recall adr supersede <old> <new-title>`
112
+
113
+ Record a changed decision. Marks an accepted ADR as `Accepted — superseded by ADR-####` and creates
114
+ a new accepted ADR that declares what it supersedes, so the reasoning trail stays auditable instead
115
+ of being overwritten. Doctor then warns about any memory still referencing the superseded decision.
116
+
117
+ Options:
118
+
119
+ - `--dry-run`: show planned writes without writing files.
120
+ - `--force`: overwrite existing files explicitly.
121
+
111
122
  ### `recall module create <name>`
112
123
 
113
124
  Create module memory docs under the configured modules directory.
@@ -124,7 +135,8 @@ engineering evidence is present, and whether memory references decisions that ex
124
135
  accepted.
125
136
 
126
137
  Doctor also runs deterministic drift checks: feature or module memory that references a missing ADR
127
- is an error, and memory that references a not-yet-accepted ADR is a warning.
138
+ is an error, memory that references a not-yet-accepted ADR is a warning, and memory that still
139
+ references a superseded decision is a warning.
128
140
 
129
141
  Exit codes:
130
142
 
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "recall-os",
3
- "version": "0.2.1",
3
+ "version": "0.3.0",
4
4
  "description": "Architecture-neutral repository memory for AI-assisted software teams.",
5
5
  "packageManager": "pnpm@10.12.3",
6
6
  "type": "module",
7
7
  "license": "MIT",
8
8
  "author": "Karthick Ramachandran",
9
- "homepage": "https://github.com/Karthick-Ramachandran/recall-os#readme",
9
+ "homepage": "https://recall-os.pages.dev",
10
10
  "repository": {
11
11
  "type": "git",
12
12
  "url": "git+https://github.com/Karthick-Ramachandran/recall-os.git"