arcane-cli 0.15.1 → 0.15.2
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.
|
@@ -44,6 +44,10 @@ Concrete detectors to run (in addition to general contradiction/stale-date check
|
|
|
44
44
|
- **Journal chronology** — journal entries and their dates must be in sane order. Flag out-of-order entries, duplicate session numbers, and any future or otherwise contradictory dates.
|
|
45
45
|
- **Done vs. carry-forward consistency** — items marked done must not still appear as open or carry-forward items, and items listed as open/carry-forward must not also be marked done elsewhere.
|
|
46
46
|
- **Decision-ID existence** — decision IDs referenced in TODO, journal, or other docs must exist in `DECISIONS.md`, and the IDs in the decisions log must be sequential and unique (no gaps that imply a missing entry, no duplicates).
|
|
47
|
+
- **Canonical vs. installed-copy parity** — for every managed root file that has a canonical counterpart under `src/assets/`, compare bytes first. If bytes differ, normalize `CRLF` and lone `CR` to `LF` in both files and compare again:
|
|
48
|
+
- If normalized content differs, report **real content drift** with normal severity grading.
|
|
49
|
+
- If normalized content matches, report **line-ending-only drift** separately. Do not count these paths as real content findings and do not include them in severity totals or the Go / No-Go decision.
|
|
50
|
+
- Report exact path counts for both classes. Never summarize all byte-different files as content drift.
|
|
47
51
|
|
|
48
52
|
For each drift finding include:
|
|
49
53
|
|
|
@@ -68,12 +72,18 @@ Output format:
|
|
|
68
72
|
|
|
69
73
|
- **Scope:** the `--scope` value (`all`/`journal`/`todos`/`decisions`/`git`), any free-text hint, and mode (`report-only` or `--fix`).
|
|
70
74
|
- **Date:** ISO date of this run.
|
|
71
|
-
- **
|
|
75
|
+
- **Real content findings:** total count, broken down per severity.
|
|
76
|
+
- **Line-ending-only drift:** path count, reported separately and excluded from severity totals.
|
|
72
77
|
|
|
73
|
-
## Drift Findings
|
|
78
|
+
## Real Content Drift Findings
|
|
74
79
|
|
|
75
80
|
- One line per finding with `file:line` references (or nearest locator) and its severity rationale.
|
|
76
81
|
|
|
82
|
+
## Line-Ending-Only Drift
|
|
83
|
+
|
|
84
|
+
- List byte-different paths whose contents match after line-ending normalization, or `None`.
|
|
85
|
+
- Keep this list separate from real content findings even when it is long; a count plus path list is sufficient.
|
|
86
|
+
|
|
77
87
|
## Fixes Applied
|
|
78
88
|
|
|
79
89
|
- List edits applied (only possible in `--fix` mode), or `None`.
|
|
@@ -94,4 +104,6 @@ Rules:
|
|
|
94
104
|
|
|
95
105
|
- Prefer ADR decisions and latest journal facts when conflicts exist.
|
|
96
106
|
- Do not rewrite historical journal content.
|
|
107
|
+
- Treat `src/assets/` as canonical when comparing a managed root dogfood copy with its distributable source counterpart.
|
|
108
|
+
- A line-ending-only difference is review noise, not evidence of contradictory content; never let it create a Critical/High finding or a `NO-GO` verdict by itself.
|
|
97
109
|
- Keep changes minimal and traceable.
|
|
@@ -76,7 +76,7 @@ Before anything else, check:
|
|
|
76
76
|
- If current branch is non-compliant and no active PR depends on it, record the required rename for the Mutation Guard. Do not rename during a read-only session.
|
|
77
77
|
- If an active PR uses the old branch name, do not force-delete the old remote branch; flag it and continue with a follow-up rename plan.
|
|
78
78
|
- **Stale local branches:** Run `git branch --merged main` to list branches already merged that should be deleted.
|
|
79
|
-
- **Tracker configuration check (early):** resolve active tracking settings before planning. Read `.arcane.json` first (if present), then the current feature PRD frontmatter if available:
|
|
79
|
+
- **Tracker configuration check (early):** resolve active tracking settings before planning. Read root `.arcane.json` first (if present), then the current feature PRD frontmatter if available. A self-host marker under `src/assets/` is doctor metadata, not active repository configuration; never use it as tracking provenance. If neither active source sets tracking, ask the operator and treat the answer as session-scoped until EF-14 defines persistent configuration:
|
|
80
80
|
- `tracking_mode: internal | external`
|
|
81
81
|
- `external_provider: ado | jira | other`
|
|
82
82
|
- If missing, ask the operator to choose now. Default to `external` + `ado` only when existing ADO context already exists (backward compatibility).
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "arcane-cli",
|
|
3
|
-
"version": "0.15.
|
|
3
|
+
"version": "0.15.2",
|
|
4
4
|
"description": "Arcane framework CLI — scaffold and manage governance files in consuming repositories",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"arcane",
|
|
@@ -40,6 +40,8 @@
|
|
|
40
40
|
"test:coverage": "vitest run --coverage",
|
|
41
41
|
"lint": "eslint src test",
|
|
42
42
|
"typecheck": "tsc --noEmit",
|
|
43
|
+
"check:self-host-parity": "tsx scripts/self-host-parity.ts --check",
|
|
44
|
+
"fix:self-host-parity": "tsx scripts/self-host-parity.ts --fix",
|
|
43
45
|
"check:version-bump": "tsx scripts/check-version-bump.ts",
|
|
44
46
|
"prepare": "husky"
|
|
45
47
|
},
|