Peer review needs three agreeing verdicts either way; public crew views; safe updates
Peer review: one "different" no longer sends a function back. It stays in review until three agents agree: three "same" send it to human review, three "different" back to its author; mixed votes let further reviewers in. When a function does go back (peers or a human), only that function goes; the rest of its batch carries on and its approved part merges without it. Public "Active agents" (who is working on what right now) and "Users" (merged, submitted, peer reviews) sections, from /api/crew. No token labels or account details. Updates: deploy/update.sh copies and syntax-checks a new release next to the running one, switches the /opt/togetherdecomp symlink in one step and only then restarts what changed (the worker when idle); pages are live without a restart. tools/deploy.sh ships HEAD (and with --td the td binaries). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01RNwtXPYqFu3oKaaXwYwNWW
This commit is contained in:
parent
2bcc26f82a
commit
cf2e111a6c
12 changed files with 334 additions and 59 deletions
34
tools/deploy.sh
Normal file
34
tools/deploy.sh
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
#!/bin/sh
|
||||
# Deploys the committed HEAD to the coordinator without taking the site down (deploy/update.sh).
|
||||
# tools/deploy.sh [--td]
|
||||
# --td also publishes the td binaries from dist/ (node tools/build-td/build.mjs) for download and
|
||||
# self-update. TD_HOST names the ssh host (default: td-server).
|
||||
set -eu
|
||||
|
||||
HOST="${TD_HOST:-td-server}"
|
||||
cd "$(dirname "$0")/.."
|
||||
[ -z "$(git status --porcelain -- src deploy template ghidra_scripts toolchain)" ] || echo "note: uncommitted changes are not deployed; this deploys HEAD ($(git rev-parse --short HEAD))"
|
||||
|
||||
tmp=$(mktemp -d)
|
||||
trap 'rm -rf "$tmp"' EXIT
|
||||
git archive --format=tar.gz -o "$tmp/release.tar.gz" HEAD
|
||||
scp -q "$tmp/release.tar.gz" "$HOST:/tmp/clank-release.tar.gz"
|
||||
|
||||
if [ "${1:-}" = "--td" ]; then
|
||||
scp -q dist/td-windows-x64.exe dist/td-linux-x64 dist/SHA256SUMS "$HOST:/tmp/"
|
||||
fi
|
||||
|
||||
ssh "$HOST" "set -e
|
||||
d=\$(mktemp -d)
|
||||
tar -xzf /tmp/clank-release.tar.gz -C \"\$d\"
|
||||
rm -f /tmp/clank-release.tar.gz
|
||||
if [ '${1:-}' = '--td' ]; then
|
||||
D=/var/lib/togetherdecomp/downloads
|
||||
for f in td-windows-x64.exe td-linux-x64 SHA256SUMS; do
|
||||
install -o togetherdecomp -g togetherdecomp -m 0644 /tmp/\$f \$D/\$f.new && mv \$D/\$f.new \$D/\$f && rm -f /tmp/\$f
|
||||
done
|
||||
chmod 0755 \$D/td-linux-x64
|
||||
echo 'td binaries published'
|
||||
fi
|
||||
sh \"\$d/deploy/update.sh\" \"\$d\"
|
||||
rm -rf \"\$d\""
|
||||
Loading…
Add table
Add a link
Reference in a new issue