본문으로 건너뛰기
cccskills
무료GitHub에 공개

publish-site

Build the results site and publish it to GitHub Pages. Checks every precondition deploy-site.py enforces before spending a build on them, presents the research/ diff the build produces for a commit, and deploys only on explicit confirmation. Trigger when the user says "publish", "deploy", "site deployen", "gh-pages", "auf die Seite bringen", or asks how to get results online.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

marcoemrich/agentic_coding_lab스타 14(GitHub 14 + cccskills 0)
연동 도구GitHub

실행 점수 미검증

설치 방법 보기

포함된 파일(1)

  • SKILL.md5.8 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

/publish-site — build and publish the results site

The lab has two publishing paths and they are not alternatives:

PathProducesEntry point
this skillthe live site on the gh-pages branch, one page per RQpnpm deploy:site
/build-overviewa frozen Markdown snapshot under research/reports/generate-snapshot-skeleton.py

Do not reach for one when the user asked for the other. "Snapshot", "report", "Bericht", "Stand" → /build-overview. "Site", "online", "deploy", "Pages" → here.

What publishes, and what does not

export-site-data.py globs research/questions-*/*/README.md. So the site carries the per-harness and cross-harness RQs only — research/workflow-dev/ and research/kata-dev/ are deliberately not published yet. If the user expects a workflow-development RQ on the site, say that it is out of scope rather than hunting for a bug.

Each RQ page shows its findings.md as written, behind a warning banner. There is no separate review step, so a findings file that contradicts its own data goes online as it stands. Worth a sentence to the user when you know of one.

Deploy is outward-facing

deploy-site.py pushes to a public branch. Never run it without the user saying so in this conversation. Building is free and reversible; deploying is not. When the user asks "how do I publish", answer with the commands and stop — do not deploy to demonstrate.

Phase 1 — preconditions

deploy-site.py refuses on any of these, and it refuses after running its own build, so checking first saves the build. Report them as a block:

cd /path/to/agentic_coding_lab
git rev-parse --abbrev-ref HEAD                      # must be main
git merge-base --is-ancestor HEAD origin/main && echo pushed || echo NOT-pushed
git status --porcelain -- research site | wc -l      # must be 0
command -v uv || echo "uv MISSING"
test -d site/node_modules || echo "site deps MISSING"

Two of these are the traps:

  • site/node_modules is not in the repo. Without it the Astro build dies with astro: not found and build-site.py exits 1 after already re-aggregating every RQ. Fix: cd site && pnpm install --frozen-lockfile. Do not worry about the host's pnpm version — corepack honours the packageManager pin in site/package.json and uses that one.
  • uv is the documented interpreter and may be absent. Both pnpm scripts are uv run --project ../experiments python .... Install it the way the Dockerfile does, at the same pin, rather than reaching for pip (the system Python is PEP 668 managed and has no ensurepip):
    curl -LsSf https://astral.sh/uv/0.12.17/install.sh | sh
    cd experiments && uv sync
    

Phase 2 — build

cd site && pnpm build:site

It re-aggregates every RQ, runs the site data export, then astro build. Stops at the first failing step. Refuses while a batch runs, through the aggregator's batch lock — so check docker ps if it exits on that.

It closes with git diff --stat over research/. no changes is the only output that lets a deploy proceed, because deploy-site.py publishes nothing when its own build leaves a diff there.

Phase 3 — the research/ diff, if there is one

A diff means committed aggregations were stale. Sort it before offering a commit, because the two kinds read completely differently:

  • Substantive — a cell's n, mean or sd moves meaningfully, or a metric appears where it was null. Usually a metric was computed (compute-cost.py, compute-mutation-score.py) and never aggregated, or a run was re-measured and other RQs share that run's cell.
  • Last-digit float churn in summary.json — "sd": 3.271085446759225 → 3.2710854467592254. Harmless, and one-time: two consecutive aggregations are byte-identical afterwards.

Separate them before reporting:

git diff -U0 -- research | grep -E '^[+-]' | grep -vE '^[+-][+-]' \
  | grep -vE '"(sd|mean)":\s*[0-9.e-]{12,}' | head -40

Report the substantive ones by RQ and metric, then ask whether to commit. Never git checkout the diff away — the committed values are the stale ones.

If the churn is not one-time, the pins have drifted. experiments/pyproject.toml pins pandas/numpy to the host's system versions for exactly one reason: so uv run and a plain python3 compute the same numbers. When the host's Python moves and the pins do not, every uv-driven build rewrites the last digits of every mean and a deploy can never go green. Check python3 -c "import pandas, numpy; print(pandas.__version__, numpy.__version__)" against the pins before concluding anything about the data.

Phase 4 — deploy

Only after the user has said to deploy, and only with phase 1 green and phase 2 reporting no changes:

cd site && pnpm deploy:site

It runs the full build again, then commits site/dist/ plus .nojekyll onto gh-pages in a temporary worktree as Deploy <short sha>: <subject> and pushes. An orphan branch on the first deploy. The published site therefore always matches one pushed commit on main.

Afterwards, report the gh-pages commit and the deployed main sha:

git log --oneline -1 origin/gh-pages

Out of scope

  • Writing or editing findings.md — that is /run-rq and /reanalyze.
  • The frozen Markdown snapshot — that is /build-overview.
  • Starting batches or analysing runs.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Generates an experiment-overview snapshot of all research questions under research/reports/. Invoke when a new point-in-time report across all RQs should be produced.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

marcoemrich/agentic_coding_lab142026년 10월 26일 업데이트

Mint a new YYYY-MM-DD-exact-coding-baseline snapshot under research/workflow-dev/export/. Detects the current best correctness- oriented workflow from research/workflow-dev/workflow-construction.md (or takes an explicit source-workflow argument) and transforms it from a lab workflow into a consumer-ready one on three axes: strips lab-only measurement content, re-enables human-in-the-loop checkpoints, and converts auto-loading config into an explicitly-invoked skill. Supports both promoted EXACT Coding lines: Opus/Hybrid and SOL/Predictive TDD. Exports Claude Code, pi, OpenCode, cursor-agent and, for SOL, Copilot. Trigger when the user says "exact-coding baseline export", "neue exact-coding baseline", "exact-coding-baseline-export", or asks to refresh the baseline snapshot.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

marcoemrich/agentic_coding_lab142026년 10월 26일 업데이트

green

무료

TDD Green Phase - Implement minimal code to make the failing test pass

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

marcoemrich/agentic_coding_lab142026년 10월 26일 업데이트

reanalyze

무료

Re-run the analysis pipeline on all runs matching an RQ, reaggregate metrics, and propose findings updates against the fresh data. Trigger when the user says "reanalyze RQ-N", "reanalyse RQ-N", "Runs neu analysieren", or wants to refresh metrics/findings after a pipeline change (analyze-run.sh fix, adapter added, ESLint config).

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

marcoemrich/agentic_coding_lab142026년 10월 26일 업데이트

red

무료

TDD Red Phase - Activate ONE test from the test list and make it fail with explicit predictions

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

marcoemrich/agentic_coding_lab142026년 10월 26일 업데이트

refactor

무료

TDD Refactor Phase - Improve code while keeping tests green using Simple Design Rules and APP mass

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

marcoemrich/agentic_coding_lab142026년 10월 26일 업데이트

marcoemrich의 스킬 모두 보기

이 스킬의 문제 신고