Skip to content

Releases

0.9.0

Choose a tag to compare

@ADWilkinson ADWilkinson released this 03 Nov 10:04
b6aed17

Lessons from taking a real product through a brand, scale and claims pass: a claims audit in dogfood, workspace at scale and new loading, motion and palette guidance in web-design, and brand scenes in web-graphics. See CHANGELOG.md.

astack 0.8.0

Choose a tag to compare

@ADWilkinson ADWilkinson released this 31 Oct 21:26
76d362d

Measured checks for defects a settled screenshot hides, and a harder rule for launch stills. No library was added.

  • shoot.mjs reads the rendered page and reports inputs under 16px, a viewport that disables zoom, :hover rules outside @media (hover: hover), selectable controls on a narrow viewport, and a missing tap-highlight reset. --shift compares a loading page with the settled page. It exits 1 when a shared region or the document scroll height moved by more than 1px, and exits 2 when no region was marked and the scroll height did not change. It does not read the performance timeline's layout-shift entries: headless Chrome can report none for a jump that has already painted, and a score of 0 would pass that page.
  • web-design states how to build that loading layout, and mobile.md says which of those lines a desktop capture can see. dogfood and astack's completion checks read them before calling a phone journey done.
  • deslop names this season's UI tells with examples (pill tags, italic headline words, dividers, opacity ladders, borders on every box, over-detailed diagrams, decorative breadcrumbs, section numbers). slop-scan.mjs flags section-index and opacity-ramp.
  • launch and web-graphics: a bento, device or clip may frame a real capture. It may not redraw the screen, and it may not show a number the agreed copy file does not contain.
  • New shift-and-still eval fixture, with the planted failures named. The blind comparison was not run. The deterministic shoot.mjs --shift run is recorded in evals/RESULTS.md.

astack 0.7.1

Choose a tag to compare

@ADWilkinson ADWilkinson released this 30 Oct 15:43
db7871c

Keep coupled agent work in one context and load skills as needed. Independent review remains available for risk, judgment and repository requirements. Discovery descriptions are 49.9% shorter, with the routing cues checked in repeated Claude and Codex runs.

Also fixes incomplete routing runs passing silently and preserves explicit delivery targets and existing authority. Required repository checks, package boundaries and release verification remain in place.

Validation: 300/300 final routing cases, repeated release-verification findings retained, eight checkout implementations passing browser checks, native package/installer tests and offline packed-CLI smoke. Execution timing was mixed; no general speedup is claimed.

npm: astack-skills@0.7.1.

astack 0.7.0

Choose a tag to compare

@ADWilkinson ADWilkinson released this 28 Oct 21:15

Review gates and video from LangChain's open-source design agent, Content Studio (Apache-2.0), credited where they are used. Its idea is that the model makes the creative calls and code renders, measures and refuses.

  • New render-gate.mjs in web-design, web-graphics and launch. It renders a page, card or slide at each size as a fresh layout, then fails:

    • a brand face that silently fell back (Chrome reports which font actually painted each run);
    • supplied copy that changed, or a deliberate clamp that cuts required copy;
    • text clipped by its box or cropped by the canvas edge;
    • painted colours and faces outside the DESIGN.md tokens.

    Exit 2 means it could not check and is never a pass.

  • New film.mjs in launch. It renders an HTML composition to MP4 frame by frame: every CSS and Web Animations animation is paused and seeked, so a demo clip is code and every take is identical. It fails:

    • a black or flat opening;
    • a film where nothing moves;
    • clock-driven motion, found by re-seeking frames and comparing them;
    • the wrong size or duration;
    • failed fonts or requests.
  • New web-design review rubric:

    • three gates before scoring (accuracy, the deterministic gates, the ask);
    • six areas scored 1 to 5 with evidence;
    • a ship / fix / rework verdict;
    • a failure-pattern table.

    astack's independent verifier and launch use it for visual work.

  • launch builds share cards with render-gate.mjs and demo clips with film.mjs. A new film reference covers storyboard, animatic, motion, contact sheets and changelog clips from a pull request.

  • web-design anti-patterns gain a section for sets and assets: scaled instead of recomposed, template sameness, silent font fallback, faked weight.

  • New launch-assets comparison eval task. Scored blind: astack 19, baseline 17. Both fixed every planted problem; astack's clip re-rendered bit-identically and its cards stayed on tokens.

  • shoot.mjs, render-gate.mjs and film.mjs now stop Chrome's helper processes along with the browser, so the temporary profile is removed cleanly on Linux instead of failing the run.

