fix: stabilize live session UI and skill publishing
Keep message navigation and progress state synchronized, and preserve sequential split-flap count updates with a bounded queue. Publish the Obelisk skill under skills/obelisk for npx skills, sharing the same staging layout between CI and local releases with regression coverage.
This commit is contained in:
@@ -1,18 +1,18 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
SKILL_DIR="dist/obelisk-skill"
|
||||
SKILL_ARTIFACT="dist/obelisk-skill"
|
||||
SKILL_REPO="dist/obelisk-skill-repo"
|
||||
REMOTE="git@github.com:tommy0103/obelisk-skill.git"
|
||||
|
||||
if [ ! -d "$SKILL_DIR/scripts" ]; then
|
||||
if [ ! -d "$SKILL_ARTIFACT/scripts" ]; then
|
||||
echo "Error: run 'npm run build:skill' first" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cp packaging/skill-README.md "$SKILL_DIR/README.md"
|
||||
cp packaging/skill-LICENSE "$SKILL_DIR/LICENSE"
|
||||
bash packaging/stage-skill-repo.sh "$SKILL_REPO" "$SKILL_ARTIFACT"
|
||||
|
||||
cd "$SKILL_DIR"
|
||||
cd "$SKILL_REPO"
|
||||
rm -rf .git
|
||||
git init
|
||||
git remote add origin "$REMOTE"
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||||
TARGET_DIR="${1:-}"
|
||||
ARTIFACT_DIR="${2:-$ROOT_DIR/dist/obelisk-skill}"
|
||||
|
||||
if [ -z "$TARGET_DIR" ]; then
|
||||
echo "Usage: packaging/stage-skill-repo.sh <target-repo> [skill-artifact]" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ "$TARGET_DIR" = "/" ] || [ "$TARGET_DIR" = "." ] || [ "$TARGET_DIR" = "$ROOT_DIR" ]; then
|
||||
echo "Error: refusing to replace unsafe target directory: $TARGET_DIR" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
for required in SKILL.md package.json references scripts; do
|
||||
if [ ! -e "$ARTIFACT_DIR/$required" ]; then
|
||||
echo "Error: skill artifact missing $required at $ARTIFACT_DIR" >&2
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
mkdir -p "$TARGET_DIR"
|
||||
find "$TARGET_DIR" -mindepth 1 \
|
||||
! -path "$TARGET_DIR/.git" \
|
||||
! -path "$TARGET_DIR/.git/*" \
|
||||
-delete
|
||||
|
||||
mkdir -p "$TARGET_DIR/skills/obelisk"
|
||||
cp -R "$ARTIFACT_DIR"/. "$TARGET_DIR/skills/obelisk/"
|
||||
cp "$ROOT_DIR/packaging/skill-README.md" "$TARGET_DIR/README.md"
|
||||
cp "$ROOT_DIR/packaging/skill-LICENSE" "$TARGET_DIR/LICENSE"
|
||||
Reference in New Issue
Block a user