Skip to content

ci: add CI pipeline, npm publish workflow, and release tooling#13

Merged
jrusso1020 merged 2 commits intomainfrom
03-23-ci_add_tag-triggered_npm_publish_workflow_with_oidc_provenance
Mar 23, 2026
Merged

ci: add CI pipeline, npm publish workflow, and release tooling#13
jrusso1020 merged 2 commits intomainfrom
03-23-ci_add_tag-triggered_npm_publish_workflow_with_oidc_provenance

Conversation

@jrusso1020
Copy link
Copy Markdown
Collaborator

What

Lands the CI/CD stack onto main. PRs #10 and #11 merged into their parent branches but were never retargeted to main.

This contains:

  • CI workflow (build, typecheck, tests, semantic PR title)
  • npm publish workflow (OIDC Trusted Publishing with provenance)
  • set-version script and updated CONTRIBUTING.md with release docs

Previously reviewed and approved in #10 and #11.

Test plan

@jrusso1020 jrusso1020 force-pushed the 03-23-ci_add_tag-triggered_npm_publish_workflow_with_oidc_provenance branch from 5a74209 to 3069095 Compare March 23, 2026 03:20
@jrusso1020 jrusso1020 merged commit f0cf083 into main Mar 23, 2026
7 checks passed
@jrusso1020 jrusso1020 deleted the 03-23-ci_add_tag-triggered_npm_publish_workflow_with_oidc_provenance branch March 23, 2026 03:23
miguel-heygen added a commit that referenced this pull request Apr 7, 2026
## Summary

Adds critical rendering constraints to the `hyperframes` skill discovered from eval analysis of 27 agent-generated compositions. These guardrails prevent agents from producing compositions that technically work but render poorly.

## What it fixes

| Rule Added | Eval Prompts Affected | Issue |
| --- | --- | --- |
| Ban `repeat: -1` | #20 loading-spinner (2.0/5) | Infinite timeline broke capture engine |
| Ban async timeline construction | #16 particle-logo (2.6/5) | Timeline empty at capture time |
| Min font size 16px (labels), 20px (body) | #7, #8, #13, #14, #15, #19 | Illegible text after encoding |
| Ban full-screen dark linear gradients | #3, #5, #10, #14 | H.264 color banding |
| `<link>` fonts over CSS `@import` | #7, #24 | Font loading race conditions |

## Changes

- **Rules section**: Added `repeat: -1` ban, async timeline ban, items 8-9 to "Never do" list
- **Typography section**: Expanded font size guidance with specific minimums per text role (headlines, body, labels)
- **New "Backgrounds and Color" section**: Guidance on avoiding gradient banding
- **Output Checklist**: 5 new items covering all new constraints

## Test plan

- [ ] Run eval with updated skill and compare avg quality scores
- [x] Skill renders correctly in `/hyperframes` invocation
vanceingalls added a commit that referenced this pull request Apr 16, 2026
Blockers:
- #2: late_init_set false positive on fractional opacity (0.5 matched as 0)
  Fixed: /opacity\s*:\s*0(?![.\d])/ negative lookahead
- #3: scene-1 prefix skip matches scene 10+ (s1- matches s10-)
  Fixed: extract full number and compare exactly

High severity:
- #4: autoAlpha not covered by late_init_set
  Fixed: checks both opacity and autoAlpha
- #5: al() crashes on non-hex colors (#fff shorthand, rgb(), null)
  Fixed: guard + shorthand expansion + NaN fallback
- #6: "Full palette" with null bg crashes isDark
  Fixed: null guard defaults to dark
- #7: template literals missed by tl_from_in_multiscene
  Fixed: regex includes backtick quotes

Medium:
- #9: no retry limit on eval failures → infinite loop
  Fixed: max 2 retries, then escalate to user
- #10: vague ID convention
  Fixed: explicit s{N}- prefix rule in multi-scene.md
- #11: visual-style.md backward compat
  Fixed: Step 0b checks both filenames
- #13: preview_html script injection
  Fixed: documented prohibition in design-picker.md

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant