Skip to content

Remove Webhook - #22617

Merged
RensR merged 9 commits into
developfrom
rm-webhook
Jun 1, 2026
Merged

RensR merged 9 commits into
developfrom
rm-webhook

Conversation

@RensR

@RensR RensR commented May 22, 2026

Copy link
Copy Markdown
Contributor

This PR removes the Webhook job, but keeps the db tables and the UI elements, but removes all webhook job logic.

@github-actions

github-actions Bot commented May 22, 2026 •

Copy link
Copy Markdown
Contributor

CORA - Pending Reviewers

All codeowners have approved! ✅

Legend: ✅ Approved | ❌ Changes Requested | 💬 Commented | 🚫 Dismissed | ⏳ Pending | ❓ Unknown

For more details, see the full review summary.

@github-actions

github-actions Bot commented May 22, 2026 •

Copy link
Copy Markdown
Contributor

✅ No conflicts with other open PRs targeting develop

@trunk-io

trunk-io Bot commented May 22, 2026 •

Copy link
Copy Markdown

Static Badge   Static Badge   Static Badge   Static Badge

View Full Report ↗︎ ⋅ Docs

@RensR
RensR force-pushed the rm-webhook branch 2 times, most recently from b3c06ab to 7b2e580 Compare May 28, 2026 14:45
cltest.AssertServerResponse(t, resp, http.StatusOK)
}

type OperatorContracts struct {

@RensR RensR May 28, 2026 •

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some tests in this file have been moved to core/services/pipeline/eth_tx_integration_test.go, but without relying on the jobspecs that we're slowly removing. This means we can keep stable tests even if we mess around with jobs. This is the most significant change in this PR that's not directly removing webhook.

Should also fix quarantine.Flaky(t, "DX-1767")

the internal feature tests are better places at the pipeline level for these specific ones.
@RensR
RensR marked this pull request as ready for review May 29, 2026 08:07
Copilot AI review requested due to automatic review settings May 29, 2026 08:07
@RensR
RensR requested review from a team as code owners May 29, 2026 08:07
@RensR
RensR requested review from carte7000 and winder May 29, 2026 08:07

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Removes the runtime Webhook job type: deletes the entire core/services/webhook package (validator, delegate, in-memory runner, EI manager, authorizer, mocks, tests), wires job.Webhook to job.DeprecatedDelegate, and adds rejection paths at the ORM, REST controller, and GraphQL mutation. DB tables, persisted models, presenters, and GraphQL spec resolvers are retained so existing rows remain readable/deletable.

Changes:

  • Delete core/services/webhook package and all references (Application.GetExternalInitiatorManager, RunWebhookJobV2, webhookJobRunner, ExternalInitiatorManager opt, EI manager construction in cmd/shell.go, mockery entries, cltest helpers/integration tests).
  • Reject webhook job creation in JobsController.validateJobSpec, GraphQL CreateJob, and job.ORM.CreateJob; reject UUID-based runs in PipelineRunsController.Create; simplify RunJobPayloadResolver accordingly.
  • Update tests and testspecs.WebhookSpecParams to use a local TOML type, replace EI/webhook integration tests with rejection-focused tests, and add a new async ethtx integration test under core/services/pipeline (separate cron-based coverage that previously relied on webhook).

Reviewed changes

Copilot reviewed 33 out of 34 changed files in this pull request and generated 9 comments.

Show a summary per file
File Description
docs/CONFIG.md, core/config/docs/core.toml Reword ExternalInitiatorsEnabled doc to mention legacy webhook context.
deployment/utils/nodetestutils/node.go Drop ExternalInitiatorManager from ApplicationOpts.
core/web/resolver/mutation.go, job_run.go, job_run_test.go, resolver_test.go GraphQL: reject webhook creation, simplify RunJobPayload, remove webhook mocks/tests.
core/web/pipeline_runs_controller{,_test}.go Reject UUID job runs; replace happy-path tests with rejection tests.
core/web/jobs_controller{,_test}.go Reject webhook in validateJobSpec; assert 422.
core/testdata/testspecs/v2_specs.go Move TOMLWebhookSpecExternalInitiator locally.
core/services/webhook/** Entire package deleted (delegate, validator, EI manager, authorizer, mocks, tests).
core/services/pipeline/eth_tx_integration_test.go New cron-based async ethtx integration test replacing webhook-driven version.
core/services/job/{orm,job_orm_test,runner_integration_test}.go ORM rejects webhook creation; tests reworked accordingly.
core/services/chainlink/application.go Drop EI manager/runner wiring; use DeprecatedDelegate for webhook.
core/internal/mocks/application.go Remove GetExternalInitiatorManager/RunWebhookJobV2 mocks.
core/internal/features/features_test.go Remove webhook EI integration and related helpers.
core/internal/cltest/{cltest,job_factories}.go Remove EI manager plumbing/helpers; add optional UUID arg to MustInsertWebhookSpec; add CreateJobRunViaUserByID.
core/cmd/shell.go Drop EI manager construction.
.mockery.yaml Remove webhook interface mocks.
.changeset/fuzzy-falcons-thank.md Changeset entry.
Files not reviewed (1)
  • core/internal/mocks/application.go: Language not supported

Comment thread core/services/chainlink/application.go Resolved
Comment thread core/services/chainlink/application.go Resolved
Comment thread core/services/chainlink/application.go Resolved
Comment thread core/cmd/shell.go Resolved
Comment thread core/internal/cltest/cltest.go Resolved
Comment thread .changeset/fuzzy-falcons-thank.md Resolved
Comment thread docs/CONFIG.md Resolved
Comment thread core/config/docs/core.toml Resolved
pavel-raykov
pavel-raykov previously approved these changes May 29, 2026
pavel-raykov
pavel-raykov previously approved these changes May 29, 2026
@cl-sonarqube-production

Copy link
Copy Markdown

Quality Gate failed Quality Gate failed

Failed conditions
19.38% Technical Debt Ratio on New Code (required ≤ 4%)
C Maintainability Rating on New Code (required ≥ A)

See analysis details on SonarQube

Catch issues before they fail your Quality Gate with our IDE extension SonarQube IDE SonarQube IDE

@RensR RensR changed the title [WIP] Remove Webhook Remove Webhook Jun 1, 2026
@RensR
RensR added this pull request to the merge queue Jun 1, 2026
Merged via the queue into develop with commit 1cb63f7 Jun 1, 2026
315 of 320 checks passed
@RensR
RensR deleted the rm-webhook branch June 1, 2026 12:44
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.

4 participants