Skip to content

Comments

feat: add shared runner metadata and centralize runner detection#41

Open
Ishita-190 wants to merge 1 commit intometacall:masterfrom
Ishita-190:Ishita
Open

feat: add shared runner metadata and centralize runner detection#41
Ishita-190 wants to merge 1 commit intometacall:masterfrom
Ishita-190:Ishita

Conversation

@Ishita-190
Copy link

@Ishita-190 Ishita-190 commented Feb 20, 2026

Fixes: #40

Files changed: language.ts, package.ts, package.spec.ts
In language.ts:

  • Runner union
  • RunnerInfo interface
  • Runners map (file patterns, install commands, display name, language mapping)
  • detectRunnersFromFiles(files) helper

In package.ts:

  • findRunners now uses shared detection from language metadata

In package.spec.ts:

  • Coverage for detectRunnersFromFiles

Checklist:

  • npm test
  • npm run lint
  • npx tsc --noEmit

All tests are working properly:

image

Note: findRunners now returns Set<Runner> instead of Set<string>. Runtime behavior is unchanged.

I'll have to modify the following files in https://github.com/metacall/faas to move runner logic to protocol:

  • package.json– bump protocol dependencies
  • src/install.ts – remove duplicated runner definitions and use protocol instead
  • src/app.ts – update runner typing from string[] to runner[]
  • src/repository.ts – use protocol runner detection
  • src/package.ts – validate and parse runners using protocol types

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.

enhancement: add canonical runner metadata and detection helpers

1 participant