@meridiona/meridian-darwin-arm64 1.27.2 → 1.27.3
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/VERSION +1 -1
- package/bin/meridian +0 -0
- package/package.json +1 -1
- package/scripts/com.meridiona.a11y-helper.plist +9 -1
- package/scripts/com.meridiona.daemon.plist +1 -1
- package/scripts/com.meridiona.screenpipe.plist +1 -1
- package/scripts/com.meridiona.ui.plist +1 -1
- package/scripts/install-from-bundle.sh +29 -10
- package/services/pyproject.toml +1 -1
package/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
1.27.
|
|
1
|
+
1.27.3
|
package/bin/meridian
CHANGED
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@meridiona/meridian-darwin-arm64",
|
|
3
|
-
"version": "1.27.
|
|
3
|
+
"version": "1.27.3",
|
|
4
4
|
"description": "Prebuilt Meridian app for macOS arm64 (daemon binary + dashboard + Python services). Installed via @meridiona/meridian.",
|
|
5
5
|
"homepage": "https://github.com/Meridiona/meridian",
|
|
6
6
|
"repository": {
|
|
@@ -31,6 +31,14 @@
|
|
|
31
31
|
<string>{{HELPER_BIN}}</string>
|
|
32
32
|
</array>
|
|
33
33
|
|
|
34
|
+
<key>EnvironmentVariables</key>
|
|
35
|
+
<dict>
|
|
36
|
+
<key>HOME</key>
|
|
37
|
+
<string>{{HOME}}</string>
|
|
38
|
+
<key>PATH</key>
|
|
39
|
+
<string>/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin</string>
|
|
40
|
+
</dict>
|
|
41
|
+
|
|
34
42
|
<key>StandardOutPath</key>
|
|
35
43
|
<string>{{HOME}}/.meridian/logs/a11y-helper.log</string>
|
|
36
44
|
<key>StandardErrorPath</key>
|
|
@@ -41,7 +49,7 @@
|
|
|
41
49
|
<key>KeepAlive</key>
|
|
42
50
|
<true/>
|
|
43
51
|
<key>ThrottleInterval</key>
|
|
44
|
-
<integer>
|
|
52
|
+
<integer>30</integer>
|
|
45
53
|
<key>ProcessType</key>
|
|
46
54
|
<string>Background</string>
|
|
47
55
|
</dict>
|
|
@@ -131,6 +131,13 @@ resolve_node_runtime() {
|
|
|
131
131
|
local ver sha
|
|
132
132
|
ver="$(grep '^NODE_RUNTIME_VERSION=' "${meta}" | cut -d= -f2 | tr -d '[:space:]')"
|
|
133
133
|
sha="$(grep '^NODE_RUNTIME_SHA=' "${meta}" | cut -d= -f2 | tr -d '[:space:]')"
|
|
134
|
+
if [[ -z "${ver}" || -z "${sha}" ]]; then
|
|
135
|
+
warn "node-runtime.meta is malformed (missing VERSION or SHA) — falling back to system node"
|
|
136
|
+
for _n in /opt/homebrew/bin/node /usr/local/bin/node /usr/bin/node; do
|
|
137
|
+
[[ -x "${_n}" ]] && { echo "${_n}"; return 0; }
|
|
138
|
+
done
|
|
139
|
+
return 1
|
|
140
|
+
fi
|
|
134
141
|
local cache_dir="${HOME}/.meridian/node-runtime/v${ver}"
|
|
135
142
|
local cache_bin="${cache_dir}/bin/node"
|
|
136
143
|
if [[ -x "${cache_bin}" ]]; then echo "${cache_bin}"; return 0; fi
|
|
@@ -405,8 +412,11 @@ _LOCK_HASH="$(shasum -a 256 "${APP_ROOT}/services/uv.lock" 2>/dev/null | cut -d'
|
|
|
405
412
|
# enforces this); the venv MUST use exactly 3.11 or the cpython-311 .so files fail
|
|
406
413
|
# to import. Prefer system python3.11, then uv-managed 3.11, then install it via uv.
|
|
407
414
|
_extract_venv() {
|
|
408
|
-
local tgz="$1" stamp_hash="$2" tarball_python="" py_dir=""
|
|
409
|
-
|
|
415
|
+
local tgz="$1" stamp_hash="$2" tarball_python="" py_dir="" venv_tmp=""
|
|
416
|
+
# Stage the new venv to a temp path; swap atomically only on success so a
|
|
417
|
+
# failed extraction (disk full, corrupt archive) never destroys the live venv.
|
|
418
|
+
venv_tmp="${VENV}.tmp.$$"
|
|
419
|
+
rm -rf "${venv_tmp}"
|
|
410
420
|
if command -v python3.11 >/dev/null 2>&1; then
|
|
411
421
|
tarball_python="$(command -v python3.11)"
|
|
412
422
|
elif "${UV_BIN}" python find 3.11 >/dev/null 2>&1; then
|
|
@@ -416,13 +426,16 @@ _extract_venv() {
|
|
|
416
426
|
"${UV_BIN}" python install 3.11
|
|
417
427
|
tarball_python="$("${UV_BIN}" python find 3.11)"
|
|
418
428
|
fi
|
|
419
|
-
"${UV_BIN}" venv --python "${tarball_python}" "${
|
|
420
|
-
py_dir="$(ls "${
|
|
421
|
-
mkdir -p "${
|
|
422
|
-
tar -xzf "${tgz}" -C "${
|
|
429
|
+
"${UV_BIN}" venv --python "${tarball_python}" "${venv_tmp}" 2>/dev/null
|
|
430
|
+
py_dir="$(ls "${venv_tmp}/lib/" | grep '^python' | head -1)"
|
|
431
|
+
mkdir -p "${venv_tmp}/lib/${py_dir}/site-packages"
|
|
432
|
+
tar -xzf "${tgz}" -C "${venv_tmp}/lib/${py_dir}/site-packages"
|
|
423
433
|
# Install the local editable package (meridian-agents) — no deps needed,
|
|
424
434
|
# everything is already in site-packages from the tarball.
|
|
425
|
-
"${UV_BIN}" pip install --quiet --no-deps --python "${
|
|
435
|
+
"${UV_BIN}" pip install --quiet --no-deps --python "${venv_tmp}/bin/python" -e "${APP_ROOT}/services"
|
|
436
|
+
# All steps succeeded — atomically replace the live venv.
|
|
437
|
+
rm -rf "${VENV}"
|
|
438
|
+
mv "${venv_tmp}" "${VENV}"
|
|
426
439
|
printf '%s\n' "${stamp_hash}" > "${VENV_STAMP}"
|
|
427
440
|
ok "Python services ready ($(${VENV}/bin/python --version 2>&1))"
|
|
428
441
|
}
|
|
@@ -544,6 +557,8 @@ elif [[ -d "${APP_ROOT}/ui" ]]; then
|
|
|
544
557
|
# ui/ was preserved by meridian-npm-setup.sh — hash matched, no re-extraction needed
|
|
545
558
|
ok "dashboard unchanged — reusing existing build"
|
|
546
559
|
_ui_changed=0
|
|
560
|
+
else
|
|
561
|
+
err "Dashboard bundle missing: neither ui.tar.gz nor ui/ found in ${APP_ROOT}. Re-run the installer."
|
|
547
562
|
fi
|
|
548
563
|
|
|
549
564
|
# ── 6. Daemons — restart only what changed ───────────────────────────────────
|
|
@@ -600,7 +615,7 @@ _final_ui_hash="${_new_ui_hash:-${_OLD_UI_HASH}}"
|
|
|
600
615
|
{
|
|
601
616
|
[[ -n "${_new_daemon_hash}" ]] && printf 'daemon_bin=%s\n' "${_new_daemon_hash}"
|
|
602
617
|
[[ -n "${_final_ui_hash}" ]] && printf 'ui_tarball=%s\n' "${_final_ui_hash}"
|
|
603
|
-
} > "${_HASH_FILE}"
|
|
618
|
+
} > "${_HASH_FILE}.tmp" && mv "${_HASH_FILE}.tmp" "${_HASH_FILE}"
|
|
604
619
|
|
|
605
620
|
ok "all daemons installed"
|
|
606
621
|
|
|
@@ -608,8 +623,12 @@ ok "all daemons installed"
|
|
|
608
623
|
_skill_src="${APP_ROOT}/services/skills/coding-agent/session-summary/SKILL.md"
|
|
609
624
|
_skill_dst="${HOME}/.claude/commands/session-summary.md"
|
|
610
625
|
mkdir -p "${HOME}/.claude/commands"
|
|
611
|
-
|
|
612
|
-
|
|
626
|
+
if [[ -f "${_skill_src}" ]]; then
|
|
627
|
+
cp "${_skill_src}" "${_skill_dst}"
|
|
628
|
+
ok "session-summary command → ~/.claude/commands/session-summary.md"
|
|
629
|
+
else
|
|
630
|
+
warn "session-summary skill not found in bundle (${_skill_src}) — skipping"
|
|
631
|
+
fi
|
|
613
632
|
|
|
614
633
|
# Pipeline smoke test — verify both LLM stages return valid output (no DB writes).
|
|
615
634
|
echo ""
|
package/services/pyproject.toml
CHANGED
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "meridian-agents"
|
|
7
|
-
version = "1.27.
|
|
7
|
+
version = "1.27.3"
|
|
8
8
|
description = "Meridian agents — hermes task linking and Jira progress updates for meridian.db"
|
|
9
9
|
requires-python = ">=3.11"
|
|
10
10
|
authors = [{ name = "Meridiona" }]
|