šŸ“ Sysplex_Checkpoint_20261010_1332.mdv4.5.1 · 2026-10-02

Sysplex Checkpoint — 2026-10-10 13:32 AEDT (Clone orchestrating)

Supersedes Sysplex_Checkpoint_20261010_0548.md. Paste/upload at the start of the next conversation.

Andrew = retired sysadmin, owner of drugs-and-users.org (SMF). Reply header Claude: [DD/MM/YYYY--HH:MM:SS:mmm TZ] from code execution every reply. Markdown only. Few questions, more statements; keep simple things simple. Delivery rules: bump @version/@date, version-history entry, print version at start, dotted versioned zip (never reused), xmllint on XML, list unrequested changes BEFORE making them, release card; SMF package zips use his legacy zipper (Claude has none). Never rename his scripts. His grep is aliased --color=always: use grep --color=never when piping.

1. The three boxes

Box Short host / address Role Notes
Live forum / forum.drugs-and-users.org, 128.199.200.202 production, 64-bit CentOS 6.10 tz +08; NO mirror scripts run here (its copies are inert); use $RUN for glibc Python
Clone clone / 192.168.233.140 64-bit CentOS 6.10 rebuild, orchestrator Clone's /bin is the master of all three /bin dirs; glibc 2.17 at /opt/glibc-2.17
Dev dev / 192.168.233.129 32-bit CentOS 6, kept as long as possible no torch/transformers/llama.cpp possible; tz +11

Each box: 3 webroots, only /var/www/html (db smf209) used; smf20 (2.0.19) and smf21 (2.1.7) are unused placeholders.

2. Done (carried over)

3. Done this session

4. Open items

  1. Credentials: copy Live's dbbacksmf, dbbacksm2, SQLhousekeeping into Clone's /bin (scp -p -q root@forum.drugs-and-users.org:/bin/$f /bin/$f); then grep --color=never -ln -E -e '-u ?root -p' /bin/* to find other scripts with the password on the command line; decide on rotation; fix the dbbacksm2 banner (1.0.4).
  2. Old json_push_media_Clone_to_Live is still in Clone's /bin (pre-rename v1.0.2, no guard) beside json_push_visual_Clone_to_Live. Remove after grep -rn 'json_push_media' /bin /root /etc shows no callers. Live also holds inert Oct 4 copies of json_push_audio, json_push_media, mirrorISE_Clone, mirrorISE_Dev (pre-fix).
  3. Version bumps owed: json_push_visual_Clone_to_Live still says 1.0.3 but now has the guard (needs 1.0.4 + history line); json_push_audio_Clone_to_Live has no @edits entry for the guard.
  4. Diff scripts (json_diff_md5sums_All_Clone / _Dev), optional changes not yet chosen: ssh -q (drops the login banner, printed 3x per box); | tee /tmp/clo instead of running md5sum twice per box; ls -l --time-style=+%s (the ls -al diff is all noise because Live is +08 and the others +11); a hostname guard in each; the Dev copy never diffs the *dir listings; the *.json glob misses audio_manifest.tsv, audioprocessor.log, audio_store.json.pre2419, frame_cache/, caption_tmp/. Overlaps the existing json_md5_diff_Live / compareISE_Data.
  5. Live-only scripts (23) not in the master (lurkers, find_guest_members.sh, json_md5sums_all, gzip_Live*, prep.sh, tarball.sh, …): pull to Clone or declare Live-only.
  6. Dev-only rsync_cpp_to_live / rsync_perl_to_live push to Live and may still carry --delete; move to Clone's /bin before Dev is retired. Old mirror1.sh, mirror1.sh-old, MIRRORo.sh still on Dev (dead). json_md5sum_media_Clone_to_Live still says "media".
  7. Dev-newer files worth a diff: al, cl, clog, dbbackall, dbbacksmf21, filecmd2, rsync-{bin,html,root}-latest, repair-*; cron2_dis_ena.sh Dev is 1 minute newer than Clone.
  8. AudioProcessor rewrites the store on a no-op run (updates only updated), which makes md5 comparisons show false drift. Processor change, Andrew's decision.
  9. Decide: replace the two named excludes (AudioProcessor.py, AudioProcessor_manual.md) in mirrorISE_Clone's first rsync with --exclude 'AudioProcessor*' (Claude recommends it: protects versioned copies and .pyc from --delete).
  10. processor_checkpoint.json absent on Clone: expected unless the media processor source says it should write one.
  11. <description> in Collaborative package-info.xml stale; re-zip the full package with his legacy zipper; test 6.0 hooks on Clone's smf21.
  12. Dry-run mirror1_Clone with -n once to check the excludes (never dry-run tested).
  13. set -e in MIRROR_*: any non-zero step (rsync 23, dblivesmf-copies.sh) stops the run; consider || echo "step rc=$?" on steps that may legitimately return non-zero.
  14. Minor: mirror1_Dev echo says "ONLY Clones /bin"; mirrorISE_Clone line 3 cut-off comment; stale --delete comment in json_push_audio_Clone_to_Live; junk lines at the end of mirrorISE_Dev_to_Live.
  15. Dev: innodb_log_file_size; optional ImageMagick/evasive/reqtimeout; idle cups/samba/nfs/rpcbind.

5. Andrew's stated next steps (his words)

PDF transcript (his job) and this checkpoint (Claude's job), then zip Collabware/bin and attach it to the post, "maybe later" for the Live-newer file pulls, then "mirror and lay down again".

6. Technical notes