sim
2641e6cb67
feat( #2873 ): detect cross-scope shadowing and reach the local spec tree
...
4a - the detection floor. A shadowed install now reports which triggers are
shadowed and which scope wins, at install time and through a new W028
/gsd-health diagnostic. Exit codes are untouched: a shadowed install is a
warning, not a failure. Only triggers whose stem exists at BOTH scopes are
reported, so a global full profile beside a local core profile no longer
names local artifacts the user does not have.
4b - spec-root reachability, claude runtime and global scope only. The
winning global skill stops carrying a static workflow @-include and instead
resolves its spec at runtime: prefer the project-local copy, fall back to
the global one, stop if neither exists. Every other @-include stays static,
and the local emission is byte-identical. It runs after the staged-skills
rewrite pass, whose claude branch would otherwise mangle the literal tilde
path into an undocumented $HOME form.
Also fixed inline: readInstallManifest classified a top-level JSON array as
an installed v1 manifest, because typeof [] is object.
Refs #2873
2026-08-14 23:48:39 -04:00
..
2026-08-14 23:48:39 -04:00
2026-07-09 19:38:27 -04:00
2026-08-07 13:41:21 -04:00
2026-07-28 18:02:17 -04:00
2026-08-14 14:34:36 -04:00
2026-08-02 21:44:04 -04:00
2026-06-28 02:12:06 -04:00
2026-07-17 06:50:06 -04:00
2026-06-21 22:55:22 -04:00
2026-07-20 14:59:30 -04:00
2026-08-13 23:10:52 -04:00
2026-08-13 16:19:57 -04:00
2026-08-14 03:04:09 -04:00
2026-08-13 16:19:57 -04:00
2026-06-23 23:21:06 -04:00
2026-08-13 20:27:48 -04:00
2026-08-13 20:27:48 -04:00
2026-06-16 02:38:47 -04:00
2026-07-30 12:48:06 -04:00
2026-06-20 01:59:03 -04:00
2026-08-14 21:34:29 -04:00
2026-07-29 10:55:45 -04:00
2026-06-25 23:55:58 -04:00
2026-08-14 21:34:29 -04:00
2026-07-07 00:19:08 -04:00
2026-08-14 21:34:29 -04:00
2026-08-11 23:35:44 -04:00
2026-08-14 21:34:29 -04:00
2026-07-28 18:02:17 -04:00
2026-07-27 16:24:21 -04:00
2026-08-14 09:28:22 -04:00
2026-06-10 10:40:12 -04:00
2026-06-26 12:19:39 -04:00
2026-07-12 15:34:59 -04:00
2026-07-05 19:16:06 +00:00
2026-06-02 11:45:01 -04:00
2026-08-10 01:31:15 -04:00
2026-08-14 01:44:54 -04:00
2026-06-02 11:45:01 -04:00
2026-06-13 10:27:12 -04:00
2026-06-23 22:47:57 -04:00
2026-08-14 19:18:29 -04:00
2026-08-01 21:00:23 -04:00
2026-08-09 19:52:47 -04:00
2026-08-05 21:26:38 -04:00
2026-06-23 16:10:34 -04:00
2026-06-15 18:50:46 -04:00
2026-08-13 23:10:52 -04:00
2026-06-08 22:51:43 -04:00
2026-07-31 23:03:13 -04:00
2026-07-31 15:44:19 -04:00
2026-06-02 11:45:01 -04:00
2026-08-13 20:27:48 -04:00
2026-06-22 23:43:22 -04:00
2026-08-13 23:08:34 -04:00
2026-08-03 19:59:58 -04:00
2026-07-13 15:36:17 -04:00
2026-06-14 21:44:21 -04:00
2026-06-28 02:12:06 -04:00
2026-07-26 21:42:50 -04:00
2026-06-24 17:16:13 -04:00
2026-06-24 17:16:13 -04:00
2026-07-17 06:50:06 -04:00
2026-08-05 16:00:52 -04:00
2026-06-11 11:36:50 -04:00
2026-06-08 23:37:41 -04:00
2026-08-14 23:00:10 -04:00
2026-08-14 01:10:48 -04:00
2026-08-03 12:16:56 -04:00
2026-08-09 19:52:47 -04:00
2026-06-23 23:21:06 -04:00
2026-08-06 02:56:07 -04:00
2026-08-08 16:05:17 -04:00
2026-07-02 18:08:42 -04:00
2026-08-13 03:13:25 -04:00
2026-08-14 23:48:39 -04:00
2026-06-28 11:44:36 -04:00
2026-07-02 21:45:35 -04:00
2026-08-04 20:33:50 -04:00
2026-08-10 09:48:26 -04:00
2026-08-07 09:30:27 -04:00
2026-08-14 23:00:43 -04:00
2026-07-07 22:21:45 -04:00
2026-08-09 22:25:42 -04:00
2026-08-04 18:10:31 -04:00
2026-08-10 15:50:55 -04:00
2026-08-14 23:48:39 -04:00
2026-08-14 23:48:39 -04:00
2026-08-07 13:41:21 -04:00
2026-08-07 13:41:21 -04:00
2026-08-14 23:48:39 -04:00
2026-06-23 23:21:06 -04:00
2026-06-16 00:12:54 -04:00
2026-08-05 16:00:52 -04:00
2026-06-15 16:18:54 -04:00
2026-07-07 19:38:01 -04:00
2026-08-13 16:19:57 -04:00
2026-08-11 23:52:46 -04:00
2026-08-05 13:30:55 -04:00
2026-08-05 13:30:55 -04:00
2026-08-14 03:04:09 -04:00
2026-08-14 23:43:56 -04:00
2026-06-28 11:27:44 -04:00
2026-08-09 19:16:04 -04:00
2026-06-02 11:45:01 -04:00
2026-08-09 23:05:41 -04:00
2026-08-13 21:22:03 -04:00
2026-07-19 15:43:48 -04:00
2026-06-02 11:45:01 -04:00
2026-06-05 17:58:48 -04:00
2026-08-14 14:34:36 -04:00
2026-07-28 18:02:17 -04:00
2026-08-13 20:27:48 -04:00
2026-08-13 16:19:57 -04:00
2026-08-08 16:05:17 -04:00
2026-08-12 20:45:04 -04:00
2026-08-14 23:43:56 -04:00
2026-07-02 11:14:01 -04:00
2026-08-14 10:24:05 -04:00
2026-08-09 14:23:35 -04:00
2026-08-14 10:24:05 -04:00
2026-08-08 01:20:55 -04:00
2026-08-14 02:46:16 -04:00
2026-08-14 11:04:55 -04:00
2026-08-13 21:22:03 -04:00
2026-08-13 20:27:48 -04:00
2026-06-08 14:04:26 -04:00
2026-07-03 23:21:55 -04:00
2026-07-31 02:30:50 -04:00
2026-08-04 22:41:01 -04:00
2026-08-09 19:52:47 -04:00
2026-06-06 11:24:48 -04:00
2026-06-05 17:58:48 -04:00
2026-06-18 07:44:52 -04:00
2026-08-03 12:05:45 -04:00
2026-08-11 17:42:41 -04:00
2026-08-14 00:29:42 -04:00
2026-08-14 00:29:42 -04:00
2026-08-09 19:18:56 -04:00
2026-08-14 01:44:54 -04:00
2026-08-14 01:44:54 -04:00
2026-08-13 20:27:48 -04:00
2026-08-14 10:02:28 -04:00
2026-08-14 23:48:39 -04:00
2026-08-09 20:16:23 -04:00
2026-08-14 23:48:39 -04:00
2026-08-11 23:35:44 -04:00
2026-08-08 05:50:49 -05:00
2026-08-14 10:55:12 -04:00
2026-07-22 00:27:35 -04:00
2026-08-10 09:48:26 -04:00
2026-07-13 15:36:17 -04:00
2026-06-02 11:45:01 -04:00
2026-08-03 19:59:58 -04:00
2026-08-14 17:29:58 -04:00
2026-06-18 14:41:20 -04:00
2026-08-13 16:19:57 -04:00
2026-08-12 20:46:12 -04:00
2026-07-06 14:40:38 -04:00
2026-08-14 12:26:47 -04:00
2026-08-14 12:38:23 -04:00
2026-06-28 11:44:36 -04:00
2026-08-14 21:06:01 -04:00
2026-08-14 23:43:56 -04:00
2026-08-09 22:25:42 -04:00
2026-06-15 16:18:54 -04:00
2026-06-17 08:52:23 -04:00
2026-07-12 15:34:59 -04:00
2026-08-13 20:27:48 -04:00
2026-08-13 23:08:34 -04:00
2026-08-05 16:00:52 -04:00
2026-08-14 12:31:03 -04:00
2026-07-28 18:31:47 -04:00
2026-08-14 09:27:48 -04:00
2026-08-14 09:27:48 -04:00
2026-08-13 01:10:53 -04:00
2026-08-10 09:48:26 -04:00
2026-06-02 11:45:01 -04:00
2026-08-12 20:45:04 -04:00
2026-08-14 19:18:29 -04:00
2026-08-14 23:00:43 -04:00
2026-06-02 11:45:01 -04:00
2026-08-14 17:29:58 -04:00
2026-08-03 19:59:58 -04:00
2026-08-10 11:59:51 -04:00
2026-08-10 10:18:29 -04:00
2026-06-02 11:45:01 -04:00
2026-08-08 19:06:13 -04:00
2026-08-05 16:00:52 -04:00
2026-08-09 16:12:57 -04:00
2026-07-13 20:39:58 -04:00