aval-adr 0.7.0 → 1.1.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 (2) hide show
  1. package/README.md +30 -1
  2. package/package.json +7 -7
package/README.md CHANGED
@@ -101,6 +101,28 @@ load, or a name it does not carry.
101
101
  Nothing on that surface writes. Resolving answers a question; deciding is not
102
102
  something to do on an agent's behalf.
103
103
 
104
+ **From the parent of all your projects**, where there is no corpus above and
105
+ several below, the same server is a **workspace**: every tool takes `repo` to name one.
106
+ `resolve` and `history` answer for all of them when it is omitted — a map
107
+ keyed by name, which is the cross-repository question in a single call —
108
+ while `keys`, `heads` and `show` ask for a name, because every repository's
109
+ heads at once is a lot of context to fetch by forgetting an argument.
110
+ `aval repos` says what was found, and `--all-repos` renders the same map from
111
+ the shell:
112
+
113
+ ```console
114
+ $ aval resolve stack.sql-layer --scope effect-stack --all-repos
115
+ == decisions ==
116
+ active ADR-0002 @effect/sql
117
+
118
+ == homelab ==
119
+ unknown no such key `stack.sql-layer`
120
+
121
+ ```
122
+
123
+ A linked worktree is detected and left out when its parent is also there, so
124
+ one corpus never answers twice; it stays addressable by name.
125
+
104
126
  Codes `1`, `2` and `3` mean the tool failed, was misused, or could not read the
105
127
  corpus. They never overlap a verdict, so "I could not look" is never mistaken
106
128
  for "I looked and found nothing".
@@ -161,6 +183,11 @@ a disagreement with the fleet's answer at the fleet's scope.
161
183
  Nothing in a pack is ever executed, so there is no trust prompt to match
162
184
  `amont trust`. The review gate is the pull request that adds the file.
163
185
 
186
+ That "inert" scopes to execution. A pack's text does reach an agent's context,
187
+ so the hook and the MCP tools both say that a record's wording is data rather
188
+ than instruction, and a value carrying a control character or a bidi override
189
+ is refused — the reviewer and the model must see the same bytes.
190
+
164
191
  ## Status
165
192
 
166
193
  Published, and in use: the resolver, the invariants, the projection, the CLI,
@@ -168,7 +195,9 @@ vendoring and the tool surface all work, against real corpora rather than
168
195
  fixtures. [`SEMANTICS.md`](SEMANTICS.md) is normative and is the place to
169
196
  start if you intend to write records against this.
170
197
 
171
- Still to come: a 1.0.
198
+ **1.0.** The verdicts, their exit codes, the note strings, the `--json` field
199
+ names and the frontmatter dialect are stable; §15 of [`SEMANTICS.md`](SEMANTICS.md)
200
+ says exactly what that covers, and what it deliberately does not.
172
201
 
173
202
  ## Install
174
203
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aval-adr",
3
- "version": "0.7.0",
3
+ "version": "1.1.0",
4
4
  "description": "Ask what the current architecture decision is, and get a typed answer",
5
5
  "keywords": [
6
6
  "adr",
@@ -32,11 +32,11 @@
32
32
  "node": ">=18"
33
33
  },
34
34
  "optionalDependencies": {
35
- "@aval-adr/darwin-arm64": "0.7.0",
36
- "@aval-adr/darwin-x64": "0.7.0",
37
- "@aval-adr/linux-arm64-gnu": "0.7.0",
38
- "@aval-adr/linux-x64-gnu": "0.7.0",
39
- "@aval-adr/linux-x64-musl": "0.7.0",
40
- "@aval-adr/win32-x64": "0.7.0"
35
+ "@aval-adr/darwin-arm64": "1.1.0",
36
+ "@aval-adr/darwin-x64": "1.1.0",
37
+ "@aval-adr/linux-arm64-gnu": "1.1.0",
38
+ "@aval-adr/linux-x64-gnu": "1.1.0",
39
+ "@aval-adr/linux-x64-musl": "1.1.0",
40
+ "@aval-adr/win32-x64": "1.1.0"
41
41
  }
42
42
  }