From bc33484b8b16a711ec6d95af93750d4a443f4e3d Mon Sep 17 00:00:00 2001 From: man4ish Date: Sat, 10 Oct 2026 22:54:15 -0500 Subject: [PATCH] udpate scripts --- PORTABILITY_PATH_INVENTORY.md | 7 +++++++ ecosystem_path.sh | 12 ++++++++++++ omnibioai-up.sh | 9 +++++---- prepare_hipaa_audit.sh | 3 ++- pubmed/create_new_chunks.py | 4 ++-- pubmed/reindex_one_shard.py | 3 ++- pubmed/reindex_one_shard_ollama.py | 3 ++- pubmed/run_chunks.sh | 3 ++- pubmed/split_general_corpus.sh | 3 ++- run_coverage.sh | 7 ++++--- start-all-uis.sh | 3 ++- start_all.sh | 3 ++- start_stack_tmux.sh | 3 ++- sweep_all_repos.sh | 5 +++-- sync_all_repos.sh | 3 ++- test_split_on_sample.sh | 3 ++- tests/test_ecosystem_path.sh | 8 ++++++++ 17 files changed, 61 insertions(+), 21 deletions(-) create mode 100644 PORTABILITY_PATH_INVENTORY.md create mode 100644 ecosystem_path.sh create mode 100755 tests/test_ecosystem_path.sh diff --git a/PORTABILITY_PATH_INVENTORY.md b/PORTABILITY_PATH_INVENTORY.md new file mode 100644 index 0000000..81e6045 --- /dev/null +++ b/PORTABILITY_PATH_INVENTORY.md @@ -0,0 +1,7 @@ +# Path portability inventory + +Active utility defaults now resolve through `ecosystem_path.sh`: `OMNIBIOAI_ROOT` takes precedence, otherwise the parent of this repository is used. Positional root arguments remain supported where they existed. + +The obsolete `Desktop/machine` references found in active utilities were replaced in the build, backup, coverage, startup, sync, sweep, audit, and data helper scripts. Historical cron examples, generated `build-results.txt`, migration notes, test fixtures, and PubMed archival documentation retain their original paths as records of past runs. Ordinary identifiers and unrelated prose were left unchanged. + +Validation covers default resolution, an override containing spaces, Bash syntax, Python compilation, and `git diff --check`. No backup, restore, sync, build, deployment, or stack-start command was executed. diff --git a/ecosystem_path.sh b/ecosystem_path.sh new file mode 100644 index 0000000..a6ab10e --- /dev/null +++ b/ecosystem_path.sh @@ -0,0 +1,12 @@ +#!/usr/bin/env bash +# Shared portable ecosystem path resolution for utility scripts. +# OMNIBIOAI_ROOT wins; otherwise derive the ecosystem root from this checkout. +if [[ -z "${OMNIBIOAI_UTILS_DIR:-}" ]]; then + OMNIBIOAI_UTILS_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +fi +omni_resolve_root() { + if [[ -n "${OMNIBIOAI_ROOT:-}" ]]; then printf '%s\n' "$OMNIBIOAI_ROOT"; return; fi + printf '%s\n' "$(cd "$OMNIBIOAI_UTILS_DIR/.." && pwd)" +} +OMNIBIOAI_ROOT="$(omni_resolve_root)" +export OMNIBIOAI_ROOT diff --git a/omnibioai-up.sh b/omnibioai-up.sh index 1a77f56..461247f 100755 --- a/omnibioai-up.sh +++ b/omnibioai-up.sh @@ -1,13 +1,14 @@ #!/usr/bin/env bash +source "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/ecosystem_path.sh" set -euo pipefail SESSION="omnibioai" # Base paths (repos) -OMNI_CORE=~/Desktop/machine/omnibioai -OMNI_TES=~/Desktop/machine/omnibioai-tes -OMNI_TOOL=~/Desktop/machine/omnibioai-toolserver -OMNI_LIMS=~/Desktop/machine/omnibioai-lims +OMNI_CORE="$OMNIBIOAI_ROOT"/omnibioai +OMNI_TES="$OMNIBIOAI_ROOT"/omnibioai-tes +OMNI_TOOL="$OMNIBIOAI_ROOT"/omnibioai-toolserver +OMNI_LIMS="$OMNIBIOAI_ROOT"/omnibioai-lims # Optional: load your env (uncomment + set the right file if you use one) # [ -f ~/.bashrc ] && source ~/.bashrc diff --git a/prepare_hipaa_audit.sh b/prepare_hipaa_audit.sh index 1b8c3c7..c3927fb 100755 --- a/prepare_hipaa_audit.sh +++ b/prepare_hipaa_audit.sh @@ -1,7 +1,8 @@ #!/usr/bin/env bash +source "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/ecosystem_path.sh" set -uo pipefail -ROOT="${1:-$HOME/Desktop/machine}" +ROOT="${1:-$OMNIBIOAI_ROOT}" echo echo "==============================================================" diff --git a/pubmed/create_new_chunks.py b/pubmed/create_new_chunks.py index 0c56346..10a9503 100644 --- a/pubmed/create_new_chunks.py +++ b/pubmed/create_new_chunks.py @@ -8,8 +8,8 @@ from pathlib import Path from datetime import datetime -DATA_DIR = Path("/home/manish/Desktop/machine/data/PubMed/Abstracts") -STATE_FILE = Path("/home/manish/Desktop/machine/data/PubMed/sync_state.json") +DATA_DIR = Path(os.path.join(os.environ.get("OMNIBIOAI_ROOT", str(Path(__file__).resolve().parents[2])), "data", "PubMed", "Abstracts")) +STATE_FILE = Path(os.path.join(os.environ.get("OMNIBIOAI_ROOT", str(Path(__file__).resolve().parents[2])), "data", "PubMed", "sync_state.json")) CHUNK_SIZE = 500000 def get_updated_pmids(): diff --git a/pubmed/reindex_one_shard.py b/pubmed/reindex_one_shard.py index 3595d78..20e25c2 100644 --- a/pubmed/reindex_one_shard.py +++ b/pubmed/reindex_one_shard.py @@ -1,3 +1,4 @@ +import os #!/usr/bin/env python3 """ @@ -22,7 +23,7 @@ # Configuration SHARD = "_general_corpus_chunk100" -PUBMED_DIR = Path("/home/manish/Desktop/machine/data/PubMed") +PUBMED_DIR = Path(os.path.join(os.environ.get("OMNIBIOAI_ROOT", str(Path(__file__).resolve().parents[2])), "data", "PubMed")) INPUT_DIR = PUBMED_DIR / "Abstracts" / SHARD STAGING_DIR = PUBMED_DIR / "Index" / "_reindex_staging" / SHARD diff --git a/pubmed/reindex_one_shard_ollama.py b/pubmed/reindex_one_shard_ollama.py index 169c184..cf8e21f 100644 --- a/pubmed/reindex_one_shard_ollama.py +++ b/pubmed/reindex_one_shard_ollama.py @@ -1,3 +1,4 @@ +import os #!/usr/bin/env python3 """ @@ -18,7 +19,7 @@ SHARD = "_general_corpus_chunk100" PUBMED_DIR = Path( - "/home/manish/Desktop/machine/data/PubMed" + os.path.join(os.environ.get("OMNIBIOAI_ROOT", str(Path(__file__).resolve().parents[2])), "data", "PubMed") ) INPUT_DIR = PUBMED_DIR / "Abstracts" / SHARD diff --git a/pubmed/run_chunks.sh b/pubmed/run_chunks.sh index 2540756..0e6cea2 100644 --- a/pubmed/run_chunks.sh +++ b/pubmed/run_chunks.sh @@ -1,11 +1,12 @@ #!/usr/bin/env bash +source "$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)/ecosystem_path.sh" # run_chunks.sh # Runs embedding_engine.py over each _general_corpus_chunk* study, # capping concurrency to avoid repeating the OOM/swap situation. set -euo pipefail -PARENT="/home/manish/Desktop/machine/omnibioai-data/PubMed/Abstracts" +PARENT="$OMNIBIOAI_ROOT/omnibioai-data/PubMed/Abstracts" CHUNK_PREFIX="_general_corpus_chunk" MAX_CONCURRENT=1 # tune based on observed RSS per chunk; start conservative EMBED_MODEL="pubmedbert" diff --git a/pubmed/split_general_corpus.sh b/pubmed/split_general_corpus.sh index d55330a..5f5c92c 100755 --- a/pubmed/split_general_corpus.sh +++ b/pubmed/split_general_corpus.sh @@ -1,4 +1,5 @@ #!/usr/bin/env bash +source "$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)/ecosystem_path.sh" # split_general_corpus.sh # Splits _general_corpus/*.json into chunk subdirectories of CHUNK_SIZE files each, # so ragbio.embeddings.embedding_engine can be run per-chunk via --study @@ -6,7 +7,7 @@ set -euo pipefail -SRC="/home/manish/Desktop/machine/omnibioai-data/PubMed/Abstracts/_general_corpus" +SRC="$OMNIBIOAI_ROOT/omnibioai-data/PubMed/Abstracts/_general_corpus" PARENT="$(dirname "$SRC")" CHUNK_SIZE=500000 CHUNK_PREFIX="_general_corpus_chunk" diff --git a/run_coverage.sh b/run_coverage.sh index fe5d317..34b1eab 100755 --- a/run_coverage.sh +++ b/run_coverage.sh @@ -1,5 +1,6 @@ #!/bin/bash -MACHINE=~/Desktop/machine +source "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/ecosystem_path.sh" +MACHINE="$OMNIBIOAI_ROOT" OUT=$MACHINE/out/coverage mkdir -p $OUT find $MACHINE -name "coverage.json" -exec chmod 666 {} \; 2>/dev/null @@ -107,7 +108,7 @@ merged = { } } -out = os.path.expanduser("~/Desktop/machine/out/coverage/omnibioai.json") +out = os.path.join(os.environ.get("OMNIBIOAI_ROOT", ""), "out/coverage/omnibioai.json") with open(out, "w") as f: json.dump(merged, f, indent=2) print(f" ✅ omnibioai merged: {total_covered}/{total_stmts} = {total_pct:.2f}%") @@ -121,7 +122,7 @@ echo "" python3 - <<'EOF' import json, os, glob -out_dir = os.path.expanduser("~/Desktop/machine/out/coverage") +out_dir = os.path.join(os.environ.get("OMNIBIOAI_ROOT", ""), "out/coverage") SKIP = {"omnibioai-services.json", "omnibioai-plugins.json"} THRESHOLD = 90.0 diff --git a/start-all-uis.sh b/start-all-uis.sh index c7d3dc5..417b63b 100755 --- a/start-all-uis.sh +++ b/start-all-uis.sh @@ -1,6 +1,7 @@ #!/bin/bash +source "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/ecosystem_path.sh" set -e -BASE=$HOME/Desktop/machine +BASE="$OMNIBIOAI_ROOT" echo 'Starting OmniBioAI backend APIs...' # Workflow bundles backend diff --git a/start_all.sh b/start_all.sh index e04dcdc..b4df717 100755 --- a/start_all.sh +++ b/start_all.sh @@ -1,11 +1,12 @@ #!/bin/bash +source "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/ecosystem_path.sh" set -e echo "==============================" echo "Starting OmniBioAI stack" echo "==============================" -ROOT=~/Desktop/machine +ROOT="$OMNIBIOAI_ROOT" # ---------------------------- # Start omnibioai-tes diff --git a/start_stack_tmux.sh b/start_stack_tmux.sh index d8886fd..fc3e723 100755 --- a/start_stack_tmux.sh +++ b/start_stack_tmux.sh @@ -1,7 +1,8 @@ #!/usr/bin/env bash +source "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/ecosystem_path.sh" set -euo pipefail -ROOT="$HOME/Desktop/machine" +ROOT="$OMNIBIOAI_ROOT" UTILS="$ROOT/utils/kill_port.sh" # Ports diff --git a/sweep_all_repos.sh b/sweep_all_repos.sh index 395200e..383d438 100644 --- a/sweep_all_repos.sh +++ b/sweep_all_repos.sh @@ -1,4 +1,5 @@ #!/usr/bin/env bash +source "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/ecosystem_path.sh" set -uo pipefail # Scans every sibling repo under MACHINE_DIR for leftover ghcr.io/man4ish @@ -6,7 +7,7 @@ set -uo pipefail # same exclusions for release/, obsolete/, node_modules/, work/, *.log etc). # Prints a per-repo summary so you can decide where to actually apply the fix. -MACHINE_DIR="${1:-$HOME/Desktop/machine}" +MACHINE_DIR="${1:-$OMNIBIOAI_ROOT}" UPDATE_SCRIPT="$(cd "$(dirname "$0")" && pwd)/update_ghcr_refs.sh" if [ ! -f "$UPDATE_SCRIPT" ]; then @@ -73,4 +74,4 @@ else echo " Review: bash $UPDATE_SCRIPT ${MACHINE_DIR}/${r}" echo " Apply: bash $UPDATE_SCRIPT ${MACHINE_DIR}/${r} --apply" done -fi \ No newline at end of file +fi diff --git a/sync_all_repos.sh b/sync_all_repos.sh index e4b1720..15c462b 100755 --- a/sync_all_repos.sh +++ b/sync_all_repos.sh @@ -1,9 +1,10 @@ +source "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/ecosystem_path.sh" #!/usr/bin/env bash set -u -ROOT="${1:-$HOME/Desktop/machine}" +ROOT="${1:-$OMNIBIOAI_ROOT}" REPOS=( "omnibioai-api-gateway" diff --git a/test_split_on_sample.sh b/test_split_on_sample.sh index 98ef2d2..8c15e67 100755 --- a/test_split_on_sample.sh +++ b/test_split_on_sample.sh @@ -1,7 +1,8 @@ #!/usr/bin/env bash +source "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/ecosystem_path.sh" set -euo pipefail -SRC_REAL="${SRC_REAL:-/home/manish/Desktop/machine/omnibioai-data/PubMed/Abstracts/_general_corpus}" +SRC_REAL="${SRC_REAL:-$OMNIBIOAI_ROOT/omnibioai-data/PubMed/Abstracts/_general_corpus}" SAMPLE_SIZE=20 TEST_ROOT="/tmp/gc_split_test_$$" SRC="${TEST_ROOT}/_general_corpus" diff --git a/tests/test_ecosystem_path.sh b/tests/test_ecosystem_path.sh new file mode 100755 index 0000000..c9ad77b --- /dev/null +++ b/tests/test_ecosystem_path.sh @@ -0,0 +1,8 @@ +#!/usr/bin/env bash +set -euo pipefail +repo="$(cd "$(dirname "$0")/.." && pwd)" +expected="$(cd "$repo/.." && pwd)" +actual="$(env -u OMNIBIOAI_ROOT bash -c 'source "$1/ecosystem_path.sh"; printf "%s" "$OMNIBIOAI_ROOT"' _ "$repo")" +[[ "$actual" == "$expected" ]] +override="$(OMNIBIOAI_ROOT="/tmp/root with spaces" bash -c 'source "$1/ecosystem_path.sh"; printf "%s" "$OMNIBIOAI_ROOT"' _ "$repo")" +[[ "$override" == "/tmp/root with spaces" ]]