@mmnto/cli 1.120.0 → 1.122.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 (95) hide show
  1. package/dist/artifact-vocabulary.d.ts +23 -0
  2. package/dist/artifact-vocabulary.d.ts.map +1 -0
  3. package/dist/artifact-vocabulary.js +23 -0
  4. package/dist/artifact-vocabulary.js.map +1 -0
  5. package/dist/commands/config-drift.test.js +26 -2
  6. package/dist/commands/config-drift.test.js.map +1 -1
  7. package/dist/commands/doctor-parity.d.ts.map +1 -1
  8. package/dist/commands/doctor-parity.js +21 -6
  9. package/dist/commands/doctor-parity.js.map +1 -1
  10. package/dist/commands/doctor-parity.test.js +14 -7
  11. package/dist/commands/doctor-parity.test.js.map +1 -1
  12. package/dist/commands/doctor.d.ts +21 -1
  13. package/dist/commands/doctor.d.ts.map +1 -1
  14. package/dist/commands/doctor.js +167 -9
  15. package/dist/commands/doctor.js.map +1 -1
  16. package/dist/commands/doctor.test.js +234 -6
  17. package/dist/commands/doctor.test.js.map +1 -1
  18. package/dist/commands/ecl-gc.d.ts.map +1 -1
  19. package/dist/commands/ecl-gc.js +38 -5
  20. package/dist/commands/ecl-gc.js.map +1 -1
  21. package/dist/commands/ecl-gc.test.js +71 -0
  22. package/dist/commands/ecl-gc.test.js.map +1 -1
  23. package/dist/commands/eject-totemdir.test.d.ts +8 -0
  24. package/dist/commands/eject-totemdir.test.d.ts.map +1 -0
  25. package/dist/commands/eject-totemdir.test.js +101 -0
  26. package/dist/commands/eject-totemdir.test.js.map +1 -0
  27. package/dist/commands/eject.d.ts +30 -5
  28. package/dist/commands/eject.d.ts.map +1 -1
  29. package/dist/commands/eject.js +145 -31
  30. package/dist/commands/eject.js.map +1 -1
  31. package/dist/commands/eject.test.js +3 -3
  32. package/dist/commands/eject.test.js.map +1 -1
  33. package/dist/commands/hook-totemdir-render.test.d.ts +23 -0
  34. package/dist/commands/hook-totemdir-render.test.d.ts.map +1 -0
  35. package/dist/commands/hook-totemdir-render.test.js +288 -0
  36. package/dist/commands/hook-totemdir-render.test.js.map +1 -0
  37. package/dist/commands/init-templates.d.ts +4 -4
  38. package/dist/commands/init-templates.d.ts.map +1 -1
  39. package/dist/commands/init-templates.js +3 -3
  40. package/dist/commands/install-hooks-exit-contract.test.js +6 -6
  41. package/dist/commands/install-hooks-exit-contract.test.js.map +1 -1
  42. package/dist/commands/install-hooks.d.ts +162 -12
  43. package/dist/commands/install-hooks.d.ts.map +1 -1
  44. package/dist/commands/install-hooks.js +521 -88
  45. package/dist/commands/install-hooks.js.map +1 -1
  46. package/dist/commands/install-hooks.test.js +922 -147
  47. package/dist/commands/install-hooks.test.js.map +1 -1
  48. package/dist/commands/link.d.ts.map +1 -1
  49. package/dist/commands/link.js +71 -16
  50. package/dist/commands/link.js.map +1 -1
  51. package/dist/commands/link.test.d.ts +9 -0
  52. package/dist/commands/link.test.d.ts.map +1 -0
  53. package/dist/commands/link.test.js +92 -0
  54. package/dist/commands/link.test.js.map +1 -0
  55. package/dist/commands/mail.d.ts +48 -2
  56. package/dist/commands/mail.d.ts.map +1 -1
  57. package/dist/commands/mail.js +76 -2
  58. package/dist/commands/mail.js.map +1 -1
  59. package/dist/commands/mail.test.js +177 -0
  60. package/dist/commands/mail.test.js.map +1 -1
  61. package/dist/commands/pre-push-gate-matrix.test.js +9 -2
  62. package/dist/commands/pre-push-gate-matrix.test.js.map +1 -1
  63. package/dist/commands/shield.js +1 -1
  64. package/dist/commands/shield.js.map +1 -1
  65. package/dist/commands/spec-cli-wiring.test.d.ts +19 -0
  66. package/dist/commands/spec-cli-wiring.test.d.ts.map +1 -0
  67. package/dist/commands/spec-cli-wiring.test.js +90 -0
  68. package/dist/commands/spec-cli-wiring.test.js.map +1 -0
  69. package/dist/commands/spec-templates.d.ts +18 -0
  70. package/dist/commands/spec-templates.d.ts.map +1 -1
  71. package/dist/commands/spec-templates.js +21 -0
  72. package/dist/commands/spec-templates.js.map +1 -1
  73. package/dist/commands/spec.d.ts +168 -1
  74. package/dist/commands/spec.d.ts.map +1 -1
  75. package/dist/commands/spec.js +448 -7
  76. package/dist/commands/spec.js.map +1 -1
  77. package/dist/commands/spec.test.js +903 -20
  78. package/dist/commands/spec.test.js.map +1 -1
  79. package/dist/commands/tools-hook-parity.test.js +7 -3
  80. package/dist/commands/tools-hook-parity.test.js.map +1 -1
  81. package/dist/index.js +16 -2
  82. package/dist/index.js.map +1 -1
  83. package/dist/services/run-artifacts.d.ts +12 -1
  84. package/dist/services/run-artifacts.d.ts.map +1 -1
  85. package/dist/services/run-artifacts.js +48 -3
  86. package/dist/services/run-artifacts.js.map +1 -1
  87. package/dist/services/run-artifacts.test.js +97 -1
  88. package/dist/services/run-artifacts.test.js.map +1 -1
  89. package/dist/utils.d.ts +22 -3
  90. package/dist/utils.d.ts.map +1 -1
  91. package/dist/utils.js +4 -0
  92. package/dist/utils.js.map +1 -1
  93. package/dist/utils.test.js +65 -1
  94. package/dist/utils.test.js.map +1 -1
  95. package/package.json +2 -2
