smartcontractkit / smartcontractkit/cre-sdk-typescript

Workflow not triggering on Sepolia despite event emission

Open
#153 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
6
Forks
9
Avg merge
5h 23m
Merged PRs (30d)
6

Description

I deployed my CRE workflow on Sepolia using @chainlink/cre-sdk and the CRE CLI. The workflow simulates and deploys fine, but when I emit an event from the source contract, the workflow does not trigger.

Environment

  • SDK: @chainlink/cre-sdk v1.0.1
  • CLI: cre-cli v1.0.3
  • Node.js: v24.12.0
  • OS: macOS (corporate network with SSL interception)
  • RPC: Infura Sepolia (https://sepolia.infura.io/v3/)

Workflow Config

main.ts:

import { cre, getNetwork, type Runtime, type EVMLog, Runner, bytesToHex } from "@chainlink/cre-sdk";

type Config = {
  chainSelectorName: string;
  contractAddress: string;
};

const onLogTrigger = (runtime: Runtime<Config>, log: EVMLog): string => {
  runtime.log(`Log detected from ${bytesToHex(log.address)}`);
  return "Log processed";
};

const initWorkflow = (config: Config) => {
  const network = getNetwork({
    chainFamily: "evm",
    chainSelectorName: config.chainSelectorName,
    isTestnet: true,
  });

  if (!network) throw new Error(`Network not found: ${config.chainSelectorName}`);

  const evmClient = new cre.capabilities.EVMClient(network.chainSelector.selector);

  return [
    cre.handler(
      evmClient.logTrigger({ addresses: [config.contractAddress] }),
      onLogTrigger
    ),
  ];
};

export async function main() {
  const runner = await Runner.newRunner<Config>();
  await runner.run(initWorkflow);
}

main();

config.staging.json:

{
  "chainSelectorName": "ethereum-testnet-sepolia",
  "contractAddress": "0xc5f53Be8f5d5Ac8Dc01346A5bffe35d75b2f8e5c"
}

workflow.yaml

staging-settings:
  user-workflow:
    workflow-name: "dtcc-workflow-staging"
  workflow-artifacts:
    workflow-path: "./main.ts"
    config-path: "./config.staging.json"
    secrets-path: ""

project.yaml

staging-settings:
  rpcs:
    - chain-name: ethereum-testnet-sepolia
      url: https://sepolia.infura.io/v3/<your-key>
    - chain-name: ethereum-mainnet
      url: https://mainnet.infura.io/v3/<your-key>

Transaction that should trigger
Sepolia tx hash

0xc03fed96df0fc2bbe585f716f935a872a09df465f95bd4a8abdd35563fcc4e4c

Observed Behavior
Workflow starts successfully.
Event emitted from contract (confirmed on-chain).
Workflow does not trigger.

Expected Behavior
Workflow should detect the log and run onLogTrigger.

Notes

  • Workflow deploys and starts successfully on Sepolia using @chainlink/cre-sdk v1.0.1 and cre-cli v1.0.3.
  • CRON triggers are working as expected.
  • EVM Log Trigger does not fire when an event is emitted from the source contract.
  • Verified the event exists on-chain (tx: 0xc03fed96df0fc2bbe585f716f935a872a09df465f95bd4a8abdd35563fcc4e4c).
  • No error logs from the CRE runner after startup.
  • Corporate network uses SSL interception; NODE_EXTRA_CA_CERTS is set for RPC calls.
  • Workflow config and contract address match deployment.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with main.ts and the staging workflow, project, and config files to verify the EVM log trigger, chain selector, RPC, and contract address. Reproduce with the Sepolia transaction 0xc03fed96df0fc2bbe585f716f935a872a09df465f95bd4a8abdd35563fcc4e4c and inspect runner output alongside the working CRON trigger. Done means an emitted contract event invokes onLogTrigger on Sepolia.

Written by the indexing model from the issue text.

Assessment

Tech stack
node.js, typescript
Domain
blockchain
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.