Bootstrap heal-trigger as a production-ready GitHub Action in TypeScript#1
Merged
Bootstrap heal-trigger as a production-ready GitHub Action in TypeScript#1
Conversation
…flows Co-authored-by: wbeuil <8110579+wbeuil@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Create new GitHub Action repository structure in JavaScript
Bootstrap heal-trigger as a production-ready GitHub Action
Feb 25, 2026
Contributor
|
Update this PR to convert the entire codebase from JavaScript to TypeScript: Changes RequiredSource Files
Tests
TypeScript Config
Build Pipeline
Package Updates
CI Workflow
What NOT to Change
Convert all files and ensure everything builds and passes cleanly. |
Co-authored-by: wbeuil <8110579+wbeuil@users.noreply.github.com>
Contributor
Author
Done in commit 5c3a1af. Here's what changed:
All checks pass: |
Copilot
AI
changed the title
Bootstrap heal-trigger as a production-ready GitHub Action
Bootstrap heal-trigger as a production-ready GitHub Action in TypeScript
Feb 25, 2026
Replace the hello-world scaffold with the real Heal.dev CI action. - POST to /api/v1/executions/trigger on backend.heal.dev (overridable via backend-url input) - Inputs: api-token (required), team, feature, test-case (optional glob filters), backend-url - Glob filters converted to POSIX regex compatible with PostgreSQL ~* operator - Outputs the healExecutionUrl returned by the API - Add src/types.ts with TriggerExecutionRequest and ExternalExecutionTriggeredResponse - Drop @actions/github dependency (unused) - Add lefthook pre-commit hook (lint, format:check, typecheck, test) - Update README with usage, filter examples, and correct inputs/outputs Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
PierreOucif
previously approved these changes
Feb 25, 2026
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
PierreOucif
approved these changes
Feb 25, 2026
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implements the
heal-dev/heal-triggerGitHub Action: triggers a Heal.dev test execution via the backend API and surfaces the execution URL in the workflow run.Action
action.yml— inputs:api-token(required),team,feature,test-case,backend-url(default:https://backend.heal.dev); output:url;node24runner, purple/zap brandingsrc/index.ts— asyncrun()POSTs to/api/v1/executions/triggerwith a Bearer token; builds filter body from optional inputs; logs and outputshealExecutionUrlfrom the response; all errors routed throughcore.setFailed()src/utils.ts—globToRegex()converts glob patterns (*nance,*login*) to POSIX regex strings compatible with PostgreSQL's~*operator used by the backendsrc/types.ts—TriggerExecutionRequestandExternalExecutionTriggeredResponsetyped from the OpenAPI specdist/index.js— pre-built bundle committed to repo (ncc compiles TypeScript directly; no install required at action runtime)Tooling
typescript,@types/node) — strict, node24 targetpackage.jsonscripts:test,lint,lint:fix,format,format:check,typecheck,buildCI/CD
ci.yml— runs on push/PR:npm ci→ oxlint → oxfmt--check→ typecheck → vitest → ncc build → git diff guard ondist/to catch uncommitted bundle changes; concurrency group cancels in-progress runsrelease.yml— triggered onv*tags: builds dist, creates GitHub Release with auto-generated notes, force-updates floating major tag (e.g.v1)Usage