@@ -46,6 +46,112 @@ export declare function resolveGitRootForHookPath(cwd: string): {
46
46
  export declare function getFallbackCommand(cwd: string): string;
47
47
  /** @deprecated Use {@link getFallbackCommand} instead. Kept for backwards compatibility. */
48
48
  export declare function detectTotemPrefix(cwd: string): string;
49
+ /** The `totemDir` every hook renders when the repo configures none. */
50
+ export declare const DEFAULT_TOTEM_DIR = ".totem";
51
+ /**
52
+ * Everything the four hook templates render FROM.
53
+ *
54
+ * Every field is REQUIRED on purpose. A defaulted parameter is exactly how a
55
+ * writer keeps rendering `.totem` under a repo that configured something else —
56
+ * the mmnto-ai/totem#2692 class, where the strict pre-commit reader and `totem
57
+ * spec`'s writer named different trees and the gate failed closed forever. With
58
+ * no default, the compiler forces every call site to thread the resolved value.
59
+ */
60
+ export interface HookRenderOptions {
61
+ /** Enforcement tier the hook is generated at. */
62
+ tier: 'strict' | 'standard';
63
+ /** Repo-relative Totem directory the hook must name (config `totemDir`). */
64
+ totemDir: string;
65
+ /** Package-manager fallback invocation for the runtime resolve block. */
66
+ fallbackCmd: string;
67
+ }
68
+ /** {@link HookRenderOptions} plus the config file they were derived from. */
69
+ export interface ResolvedHookRenderOptions extends HookRenderOptions {
70
+ /** The config that supplied the values; undefined when none resolved. */
71
+ configPath?: string;
72
+ /** Set when a config RESOLVED but would not load: the values are the defaults
73
+ * and the failure was printed (mmnto-ai/totem#2692 amendment A8). */
74
+ configError?: string;
75
+ }
76
+ /**
77
+ * Whether `value` carries a character that cannot be rendered SAFELY into the
78
+ * managed hooks: a single quote (breaks the `sh` single-quoted word AND the
79
+ * single-quoted `node -e '…'` reader), a double quote or a backslash (breaks the
80
+ * JS string literal inside that reader), a dollar sign or a backtick (the only
81
+ * characters that stay ACTIVE inside the double-quoted `sh` words every guard
82
+ * uses — refusing them is what lets those sites keep the one plain
83
+ * double-quoted form `tools/*` ships; mmnto-ai/totem#2692 amendment A2), or a
84
+ * control character / newline (breaks both, and can forge lines in the hook
85
+ * body).
86
+ *
87
+ * Written as a code-point walk rather than a regex with escape literals so the
88
+ * predicate carries no escape sequence of its own to mis-author.
89
+ */
90
+ export declare function hasUnrenderableTotemDirChar(value: string): boolean;
91
+ /**
92
+ * Why `totemDir` cannot be rendered into the managed hooks, or `null` when it
93
+ * can (mmnto-ai/totem#2692 C4 + amendment A7). Two classes:
94
+ *
95
+ * - CHARACTERS the quoting regimes cannot carry (see
96
+ * {@link hasUnrenderableTotemDirChar}) — the `@mmnto/totem` schema refuses
97
+ * the same set, so a validated config never reaches this arm.
98
+ * - SHAPES the hooks could never govern, which the schema deliberately still
99
+ * accepts because other verbs can use them (`.` is the global profile's own
100
+ * spelling): empty, a trailing slash, `.`, a `.` or empty segment, a `..`
101
+ * segment, a leading `-`. Each of these renders a hook whose post-merge /
102
+ * post-checkout diff filter (`grep -q '<dir>/…'` over the repo-relative
103
+ * paths git prints) can never match, or — for the empty value — an ABSOLUTE
104
+ * run-store path in the strict pre-commit reader. The schema normalises a
105
+ * trailing slash away; a raw value reaching a builder directly is refused,
106
+ * never normalised here (a builder is a pure function of its options).
107
+ */
108
+ export declare function hookTotemDirProblem(totemDir: string): string | null;
109
+ /**
110
+ * Refuse — loudly, naming the value and the reason — a `totemDir` the hook
111
+ * templates cannot render (mmnto-ai/totem#2692 C4/A7). Called by the resolver
112
+ * on the configured value and by every builder as the render-path backstop for
113
+ * direct-API and hand-threaded call sites.
114
+ *
115
+ * Throws rather than degrades: a hook rendered from a value we could not quote
116
+ * is a shell-injection surface, and silently falling back to `.totem` would
117
+ * re-create the very writer/reader split this slice closes (Tenet 4).
118
+ */
119
+ export declare function assertRenderableTotemDir(totemDir: string): void;
120
+ /**
121
+ * THE resolver: config → the options every hook writer renders from
122
+ * (mmnto-ai/totem#2692 C1).
123
+ *
124
+ * `tier` = explicit flag > `hooks.tier` from config > `'standard'` (the
125
+ * precedence `hooksCommand` already implemented, moved here so `totem init`,
126
+ * `installHooksNonInteractive` and the silent pre-push upgrade honor it too) —
127
+ * from whichever config resolves, global profile included, exactly as before.
128
+ *
129
+ * `totemDir` = the REPO-LOCAL config's `totemDir` > `.totem`. Repo-local only,
130
+ * and deliberately asymmetric with `tier`: the value is a path rendered into a
131
+ * hook that runs at the worktree top, so only this project's config can name it.
132
+ * The global `~/.totem/` profile `totem init --global` writes declares
133
+ * `totemDir: '.'` — describing that profile directory itself — and honoring it
134
+ * here would silently re-render every config-less repo's hooks against the
135
+ * checkout root on any machine that has a profile (the mmnto-ai/totem#2692 C3
136
+ * "no consumer's hooks drift on upgrade" invariant, and the same
137
+ * machine-dependence `doctor --parity` guards with `isGlobalConfigPath`).
138
+ *
139
+ * `fallbackCmd` = the lockfile probe anchored at `cwd` — pass the GIT ROOT, the
140
+ * anchor the installer has always used, so a hook installed from a subdirectory
141
+ * still names the repo's package manager.
142
+ *
143
+ * No config at all → the defaults, silently: a config-less repo installing hooks
144
+ * is a supported path, not an error. A config that RESOLVES but will not LOAD
145
+ * (a syntax error, a `totemDir` the schema refines out) → the defaults, LOUDLY:
146
+ * one line names the file and the failure, so a repo whose config says
147
+ * `knowledge/` never gets `.totem/` hooks without a word (mmnto-ai/totem#2692
148
+ * amendment A8 — the silent→loud shape of mmnto-ai/totem#2685). A config that
149
+ * loads but names a `totemDir` the hooks cannot govern (`.`, a `..` segment, a
150
+ * leading `-`) REFUSES — {@link assertRenderableTotemDir}.
151
+ */
152
+ export declare function resolveHookRenderOptions(cwd: string, flags?: {
153
+ tier?: 'strict' | 'standard';
154
+ }): Promise<ResolvedHookRenderOptions>;
49
155
  /**
50
156
  * Build a POSIX shell block that resolves the totem command at runtime.
51
157
  *
@@ -59,16 +165,25 @@ export declare function detectTotemPrefix(cwd: string): string;
59
165
  * `[ -n "$TOTEM_CMD" ]`. Never exits early, to avoid killing chained user hooks.
60
166
  */
61
167
  export declare function buildResolveBlock(fallbackCmd: string): string;
62
- export declare function buildHookContent(fallbackCmd: string): string;
63
- export declare function buildPostCheckoutHookContent(fallbackCmd: string): string;
168
+ export declare function buildHookContent(options: {
169
+ fallbackCmd: string;
170
+ totemDir: string;
171
+ }): string;
172
+ export declare function buildPostCheckoutHookContent(options: {
173
+ fallbackCmd: string;
174
+ totemDir: string;
175
+ }): string;
64
176
  /**
65
- * Generate helper shell scripts under `.totem/hooks/` for hook manager integration.
66
- * These scripts contain the full guard logic (diff checks, null-SHA guards) that
67
- * bare inline commands would skip.
177
+ * Generate helper shell scripts under `<totemDir>/hooks/` for hook manager
178
+ * integration. These scripts contain the full guard logic (diff checks, null-SHA
179
+ * guards) that bare inline commands would skip.
180
+ *
181
+ * Takes the RESOLVED {@link HookRenderOptions} rather than resolving config
182
+ * itself: both callers already hold the one resolution for this invocation, and
183
+ * a required parameter is the same compiler-enforced thread the builders use
184
+ * (mmnto-ai/totem#2692 C1/C2).
68
185
  */
69
- export declare function generateHookHelpers(gitRoot: string, fallbackCmd: string, options?: {
70
- tier?: 'strict' | 'standard';
71
- }): void;
186
+ export declare function generateHookHelpers(gitRoot: string, render: HookRenderOptions): void;
72
187
  export declare function installPostMergeHook(cwd: string, rl: readline.Interface, options?: {
73
188
  tier?: 'strict' | 'standard';
74
189
  /** Threaded from init's single non-interactive predicate (mmnto-ai/totem#2601);
@@ -77,8 +192,35 @@ export declare function installPostMergeHook(cwd: string, rl: readline.Interface
77
192
  * mutations already landed. */
78
193
  interactive?: boolean;
79
194
  }): Promise<void>;
80
- export declare function buildPreCommitHook(tier?: 'strict' | 'standard'): string;
81
- export declare function buildPrePushHook(fallbackCmd: string, tier?: 'strict' | 'standard'): string;
195
+ export declare function buildPreCommitHook(options: {
196
+ tier: 'strict' | 'standard';
197
+ totemDir: string;
198
+ }): string;
199
+ export declare function buildPrePushHook(options: {
200
+ fallbackCmd: string;
201
+ tier: 'strict' | 'standard';
202
+ totemDir: string;
203
+ }): string;
204
+ /**
205
+ * Whether an existing hook is a totem-OWNED whole file (generated verbatim by a
206
+ * `build*Hook` template) rather than a user hook with a totem block appended into
207
+ * it. Ownership is the precondition for a no-force drift-repair overwrite: only a
208
+ * whole file totem itself authored may be replaced without `--force`.
209
+ *
210
+ * A bounded totem region is REQUIRED — all four hook templates now emit both a
211
+ * start marker and an end marker, so `endMarker` is a required parameter:
212
+ * - The totem marker must open the file (only a shebang + comment-start before it),
213
+ * so no user content precedes the block.
214
+ * - The end marker must be present. A LEGACY hook written by an old template that
215
+ * predates the pre-commit / pre-push end markers carries no in-file end marker →
216
+ * NOT owned → drift-repair declines and the hook takes the one
217
+ * `totem hook install --force` the changeset prescribes (after which the
218
+ * regenerated file carries the end marker and self-repair works bounded).
219
+ * - The user must not have added content AFTER the totem end marker — a whole-file
220
+ * overwrite would clobber it, so such a file is NOT owned (only trailing
221
+ * whitespace may follow the end marker).
222
+ */
223
+ export declare function isTotemOwnedWholeFile(content: string, marker: string, endMarker: string): boolean;
82
224
  /**
83
225
  * Install a single git hook with idempotency and chain preservation.
84
226
  * Returns the action taken.
@@ -120,10 +262,14 @@ export interface HooksCommandResult {
120
262
  /**
121
263
  * Non-interactive hook installer for `totem hooks` and `prepare` scripts.
122
264
  * Installs pre-commit, pre-push, and post-merge hooks without prompting.
265
+ *
266
+ * Async since mmnto-ai/totem#2692: the hook text is rendered from the repo's
267
+ * CONFIGURED `totemDir` (and `hooks.tier`), which means one config read —
268
+ * {@link resolveHookRenderOptions} — before anything is written.
123
269
  */
124
270
  export declare function installHooksNonInteractive(cwd: string, force?: boolean, options?: {
125
271
  tier?: 'strict' | 'standard';
126
- }): HooksCommandResult | null;
272
+ }): Promise<HooksCommandResult | null>;
127
273
  /**
128
274
  * Check that all Totem hooks are installed. Returns true if all present.
129
275
  */
@@ -251,6 +397,10 @@ export declare function migrateGeminiHookRegistration(cwd: string): {
251
397
  * stateless format that runs verify-manifest + lint directly.
252
398
  *
253
399
  * Returns true if the hook was upgraded, false otherwise.
400
+ *
401
+ * Async since mmnto-ai/totem#2692: the spliced block is rendered from the repo's
402
+ * configured `totemDir` and `hooks.tier` like every other writer, so it no
403
+ * longer silently downgrades a strict hook to standard on the upgrade path.
254
404
  */
255
- export declare function upgradePrePushHookIfNeeded(cwd: string): boolean;
405
+ export declare function upgradePrePushHookIfNeeded(cwd: string): Promise<boolean>;
256
406
  //# sourceMappingURL=install-hooks.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"install-hooks.d.ts","sourceRoot":"","sources":["../../src/commands/install-hooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install-hooks.d.ts","sourceRoot":"","sources":["../../src/commands/install-hooks.ts"],"names":[],"mappings":"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"}