@agentikos/omega-os 0.19.8 → 0.19.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bootstrap/lib/steps.sh +64 -14
- package/install.sh +8 -0
- package/omega/Agentik_Engine/omega_engine/__init__.py +1 -1
- package/omega/Agentik_Engine/omega_engine/__pycache__/__init__.cpython-313.pyc +0 -0
- package/omega/Agentik_Engine/pyproject.toml +1 -1
- package/omega/Agentik_SSOT/VERSION +1 -1
- package/package.json +1 -1
package/bootstrap/lib/steps.sh
CHANGED
|
@@ -35,25 +35,75 @@ step_system_deps() {
|
|
|
35
35
|
|
|
36
36
|
# PyYAML — required by every install-side helper that reads the manifest
|
|
37
37
|
# or audit YAMLs (bootstrap/lib/llm-clis.py, manifest-helpers.py, audit
|
|
38
|
-
# generator). apt/dnf already deliver it via the system package above
|
|
39
|
-
#
|
|
40
|
-
#
|
|
38
|
+
# generator). apt/dnf already deliver it via the system package above.
|
|
39
|
+
#
|
|
40
|
+
# macOS Tahoe / Sonoma ship externally-managed Pythons (PEP 668) AND
|
|
41
|
+
# often deny `pip install --user --break-system-packages` for security
|
|
42
|
+
# policy reasons. The 100% reliable path is a dedicated venv that we
|
|
43
|
+
# own, isolated from system Python rules.
|
|
44
|
+
#
|
|
45
|
+
# We prepend the venv's bin/ to PATH so every subsequent `python3 ...`
|
|
46
|
+
# call (37 sites across steps.sh) automatically uses this isolated
|
|
47
|
+
# Python WITHOUT touching the user's system Python or site-packages.
|
|
48
|
+
local installer_venv="$STATE_DIR/installer-venv"
|
|
41
49
|
if ! python3 -c "import yaml" 2>/dev/null; then
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
50
|
+
# On macOS Tahoe (and any Python without working `ensurepip` /
|
|
51
|
+
# broken venv) the stdlib `python3 -m venv` crashes. Astral's `uv`
|
|
52
|
+
# creates venvs reliably from any Python and is the canonical path.
|
|
53
|
+
# We make it the PRIMARY method; stdlib venv is only a fallback for
|
|
54
|
+
# boxes where uv isn't installed yet.
|
|
55
|
+
#
|
|
56
|
+
# Bootstrap order: uv was added to step_system_deps later in this
|
|
57
|
+
# very function, but most Macs already have it. If neither uv nor
|
|
58
|
+
# working stdlib venv is available, we install uv first then loop.
|
|
59
|
+
if [ ! -f "$installer_venv/bin/python3" ]; then
|
|
60
|
+
info "creating installer venv (PEP-668-safe path for install helpers)"
|
|
61
|
+
|
|
62
|
+
# 1. Pre-install uv if it's missing — it's the safest venv tool.
|
|
63
|
+
if ! have uv && [ ! -x "$HOME/.local/bin/uv" ]; then
|
|
64
|
+
info " → installing uv (Astral package manager) first"
|
|
65
|
+
curl -LsSf https://astral.sh/uv/install.sh 2>>"$LOG_FILE" | sh >>"$LOG_FILE" 2>&1 \
|
|
66
|
+
|| info " (uv install failed — will try python3 -m venv as fallback)"
|
|
67
|
+
fi
|
|
68
|
+
local uv_bin="$(command -v uv || echo "$HOME/.local/bin/uv")"
|
|
69
|
+
|
|
70
|
+
# 2. Try uv first (works on Tahoe + any PEP-668 Python).
|
|
71
|
+
if [ -x "$uv_bin" ] && "$uv_bin" venv "$installer_venv" \
|
|
72
|
+
--python python3 --quiet 2>>"$LOG_FILE"; then
|
|
73
|
+
ok " installer venv created via uv"
|
|
74
|
+
elif python3 -m venv "$installer_venv" 2>>"$LOG_FILE"; then
|
|
75
|
+
ok " installer venv created via python3 -m venv"
|
|
76
|
+
else
|
|
77
|
+
err "venv creation failed by both uv AND python3 -m venv — see $LOG_FILE"
|
|
78
|
+
err "diagnose:"
|
|
79
|
+
err " $uv_bin venv $installer_venv --python python3"
|
|
80
|
+
err " python3 -m venv $installer_venv"
|
|
81
|
+
return 1
|
|
82
|
+
fi
|
|
83
|
+
fi
|
|
84
|
+
|
|
85
|
+
# 3. Install pyyaml into the venv. Two methods, uv first.
|
|
86
|
+
local uv_bin="$(command -v uv || echo "$HOME/.local/bin/uv")"
|
|
87
|
+
if [ -x "$uv_bin" ] && "$uv_bin" pip install --quiet \
|
|
88
|
+
--python "$installer_venv/bin/python3" pyyaml 2>>"$LOG_FILE"; then
|
|
89
|
+
ok " pyyaml installed via uv pip"
|
|
90
|
+
elif "$installer_venv/bin/pip" install --quiet pyyaml 2>>"$LOG_FILE"; then
|
|
91
|
+
ok " pyyaml installed via venv pip"
|
|
49
92
|
else
|
|
50
|
-
err "pyyaml install failed
|
|
51
|
-
err "
|
|
93
|
+
err "pyyaml install failed in venv — see $LOG_FILE"
|
|
94
|
+
err "diagnose: $installer_venv/bin/pip install pyyaml"
|
|
52
95
|
return 1
|
|
53
96
|
fi
|
|
54
|
-
|
|
97
|
+
ok "installer venv ready: $installer_venv"
|
|
98
|
+
fi
|
|
99
|
+
# PATH prepend — persists for the rest of install.sh because steps are
|
|
100
|
+
# called as bash functions in the SAME shell. We do this on every run,
|
|
101
|
+
# not only when we just created the venv, so a resumed install with a
|
|
102
|
+
# pre-existing venv still gets `python3 -c "import yaml"` resolving here.
|
|
103
|
+
if [ -x "$installer_venv/bin/python3" ]; then
|
|
104
|
+
export PATH="$installer_venv/bin:$PATH"
|
|
55
105
|
if ! python3 -c "import yaml" 2>/dev/null; then
|
|
56
|
-
err "
|
|
106
|
+
err "venv python3 on PATH but yaml not importable — corrupted venv?"
|
|
57
107
|
return 1
|
|
58
108
|
fi
|
|
59
109
|
fi
|
package/install.sh
CHANGED
|
@@ -86,6 +86,14 @@ STATE_FILE="$STATE_DIR/.install-state"
|
|
|
86
86
|
LOG_FILE="$STATE_DIR/logs/install.log"
|
|
87
87
|
mkdir -p "$STATE_DIR/logs"
|
|
88
88
|
|
|
89
|
+
# Installer-venv guard — if a previous run created the PEP-668-safe venv,
|
|
90
|
+
# prepend it to PATH NOW so subsequent steps that get skipped as
|
|
91
|
+
# "already done" (step 10) still pick up its python3 with pyyaml. Without
|
|
92
|
+
# this, a resumed install skips step 10 → step 15 hits "no module yaml".
|
|
93
|
+
if [ -x "$STATE_DIR/installer-venv/bin/python3" ]; then
|
|
94
|
+
export PATH="$STATE_DIR/installer-venv/bin:$PATH"
|
|
95
|
+
fi
|
|
96
|
+
|
|
89
97
|
# Bundled version — used to detect state drift across upgrades. We read it
|
|
90
98
|
# from the SSOT VERSION file shipped in the package, falling back to the
|
|
91
99
|
# engine's pyproject.toml so a partially-installed system still works.
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
0.19.
|
|
1
|
+
0.19.10
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agentikos/omega-os",
|
|
3
|
-
"version": "0.19.
|
|
3
|
+
"version": "0.19.10",
|
|
4
4
|
"description": "Omega OS — installable agentic operating system with verified-completion orchestration. Event-sourced engine, 8-block rack, autonomous agents, MCP.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"omega-os": "bin/omega-os.js"
|