vasilito
2153bf5f6e
build-system: add function-level fork verification + fix critical bugs
...
CRITICAL: Add verify-fork-functions.sh — detects silent upstream code loss
from bad merges that file-level verification cannot catch. This is the
verification that would have caught the kfdwrite drop bug.
Wire it into build-preflight.sh (pre-build gate) and upgrade-forks.sh
(post-upgrade gate with automatic rollback on failure).
Fix upgrade-forks.sh:
- Fetch failures now abort instead of being silently swallowed
- Backup branch names include fork name + PID to prevent collisions
- Post-upgrade verification runs verify-fork-functions.sh and rolls
back if upstream functions are missing
Fix bump-fork.sh:
- Replace wrong 'git tag -e' with 'git rev-parse --verify refs/tags/'
- Clone failures now error explicitly instead of silent fallback
- Version sed uses proper regex escaping for + characters
- Atomic swap has rollback recovery if mv fails
- Instructions now mention fork-upstream-map.toml update
Fix sync-upstream.sh:
- Define PROJECT_ROOT before use (was crashing under set -u)
Fix build-preflight.sh:
- Add REDBEAR_SKIP_FUNCTION_CHECK gate for verify-fork-functions.sh
Kernel submodule pointer updated to 0.3.1 branch with kfdwrite restored.
2026-07-11 23:18:41 +03:00
..
2026-06-19 11:47:25 +03:00
2026-07-01 00:32:52 +03:00
2026-06-19 11:47:25 +03:00
2026-07-11 17:02:30 +03: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-04-28 06:18:37 +01:00
2026-07-11 23:18:41 +03:00
2026-04-16 12:45:24 +01:00
2026-07-10 22:10:33 +03:00
2026-05-02 22:09:36 +01:00
2026-07-11 23:18:41 +03:00
2026-04-28 15:10:59 +01:00
2026-07-01 15:01:26 +03:00
2026-07-11 11:20:29 +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-06-28 00:01:47 +03:00
2026-07-05 22:50:33 +03:00
2026-06-19 11:47:25 +03: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-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-04-30 18:47:03 +01:00
2026-04-18 01:09:29 +01:00
2026-06-19 11:47:25 +03: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-04-16 12:45:24 +01: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-01 22:02:26 +03:00
2026-07-05 02:37:54 +03: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-07-11 23:18:41 +03:00
2026-07-05 22:50:33 +03: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-04-16 12:45:24 +01:00
2026-04-16 12:45:24 +01:00
2026-04-29 12:08:09 +01:00
2026-04-19 17:59:58 +01:00
2026-04-18 17:59:15 +01:00
2026-05-01 03:15:20 +01:00
2026-05-08 11:01:02 +01:00
2026-06-19 11:47:25 +03:00
2026-06-19 11:47:25 +03: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-04-26 22:51:09 +01:00
2026-04-22 21:31:19 +01:00
2026-04-20 18:37:35 +01:00
2026-06-19 11:47:25 +03:00
2026-05-04 11:57:48 +01:00
2026-04-20 18:37:35 +01:00
2026-04-29 09:54:06 +01:00
2026-04-29 09:54:06 +01:00
2026-06-19 11:47:25 +03:00
2026-04-29 09:54:06 +01:00
2026-04-29 09:54:06 +01:00
2026-07-09 14:43:10 +03:00
2026-04-18 17:59:15 +01:00
2026-04-29 11:05:22 +01:00
2026-04-29 09:54:06 +01:00
2026-04-18 00:48:58 +01:00
2026-04-20 18:37:35 +01:00
2026-04-29 12:21:17 +01: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-05-04 11:57:48 +01: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-29 12:11:13 +01:00
2026-07-07 04:48:31 +03: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-04-16 12:45:24 +01:00
2026-04-29 12:08:09 +01:00
2026-06-19 11:47:25 +03:00
2026-07-07 00:44:30 +03:00
2026-07-11 23:18:41 +03:00
2026-05-03 23:03:24 +01:00
2026-04-23 20:27:13 +01:00
2026-07-09 19:08:34 +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-07-10 22:10:33 +03:00
2026-07-11 23:18:41 +03:00
2026-07-11 02:26:10 +03:00
2026-06-19 11:47:25 +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