vasilito
156aa386b3
verify-tracked-sources: derive first-party status, don't list it
...
The name list was wrong in principle. It started as redbear-*, then needed cub,
then tlc -- and protection that depends on someone remembering to edit this file
is not protection. A new internal program starts out unguarded and the omission
stays invisible until the code is already gone. tlc proved it: first-party,
exempt from out-of-tree staging, protected by nothing but this gate, and
matching no pattern.
The real property is structural -- our code has no upstream to restore from. A
recipe is first-party when its recipe.toml records no fetchable origin: no
`tar =`, no `git =`, no upstream URL. That identifies ~96 recipes against the 3
the list covered, so the list was guarding roughly 3% of the exposure.
The heuristic errs toward first-party deliberately. A vendored recipe recording
its origin only in prose gets treated as ours, which just makes drift fatal
instead of a warning. The opposite error loses irreplaceable work, so the
default fails in the safe direction.
Verified: fires on redbear-netctl, cub and tlc (none of which are named
anywhere in the code now); does NOT fire on vendored kirigami; silent on a
clean tree; every probe restores.
2026-08-04 19:36:00 +03:00
..
2026-06-19 11:47:25 +03:00
2026-08-04 17:54:01 +03:00
2026-06-19 11:47:25 +03:00
2026-07-28 12:03:41 +09:00
2026-07-05 22:50:33 +03:00
2026-05-02 01:41:17 +01:00
2026-06-19 11:47:25 +03:00
2026-06-19 11:47:25 +03:00
2026-07-15 00:40:23 +09:00
2026-08-03 12:40:15 +03:00
2026-08-04 16:41:39 +03:00
2026-04-16 12:45:24 +01:00
2026-08-04 19:05:25 +03:00
2026-05-02 22:09:36 +01:00
2026-07-27 12:30:55 +09:00
2026-07-18 14:45:41 +09:00
2026-07-31 20:20:53 +03:00
2026-08-03 11:13:40 +03:00
2026-04-28 15:10:59 +01:00
2026-07-01 15:01:26 +03:00
2026-07-18 14:45:41 +09:00
2026-07-12 17:44:21 +03:00
2026-07-13 17:38:38 +03:00
2026-07-13 19:25:14 +03:00
2026-08-04 16:41:39 +03:00
2026-05-04 19:21:02 +01:00
2026-06-28 00:01:47 +03:00
2026-06-19 11:47:25 +03:00
2026-05-02 22:09:36 +01:00
2026-06-21 15:15:57 +03:00
2026-06-19 11:47:25 +03:00
2026-06-19 11:47:25 +03:00
2026-07-12 12:20:29 +03:00
2026-06-28 00:01:47 +03:00
2026-07-05 22:50:33 +03:00
2026-06-19 11:47:25 +03:00
2026-07-21 12:16:00 +09:00
2026-07-21 00:30:55 +09:00
2026-06-19 11:47:25 +03:00
2026-05-03 23:03:24 +01:00
2026-04-16 12:45:24 +01:00
2026-04-18 17:59:15 +01:00
2026-04-18 01:09:13 +01:00
2026-06-19 11:47:25 +03:00
2026-04-18 17:59:15 +01:00
2026-04-16 12:45:24 +01:00
2026-08-04 16:41:39 +03:00
2026-05-03 23:03:24 +01:00
2026-06-19 11:47:25 +03:00
2026-04-18 00:57:57 +01:00
2026-04-17 23:46:20 +01:00
2026-07-27 20:43:32 +09:00
2026-08-03 12:40:15 +03:00
2026-07-26 16:59:32 +09:00
2026-04-18 01:09:29 +01:00
2026-07-15 00:40:23 +09:00
2026-06-29 19:34:35 +03:00
2026-06-19 11:47:25 +03:00
2026-06-19 11:47:25 +03:00
2026-06-19 11:47:25 +03:00
2026-04-16 12:45:24 +01:00
2026-07-12 11:52:28 +03:00
2026-07-26 16:59:32 +09:00
2026-07-26 16:59:32 +09:00
2026-04-16 12:45:24 +01:00
2026-05-02 01:41:17 +01:00
2026-07-12 02:38:12 +03:00
2026-07-20 09:01:14 +09:00
2026-06-19 11:47:25 +03:00
2026-06-19 11:47:25 +03:00
2026-07-01 22:02:26 +03:00
2026-07-18 14:45:41 +09:00
2026-06-28 00:01:47 +03:00
2026-06-19 11:47:25 +03:00
2026-04-28 08:07:14 +01:00
2026-05-03 23:03:24 +01:00
2026-04-16 12:45:24 +01:00
2026-06-19 11:47:25 +03:00
2026-04-28 08:07:14 +01:00
2026-04-16 12:45:24 +01:00
2026-04-28 12:54:31 +01:00
2026-08-01 08:07:00 +03:00
2026-07-11 23:18:41 +03:00
2026-07-27 12:30:55 +09:00
2026-04-18 17:59:15 +01:00
2026-04-18 17:59:15 +01:00
2026-04-26 22:51:09 +01:00
2026-07-20 09:01:14 +09:00
2026-04-16 12:45:24 +01:00
2026-07-13 17:38:38 +03:00
2026-07-20 09:01:14 +09:00
2026-07-20 09:01:14 +09:00
2026-07-22 19:28:47 +09:00
2026-07-22 19:28:47 +09:00
2026-07-22 19:28:47 +09:00
2026-07-22 19:28:47 +09:00
2026-07-21 00:30:55 +09:00
2026-07-22 19:28:47 +09:00
2026-07-21 00:30:55 +09:00
2026-04-18 17:59:15 +01:00
2026-07-20 10:04:56 +09:00
2026-05-01 03:15:20 +01:00
2026-07-26 19:25:20 +09:00
2026-07-20 09:01:14 +09:00
2026-06-19 11:47:25 +03:00
2026-07-20 07:08:28 +09:00
2026-04-29 13:45:39 +01:00
2026-04-16 12:45:24 +01:00
2026-05-01 01:37:27 +01:00
2026-07-20 09:01:14 +09:00
2026-04-22 21:31:19 +01:00
2026-04-20 18:37:35 +01:00
2026-07-20 00:14:30 +09:00
2026-05-04 11:57:48 +01:00
2026-07-20 10:04:56 +09:00
2026-08-01 05:13:02 +03:00
2026-07-20 09:01:14 +09:00
2026-07-20 09:01:14 +09:00
2026-07-20 09:01:14 +09:00
2026-07-20 09:01:14 +09:00
2026-07-20 09:01:14 +09:00
2026-07-20 09:01:14 +09:00
2026-07-20 09:01:14 +09:00
2026-04-18 17:59:15 +01:00
2026-07-20 09:01:14 +09:00
2026-07-20 09:01:14 +09:00
2026-07-20 09:01:14 +09:00
2026-07-20 09:01:14 +09:00
2026-07-20 09:01:14 +09:00
2026-07-20 07:08:28 +09:00
2026-06-19 11:47:25 +03:00
2026-08-04 10:06:39 +03:00
2026-06-19 11:47:25 +03:00
2026-05-04 11:57:48 +01:00
2026-07-20 07:08:28 +09:00
2026-07-20 11:23:33 +09:00
2026-07-20 10:04:56 +09:00
2026-07-19 19:55:27 +09:00
2026-06-19 11:47:25 +03:00
2026-07-20 09:01:14 +09:00
2026-07-20 09:01:14 +09:00
2026-07-20 07:08:28 +09:00
2026-08-01 03:56:10 +03:00
2026-08-01 00:50:26 +03:00
2026-07-26 20:56:17 +09:00
2026-06-19 11:47:25 +03:00
2026-04-14 12:14:50 +01:00
2026-04-16 12:45:24 +01:00
2026-04-16 12:45:24 +01:00
2026-07-20 09:01:14 +09:00
2026-07-20 09:01:14 +09:00
2026-06-19 11:47:25 +03:00
2026-07-20 00:14:30 +09:00
2026-07-27 22:37:07 +09:00
2026-07-12 10:13:12 +03:00
2026-07-19 05:38:30 +09:00
2026-05-03 23:03:24 +01:00
2026-04-23 20:27:13 +01:00
2026-08-04 10:06:39 +03:00
2026-05-02 01:41:17 +01:00
2026-06-19 11:47:25 +03:00
2026-04-16 12:45:24 +01:00
2026-08-01 05:18:05 +03:00
2026-07-12 00:19:30 +03:00
2026-07-12 12:11:23 +03:00
2026-07-10 22:10:33 +03:00
2026-08-01 08:07:00 +03:00
2026-08-03 13:26:14 +03:00
2026-08-03 18:08:24 +03:00
2026-07-28 06:13:09 +09:00
2026-07-27 06:17:58 +09:00
2026-07-12 01:31:03 +03:00
2026-08-04 18:26:44 +03:00
2026-05-02 01:41:17 +01:00
2026-05-02 01:41:17 +01:00
2026-05-03 23:03:24 +01:00
2026-08-04 19:36:00 +03:00
2026-08-03 09:09:56 +03:00