| name | Code Conventions |
|---|---|
| description | Copilot – coding conventions and where to change things |
- Use logger:
logInfo,logError,logDebugInfofromsrc/utils/logger. No ad-hocconsole.log. - Use constants:
INPUT_KEYSandACTIONSfromsrc/utils/constants.tsfor input names and action names. No hardcoded strings for these.
action.yml: Add the input withdescriptionanddefault(if any).src/utils/constants.ts: Add the key toINPUT_KEYS(e.g.NEW_INPUT: 'new-input').src/actions/github_action.ts: Read the input (e.g.core.getInput(INPUT_KEYS.NEW_INPUT)) and pass it into the object used to buildExecution.- Optional: If the CLI must support it, add to
local_action.tsand the corresponding CLI option.
- PR description (template filling, AI content):
src/manager/description/(configuration_handler, content interfaces). - Hotfix/release changelog (markdown extraction, formatting):
src/manager/description/markdown_content_hotfix_handler.ts.
- The project uses
@vercel/nccto bundle the action and CLI. Keep imports and dependencies compatible with ncc (no dynamic requires that ncc cannot see). - Do not edit or rely on
build/; it is generated. Run tests and lint only onsrc/.
- Prefer TypeScript; avoid
any(lint rule: no-explicit-any). - Run
npm run lintbefore committing; usenpm run lint:fixwhen possible.