astack 0.6.0

Choose a tag to compare

@ADWilkinson ADWilkinson released this 27 Oct 12:05

Motion and mobile craft from Emil Kowalski's skills and animated stickers from fun-isometric by Kelvin Adithya, both MIT and credited where they are used.

  • web-graphics makes animated sticker icons: flat-fill slabs with a thick outline that move on After Effects grade keyframe presets, for onboarding, empty states and rewards. The kit (kit/fun.ts, motions.ts, 24 worked icons, a React <Sticker>) is bundled, recolours from a brand's two colours, and plays live on canvas or exports to alpha webm and HEVC with a poster.
  • New fi.mjs checks, sheets, frames and exports stickers. It is a dependency-free port of the original renderer: types are stripped per file and Chrome is driven over the DevTools protocol, so nothing installs Playwright at run time. Runs on Node 22.13+ or Bun.
  • web-design motion reference rewritten around a decision order: whether it should animate at all (never keyboard or high-frequency actions), ease by what is happening (never ease-in on UI), durations under 300ms, press feedback, origin-aware popovers, interruptible transitions and @starting-style, gesture rules, and a symptom table for janky animation. Reviews come back as a Before / After / Why table.
  • New web-design references: a mobile baseline (tap flash, stuck hover, dvh/svh, input zoom, safe areas, touch-action) and a worst-case data method with a catalogue of plausible values that break layouts.
  • slop-scan.mjs flags transition: all, ease-in on UI, scale(0) entrances, disabled zoom and 100vh app shells.
  • Routing eval gains nine cases for stickers, janky motion, mobile feel and worst-case data.

astack 0.5.0

Choose a tag to compare

@ADWilkinson ADWilkinson released this 26 Oct 22:26

Each skill was reviewed against tstack, pstack, gstack, impeccable, Anthropic's skills and the slop packs, and kept, rewritten or extended accordingly.

  • New oneshot: idea to merged, deployed, verified live and announced. User-invoked only. astack now stops at a review-ready PR.
  • astack copies its stages into the todo list and closes each with proof or a reason, has an explicit grant and a short list of when to ask, and waits on CI instead of stopping.
  • ship classifies CI failures before retrying, treats review comments with scepticism, gets an independent verdict from an agent that didn't write the change, re-checks right before merging and reads the merge back.
  • web-design names the current AI-design defaults (warm cream with serif and terracotta, dark with an acid accent, broadsheet hairlines, template chrome), plans in two passes with a generic test, and scales boldness by mode.
  • slop-scan.mjs detects those defaults and newer prose tells (copula avoidance, trailing -ing clauses, false agency, inflated significance, vague attribution).
  • pr-state.mjs falls back to REST when GitHub's GraphQL limit runs out. pr-state and verify-live now ship inside every skill that uses them.
  • dogfood gains diff-aware mode and red-first, one-commit-per-fix repairs; context anchors in git history and tags threads; delivery-plan skips trivial changes and settles questions by prototype; delivery-update scans for secrets before sending.
  • shoot.mjs works on CI runners (--no-sandbox under CI or root) and reports why Chrome failed to start.
  • Plain-English docs, a personal README, and a cleaner repo.
  • Cut to 11 skills. delivery-plan folds into astack as a planning reference and motion into web-design as a motion reference. delivery-update and automate are gone: a capable model writes a good update or a cron job without them, and oneshot now carries the update step itself.
npx astack-skills@latest install --agent all