Files
mopac-pmo/archive/REPORT-knel-aimiddleware-consolidation.md
T

68 lines
3.2 KiB
Markdown

# REPORT: KNEL-AIMiddleware consolidated into _crossfeed/tooling
Date: 2026-08-28
Operator: reachableceo agent
Status: COMPLETE — all deliverables verified
## Method
1. Verified source and target are on the same filesystem (both device 2049, /dev/sda1).
2. Verified the stale target had no unique work before deletion: no extra branches
(main only), no stashes, no commits not on origin/main. Its only uncommitted
change was a deleted `.env` (see Skipped).
3. `rm -rf` stale copy at /home/_crossfeed/tooling/knel-aimiddleware (2.4M).
4. Atomic same-filesystem `mv` of /home/reachableceo/projects/KNEL-AIMiddleware
(512M, incl. vendor/ and .git) into the target path. No data copied; inode
rename only, so no disk-space impact (45G free confirmed before move).
5. Created symlink /home/reachableceo/projects/KNEL-AIMiddleware ->
/home/_crossfeed/tooling/knel-aimiddleware so existing path references keep working.
## File counts (before / after)
| Item | Files | Dirs | Size |
|-------------------------------|--------|-------|------|
| Source before move | 21,590 | 4,240 | 512M |
| Stale target before removal | 283 | 171 | 2.4M |
| Target after move | 21,590 | 4,240 | 512M |
Counts match exactly; nothing lost in transit.
## Git (verified at final path, via both real and symlink paths)
- `git status --porcelain`: clean (empty). Branch main, up to date with origin/main.
- HEAD unchanged: 2440188 2026-08-10 "feat(tooling): containerize dns-cli in tooling-cli/dns"
- Remote intact: origin ssh://git@git.knownelement.com:29418/KNEL/KNEL-AIMiddleware.git (fetch + push)
- History preserved (full .git moved with the tree).
## Symlink
/home/reachableceo/projects/KNEL-AIMiddleware -> /home/_crossfeed/tooling/knel-aimiddleware
Resolves: yes (spot-checked file read through old path).
## Permissions applied
- Top level: reachableceo:users, mode 775.
- Recursive on all reachableceo-owned entries: chgrp users; dirs g+rx; files g+r
(incl. .git, so group members can run read-only git commands).
- Audit: 21,126 entries now group `users`; 0 owned entries missing required group bits.
## Skipped / exceptions
1. 4,753 entries under vendor/discourse-mcp/.pnpm-store are root:root (created by
root during containerized builds). chgrp/chmod impossible without sudo. All are
mode 755 (dirs) / 644 (files), i.e. world-readable, so group `users` read access
is unaffected. Cosmetic only.
2. Stale copy's one uncommitted change (deletion of .env) was discarded with it.
The surviving copy contains .env intact, so nothing of value was lost.
3. Two dangling symlinks in vendor test fixtures (bash-language-server,
terraform-ls testdata) could not be chgrp'd via dereference; `chgrp -h` applied
to the link inodes instead. They were dangling in the source already.
4. Minor: .git/index gets rewritten by git commands and may drift back to group
`reachableceo` over time; harmless for read access (mode stays group/world
readable). Re-run `chgrp -R users` if strict group ownership is ever required.
## Result
/home/_crossfeed/tooling/knel-aimiddleware is now the single current shared copy
(full working tree + vendor/ + .git + remote). Old path is a working symlink.