Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
71 commits
Select commit Hold shift + click to select a range
f954a79
init: cleaning of template repository
Mehdi-SK May 22, 2026
632b10d
feat(payload): Add standard payload type that will be the output of t…
Mehdi-SK May 22, 2026
9ce4828
feat(package): update package.json for contribution-harvester setup
Mehdi-SK May 25, 2026
a574e84
feat(types): add types for push and pull request event payloads
Mehdi-SK May 25, 2026
4a2773a
refactor(types): update developer_identifier to allow null and rename…
Mehdi-SK May 25, 2026
614230a
feat(strategy): add IEventProcessorStrategy interface for event handling
Mehdi-SK May 25, 2026
0613589
feat(strategy): implement PushStrategy for handling push events
Mehdi-SK May 25, 2026
8218d6a
feat(pull-request): implement PRStrategy and PRMergedEventHandler cla…
Mehdi-SK May 25, 2026
bbf06b7
feat(pull-request): add creditAuthors and creditReviewers functions
Mehdi-SK May 25, 2026
dcdbafc
feat(main): implement run function to process GitHub events
Mehdi-SK May 25, 2026
11746f6
feat(client): implement IExternalClient interface and ApicuronClient …
Mehdi-SK May 25, 2026
2be4ed6
fix: Add node types and rootDir to tsconfig.
Mehdi-SK Jun 23, 2026
4267224
feat: Add jest commands for qucik running with vscode
Mehdi-SK Jun 23, 2026
3596f5b
feat: Add centralized logging mechanism
Mehdi-SK Jun 23, 2026
6e1801c
feat(gh-client): Add GH client to extract PR reviews.
Mehdi-SK Jun 23, 2026
132c10b
refactor: Rename types and files to better communicate their use
Mehdi-SK Jun 23, 2026
5d23f13
feat: Add stricter types and type construction for the payload output…
Mehdi-SK Jun 23, 2026
e817a54
refactor: Change to specific required params in getPullRequestReviwers
Mehdi-SK Jun 24, 2026
01503e9
feat: add pull request reviewer extraction and migrate event processi…
Mehdi-SK Jun 24, 2026
ea52cd7
refactor: rename action and update authentication to use github-token…
Mehdi-SK Jun 24, 2026
0467a82
fix: add await to process call in run()
Mehdi-SK Jun 24, 2026
24c4e03
build
Mehdi-SK Jun 24, 2026
1376957
fix: add logs
Mehdi-SK Jun 24, 2026
10059e5
fix: Add debug logs and add PR merge handler to PR strategy handlers.
Mehdi-SK Jun 24, 2026
8567aae
feat: add debug logging for pull request reviewer extraction
Mehdi-SK Jun 24, 2026
c80d80c
feat(script): add send_prs.py to fetch and send closed PRs to server
Mehdi-SK Sep 21, 2026
1c9d020
refactor(tests): remove obsolete test files for wait and main modules
Mehdi-SK Sep 24, 2026
ab1cd2c
refactor: change github_login type from string | null to string, stre…
Mehdi-SK Sep 24, 2026
4470414
refactor(main): restructure error handling in run function
Mehdi-SK Sep 24, 2026
4010db9
fix(dependencies): add @actions/github and chalk properly to the acti…
Mehdi-SK Sep 24, 2026
8ff20a2
fix(dependencies): add @typescript-eslint/parser and related packages.
Mehdi-SK Sep 24, 2026
38df4f2
refactor(github-client): paginate PR reviews to handle large datasets
Mehdi-SK Sep 24, 2026
707d977
refactor(workflows): switch from npm to yarn for dependency management
Mehdi-SK Sep 24, 2026
c3ddefb
fix: linting errors
Mehdi-SK Sep 24, 2026
2077fca
refactor(client): remove unused parameters from sendPayload and extra…
Mehdi-SK Sep 24, 2026
64d53e6
feat(workflow): add contribution tracking workflow example for PRs
Mehdi-SK Sep 29, 2026
8c5f664
feat(types): add standardised event payload types
Mehdi-SK Sep 29, 2026
a9e1118
feat(scripts): add schema generation scripts for event types
Mehdi-SK Sep 30, 2026
17923d2
feat(schemas): add JSON schemas for pull request and tracker events
Mehdi-SK Sep 30, 2026
2569759
feat(schemas): add initial GitHub data schemas for pull requests
Mehdi-SK Sep 30, 2026
57682ef
feat(types): add GitHub snapshot types for users, repositories, and PRs
Mehdi-SK Oct 2, 2026
0340136
refactor(github-client): refactor GitHubClient to use instance methods
Mehdi-SK Oct 2, 2026
5612c55
feat(github-client): enhance getClosingIssues to use TClosingIssueNod…
Mehdi-SK Oct 2, 2026
a13affb
feat(pull-request): add fetchPullRequestSnapshot to retrieve PR data
Mehdi-SK Oct 2, 2026
93d4509
feat(event-id): add buildEventId function to generate unique event IDs
Mehdi-SK Oct 2, 2026
5d1e051
feat(pull-request): implement buildPullRequestEvent to track PR activ…
Mehdi-SK Oct 2, 2026
879c9a1
feat(capture-info): add captureInfo function to track event details
Mehdi-SK Oct 2, 2026
3d484d1
refactor(processors): moved new processor structure and remove old im…
Mehdi-SK Oct 2, 2026
89cc3f2
feat(pr-merged): implement PRMergedEventHandler to process merged PRs
Mehdi-SK Oct 2, 2026
d11d6f8
refactor(main): reorganize imports and handle trackedEvents as array
Mehdi-SK Oct 2, 2026
5d813ec
feat(backfill): add script to backfill closed PR events to JSONL file
Mehdi-SK Oct 2, 2026
fb680ca
chore(package): update tsx to version 4.23.15 and add backfill script
Mehdi-SK Oct 2, 2026
d8cca9c
feat(pull-request): add review_object_id to pull request activities
Mehdi-SK Oct 2, 2026
bc9f80b
refactor(pull-request): remove unused PRMergedEventHandler and review…
Mehdi-SK Oct 2, 2026
38bc8b2
feat(version): update version to 0.3.1 and add review_object_id to PR…
Mehdi-SK Oct 2, 2026
c688589
feat(apicuron-client): implement event sending methods and error hand…
Mehdi-SK Oct 8, 2026
3a46b8d
feat(action): add apicuron inputs for API integration and dry-run option
Mehdi-SK Oct 8, 2026
5d342f9
refactor(main): streamline event processing and add dry-run validation
Mehdi-SK Oct 8, 2026
2d05c39
feat(backfill): add support for APICURON event batching and configura…
Mehdi-SK Oct 8, 2026
92babc6
refactor(backfill): enhance mergedPullRequestEvents to track skipped …
Mehdi-SK Oct 8, 2026
a70f1e9
build
Mehdi-SK Oct 8, 2026
99fd7e3
style: apply prettier formatting and resolve lint errors
Mehdi-SK Oct 8, 2026
217c5bf
fix(processors): register PRMergedEventHandler in PRStrategy
Mehdi-SK Oct 8, 2026
0ee8d73
fix(action): restore github-token input and run CI self-test in dry-run
Mehdi-SK Oct 8, 2026
7836357
refactor: remove old prototype payload types and script
Mehdi-SK Oct 8, 2026
522fddd
chore: replace template metadata and drop template leftovers
Mehdi-SK Oct 8, 2026
256c9dc
docs(code): document determinism and pull_request_target invariants
Mehdi-SK Oct 8, 2026
136c174
docs: write README and update example workflow
Mehdi-SK Oct 8, 2026
f1ee53f
test(pull-request): add tests for buildPullRequestEvent function
Mehdi-SK Oct 8, 2026
533d645
feat(snapshot): add pull request snapshot and related utilities
Mehdi-SK Oct 8, 2026
cf6a0f1
build: V1 build
Mehdi-SK Oct 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "GitHub Actions (TypeScript)",
"image": "mcr.microsoft.com/devcontainers/typescript-node:20",
"image": "mcr.microsoft.com/devcontainers/typescript-node:24",
"postCreateCommand": "yarn install",
"customizations": {
"codespaces": {
Expand Down
11 changes: 10 additions & 1 deletion .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,9 @@ ACTIONS_STEP_DEBUG=true

# GitHub Actions inputs should follow `INPUT_<name>` format (case-sensitive).
# Hyphens should not be converted to underscores!
INPUT_MILLISECONDS=2400
INPUT_github-token=...
INPUT_apicuron-token=...
INPUT_dry-run=true

# GitHub Actions default environment variables. These are set for every run of a
# workflow and can be used in your actions. Setting the value here will override
Expand Down Expand Up @@ -59,3 +61,10 @@ INPUT_MILLISECONDS=2400
# RUNNER_OS=""
# RUNNER_TEMP=""
# RUNNER_TOOL_CACHE=""


# Backfill script configuration. These are used by the `backfill.ts` script to
# fetch events from GitHub and send them to APICURON.
GITHUB_TOKEN=...
APICURON_TOKEN=...
# APICURON_URL=http://localhost:<port> # override for local testing
130 changes: 0 additions & 130 deletions .github/copilot-instructions.md

This file was deleted.

34 changes: 0 additions & 34 deletions .github/prompts/create-release-notes.prompt.md

This file was deleted.

84 changes: 0 additions & 84 deletions .github/prompts/unit-test.prompt.md

This file was deleted.

8 changes: 4 additions & 4 deletions .github/workflows/check-dist.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,19 +35,19 @@ jobs:
uses: actions/setup-node@v6
with:
node-version-file: .node-version
cache: npm
cache: yarn

- name: Remove dist/ Directory
id: remove-dist
run: npx rimraf ./dist
run: rm -rf ./dist

- name: Install Dependencies
id: install
run: npm ci
run: yarn install --frozen-lockfile

- name: Build dist/ Directory
id: build
run: npm run bundle
run: yarn bundle

# This will fail the workflow if the `dist/` directory is different than
# expected.
Expand Down
25 changes: 11 additions & 14 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,23 +26,23 @@ jobs:
uses: actions/setup-node@v6
with:
node-version-file: .node-version
cache: npm
cache: yarn

- name: Install Dependencies
id: npm-ci
run: npm ci
id: install
run: yarn install --frozen-lockfile

- name: Check Format
id: npm-format-check
run: npm run format:check
id: format-check
run: yarn format:check

- name: Lint
id: npm-lint
run: npm run lint
id: lint
run: yarn lint

- name: Test
id: npm-ci-test
run: npm run ci-test
id: test
run: yarn ci-test

test-action:
name: GitHub Actions Test
Expand All @@ -57,8 +57,5 @@ jobs:
id: test-action
uses: ./
with:
milliseconds: 2000

- name: Print Output
id: output
run: echo "${{ steps.test-action.outputs.time }}"
github-token: ${{ secrets.GITHUB_TOKEN }}
dry-run: true
Loading
Loading