yarramate 0.3.2 → 0.3.3
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.
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: yarramate-architecture
|
|
3
|
-
description: Discover
|
|
3
|
+
description: Discover, design, or maintain repository architecture using native YarraMate documents and the stable CLI. Use when an agent needs to map a codebase, propose an evidence-backed architecture model, brainstorm solution alternatives, evolve a model that already validates, rename or replace semantic subjects safely, define current/transition/target architecture, reconcile intent with evidence, or provide bounded architecture context to implementation work.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# YarraMate architecture
|
|
7
7
|
|
|
8
|
-
Use one repository-native lifecycle for discovery and
|
|
8
|
+
Use one repository-native lifecycle for discovery, design, and maintenance:
|
|
9
9
|
|
|
10
10
|
```text
|
|
11
11
|
evidence or design conversation
|
|
@@ -26,7 +26,10 @@ automatically.
|
|
|
26
26
|
existing project**.
|
|
27
27
|
- Intent and a not-yet-built solution are the starting point: follow **Design
|
|
28
28
|
a new solution**.
|
|
29
|
-
-
|
|
29
|
+
- A validating native model must change: follow **Maintain an existing
|
|
30
|
+
model**.
|
|
31
|
+
- Declared architecture and implementation both exist but no model change is
|
|
32
|
+
requested: begin with discovery,
|
|
30
33
|
preserve the declared model, then report supported, contradicted, unknown,
|
|
31
34
|
and unobserved claims without silently rewriting it.
|
|
32
35
|
|
|
@@ -67,6 +70,7 @@ yarramate evidence .yarramate/evidence/<evidence>.yaml .yarramate/workspace.yaml
|
|
|
67
70
|
yarramate reconcile .yarramate/workspace.yaml
|
|
68
71
|
yarramate context .yarramate/projections/<projection>.yaml .yarramate/workspace.yaml
|
|
69
72
|
yarramate view .yarramate/projections/<projection>.yaml .yarramate/workspace.yaml
|
|
73
|
+
yarramate-likec4 check .yarramate/integrations/likec4/project.yaml --json .yarramate/workspace.yaml
|
|
70
74
|
yarramate-likec4 map --sync .yarramate/integrations/likec4/subject-mapping.yaml .yarramate/workspace.yaml
|
|
71
75
|
yarramate-likec4 export-project .yarramate/integrations/likec4/project.yaml .yarramate-out/likec4 .yarramate/workspace.yaml
|
|
72
76
|
```
|
|
@@ -112,6 +116,7 @@ yarramate context .yarramate/projections/<target>.yaml .yarramate/workspace.yaml
|
|
|
112
116
|
yarramate view .yarramate/projections/<target>.yaml .yarramate/workspace.yaml
|
|
113
117
|
yarramate view .yarramate/projections/<flow>.yaml .yarramate/workspace.yaml
|
|
114
118
|
yarramate compare <document-id>#<baseline-state> <document-id>#<target-state> .yarramate/workspace.yaml
|
|
119
|
+
yarramate-likec4 check .yarramate/integrations/likec4/project.yaml --json .yarramate/workspace.yaml
|
|
115
120
|
yarramate-likec4 map --sync .yarramate/integrations/likec4/subject-mapping.yaml .yarramate/workspace.yaml
|
|
116
121
|
yarramate-likec4 export-project .yarramate/integrations/likec4/project.yaml .yarramate-out/likec4 .yarramate/workspace.yaml
|
|
117
122
|
```
|
|
@@ -125,10 +130,64 @@ yarramate-likec4 export-project .yarramate/integrations/likec4/project.yaml .yar
|
|
|
125
130
|
implementation context. Do not generate code until the requested design
|
|
126
131
|
decision is reviewable.
|
|
127
132
|
|
|
133
|
+
## Maintain an existing model
|
|
134
|
+
|
|
135
|
+
Use this journey for a deliberate change to a model that already passes its
|
|
136
|
+
checks, including a renamed subject, resolved gap, changed relationship, or
|
|
137
|
+
retired concept.
|
|
138
|
+
|
|
139
|
+
1. Discover the authored layout before assuming paths:
|
|
140
|
+
- read the workspace `documents`, `projections`, `adapterMappings`, and
|
|
141
|
+
`evidence` entries;
|
|
142
|
+
- locate any `yarramate/likec4-project/v1` document and follow its `mapping`
|
|
143
|
+
field;
|
|
144
|
+
- treat paths shown below as examples, not required repository layout.
|
|
145
|
+
Discover the repository’s authored paths instead of assuming these examples.
|
|
146
|
+
2. Establish a passing baseline with Core and every configured read-only
|
|
147
|
+
adapter check. If the baseline already fails, separate those pre-existing
|
|
148
|
+
diagnostics from the requested maintenance change.
|
|
149
|
+
3. Before changing an identity, search its local and globally qualified forms
|
|
150
|
+
across every workspace input. Account for:
|
|
151
|
+
- `references[].ref` citations;
|
|
152
|
+
- relationship `from` and `to` endpoints;
|
|
153
|
+
- evidence `subject` entries and stable claim targets;
|
|
154
|
+
- adapter mapping `native` entries;
|
|
155
|
+
- projection selectors, architecture states, ownership, and constraints.
|
|
156
|
+
4. Make the smallest coherent edit and update all referring authored inputs.
|
|
157
|
+
Do not rewrite unrelated architectural intent.
|
|
158
|
+
5. Run the read-only checks before any repair command so drift remains
|
|
159
|
+
observable:
|
|
160
|
+
|
|
161
|
+
```sh
|
|
162
|
+
yarramate check .yarramate/workspace.yaml --json
|
|
163
|
+
yarramate-likec4 check .yarramate/integrations/likec4/project.yaml --json .yarramate/workspace.yaml
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
6. If the adapter check reports intended mapping drift, repair it locally,
|
|
167
|
+
inspect the tracked diff, then verify again. Use `--prune` only after
|
|
168
|
+
confirming that stale native subjects were intentionally renamed or
|
|
169
|
+
removed:
|
|
170
|
+
|
|
171
|
+
```sh
|
|
172
|
+
yarramate-likec4 map --sync --prune .yarramate/integrations/likec4/subject-mapping.yaml .yarramate/workspace.yaml
|
|
173
|
+
git diff -- .yarramate
|
|
174
|
+
yarramate check .yarramate/workspace.yaml --json
|
|
175
|
+
yarramate-likec4 check .yarramate/integrations/likec4/project.yaml --json .yarramate/workspace.yaml
|
|
176
|
+
yarramate-likec4 export-project .yarramate/integrations/likec4/project.yaml .yarramate-out/likec4 .yarramate/workspace.yaml
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
7. Require both configured read-only checks to exit successfully after the
|
|
180
|
+
edit. The maintained model must pass before handoff. Report changed
|
|
181
|
+
identities, updated dependants, mapping repairs, generated output, and any
|
|
182
|
+
intentionally deferred architecture work.
|
|
183
|
+
|
|
128
184
|
## Correctness and authority
|
|
129
185
|
|
|
130
186
|
- Treat `check` as deterministic correctness, never as architecture approval,
|
|
131
187
|
completeness, or quality scoring.
|
|
188
|
+
- A repair command cannot serve as verification. Run read-only adapter checks
|
|
189
|
+
before `map --sync`, use sync only while authoring, and never put sync in a
|
|
190
|
+
CI verification gate.
|
|
132
191
|
- Keep LikeC4 optional. Default to visual output for these guided journeys,
|
|
133
192
|
but respect an explicit request for tool-neutral semantic output only.
|
|
134
193
|
- Keep adapter fields outside native documents.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
interface:
|
|
2
2
|
display_name: "YarraMate Architecture"
|
|
3
|
-
short_description: "Discover and
|
|
4
|
-
default_prompt: "Use $yarramate-architecture to discover or
|
|
3
|
+
short_description: "Discover, design, and maintain architecture"
|
|
4
|
+
default_prompt: "Use $yarramate-architecture to discover, design, or safely maintain this project architecture."
|
|
@@ -60,3 +60,11 @@ Design is minimally useful when:
|
|
|
60
60
|
- intended projections are rendered through a current LikeC4 project;
|
|
61
61
|
- rendering coverage gaps are stated, including intentional omissions;
|
|
62
62
|
- missing detail is visible without becoming a Core correctness error.
|
|
63
|
+
|
|
64
|
+
Maintenance is complete only when:
|
|
65
|
+
|
|
66
|
+
- all references to a changed identity were found before editing;
|
|
67
|
+
- native documents and configured adapters pass their read-only checks;
|
|
68
|
+
- any mapping sync or prune was reviewed as an authored Git change;
|
|
69
|
+
- generated views are current;
|
|
70
|
+
- changed identities and updated dependants are reported at handoff.
|
|
@@ -15,8 +15,10 @@ adapterMappings: []
|
|
|
15
15
|
evidence: [evidence/*.yaml]
|
|
16
16
|
```
|
|
17
17
|
|
|
18
|
-
Paths are relative to the manifest.
|
|
19
|
-
|
|
18
|
+
Paths are relative to the manifest. `.yarramate/` for canonical inputs and
|
|
19
|
+
`.yarramate-out/` for generated artifacts are recommended examples, not fixed
|
|
20
|
+
CLI paths. In an existing repository, read its workspace and project documents
|
|
21
|
+
and preserve the authored layout.
|
|
20
22
|
|
|
21
23
|
## Native document
|
|
22
24
|
|
|
@@ -196,6 +198,9 @@ Give every ordered flow its own focused projection and dynamic view. A dynamic
|
|
|
196
198
|
view takes its title and description from its projection; reusing one broad
|
|
197
199
|
projection for several flows makes their rendered identities ambiguous.
|
|
198
200
|
Ensure every intended projection is listed in the project.
|
|
201
|
+
In an existing repository, locate the project by its
|
|
202
|
+
`yarramate/likec4-project/v1` format and follow its `mapping` field instead of
|
|
203
|
+
assuming the example paths below.
|
|
199
204
|
|
|
200
205
|
Start the referenced mapping as a valid empty mapping, then let sync populate
|
|
201
206
|
it:
|
|
@@ -231,6 +236,10 @@ yarramate view <projection.yaml> .yarramate/workspace.yaml
|
|
|
231
236
|
yarramate compare <from-state> <to-state> .yarramate/workspace.yaml
|
|
232
237
|
yarramate evidence <evidence.yaml> .yarramate/workspace.yaml
|
|
233
238
|
yarramate reconcile .yarramate/workspace.yaml
|
|
239
|
+
yarramate-likec4 check \
|
|
240
|
+
.yarramate/integrations/likec4/project.yaml \
|
|
241
|
+
--json \
|
|
242
|
+
.yarramate/workspace.yaml
|
|
234
243
|
yarramate-likec4 map --sync \
|
|
235
244
|
.yarramate/integrations/likec4/subject-mapping.yaml \
|
|
236
245
|
.yarramate/workspace.yaml
|
|
@@ -240,6 +249,12 @@ yarramate-likec4 export-project \
|
|
|
240
249
|
.yarramate/workspace.yaml
|
|
241
250
|
```
|
|
242
251
|
|
|
252
|
+
`yarramate-likec4 check` is read-only verification and belongs in CI.
|
|
253
|
+
Run it before sync when checking an existing mapping so missing or stale
|
|
254
|
+
entries remain observable. `map --sync [--prune]` is an authoring repair: it
|
|
255
|
+
mutates a tracked mapping, so review and commit its diff. Never use a repair
|
|
256
|
+
command as a CI gate.
|
|
257
|
+
|
|
243
258
|
Sync preserves and reports mappings for native subjects that no longer exist.
|
|
244
259
|
After confirming that those subjects were intentionally removed or renamed,
|
|
245
260
|
delete the stale entries while adding missing mappings with:
|