archik 0.9.0 → 0.9.1
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/.claude/skills/archik/SKILL.md +18 -1
- package/dist/cli/archik.mjs +2 -2
- package/dist/ui/assets/index-B5PVNzmR.js +220 -0
- package/dist/ui/assets/index-X8X8JCwV.css +1 -0
- package/dist/ui/index.html +2 -2
- package/package.json +1 -1
- package/dist/ui/assets/index-DGnRRSAA.js +0 -220
- package/dist/ui/assets/index-s04yHjLy.css +0 -1
|
@@ -44,7 +44,24 @@ Archik files have **three modes**, selected by filename suffix. Validation stric
|
|
|
44
44
|
- Are you sketching a not-yet-built system, or proposing an architecture for a new project? → **discussion**. Don't pollute the main file with speculation.
|
|
45
45
|
- Are you adding a `sourcePath` for a node whose code is going to be created soon? → **discussion**, then move to **normal** once the code exists.
|
|
46
46
|
|
|
47
|
-
If `suggest set` rejects your draft with a `sourcePath` error, the right answer is usually one of: (a) fix the path to point at real code, (b) move the work into `*.archik.discussion.yaml`,
|
|
47
|
+
If `suggest set` rejects your draft with a `sourcePath` error, the right answer is usually one of: (a) fix the path to point at real code, (b) move the work into `*.archik.discussion.yaml`, (c) use a non-code-bearing kind (e.g., `external` for a third-party service), or (d) mark the node `status: proposed` if it's a planned-but-not-built component (see "Lifecycle status" below).
|
|
48
|
+
|
|
49
|
+
## Lifecycle status — `proposed`, `active`, `deprecated`
|
|
50
|
+
|
|
51
|
+
Nodes carry an optional `status` field. Use it to keep the canonical diagram honest about what's built vs. what's planned vs. what's going away — without dropping nodes from the file or shoving them into a discussion sketch.
|
|
52
|
+
|
|
53
|
+
| status | When | sourcePath rule | Visual |
|
|
54
|
+
| ------------------------- | --------------------------------------------------------------------------------------------- | ---------------------------------------------------------- | ------------------------------------- |
|
|
55
|
+
| absent / `active` | Built and live (default). | Required for code-bearing kinds, must exist on disk. | Standard solid stroke. |
|
|
56
|
+
| `proposed` | Planned for the next iteration — node belongs in the canonical map but the code isn't there yet. | Optional. If you supply one, it must still exist on disk. | Dashed stroke + reduced opacity. |
|
|
57
|
+
| `deprecated` | Being phased out; reads/writes shouldn't depend on it going forward. | Optional. Same on-disk rule as `proposed` if you set one. | Dashed stroke + amber + strikethrough name. |
|
|
58
|
+
|
|
59
|
+
**`proposed` vs. a discussion file.** They're complementary, not interchangeable:
|
|
60
|
+
|
|
61
|
+
- A `*.archik.discussion.yaml` file is for **whole hypothetical architectures** — a sketch the team is exploring, a diagram for a not-yet-started project, a "what if we built X?" option. The whole file is a draft.
|
|
62
|
+
- `status: proposed` on a node lives inside the **canonical normal file**. The architecture as a whole is real; this one node is the next thing to build. `archik drift` skips proposed nodes so they don't trigger orphan warnings before their code lands.
|
|
63
|
+
|
|
64
|
+
When in doubt: if the user is adding a single planned component to a real project, use `status: proposed` in the normal file. If they're sketching something with no anchor in the existing codebase, use a discussion file.
|
|
48
65
|
|
|
49
66
|
## Slash commands (user-facing entry points)
|
|
50
67
|
|