Skip to content

LCORE-5254: Add Fullsend Jira integration for LCORE issues - #3088

Open
anik120 wants to merge 1 commit into
lightspeed-core:mainfrom
anik120:fullsend-JIRA-poller
Open

anik120 wants to merge 1 commit into
lightspeed-core:mainfrom
anik120:fullsend-JIRA-poller

Conversation

@anik120

@anik120 anik120 commented Oct 30, 2026 •

Copy link
Copy Markdown
Contributor

Description

After this merges, Fullsend can pick up work straight from the LCORE Jira
board and act on it in this repository, with a human in control of every
handoff.

JIRA -> Fullsend workflow:
Tickets opt into Fullsend assistance by adding the label repo:lightspeed-core/lightspeed-stack.
A cron workflow can be enabled to poll the LCORE board every five minutes,
considering only non-done issues with that label; tickets that do not have that label on
the board is invisible to Fullsend.

Scheduled polling is turned on by setting the GitHub Actions repository
variable FULLSEND_JIRA_POLL_ENABLED=true (repo Settings -> Secrets and
variables -> Actions -> Variables). Until then the schedule is a no-op, but
the workflow can be run manually at any time (Run workflow / workflow_dispatch),
so the integration can be validated before scheduled polling is turned on.

Polling by itself never dispatches an agent. To ask for triage, a human reviewer
adds the ready-to-triage label or comments /fs-triage on the issue; on the
next poll the triage agent reads the issue and posts its assessment back to
Jira. Triage stops there on purpose: automatic triage-to-code handoff is
disabled, so a human decides whether the work should proceed.

To move an issue into implementation, a reviewer adds the ready-to-code label
(the normal, reviewable handoff) or comments /fs-code; the next poll
dispatches the code agent, which does the work and opens a GitHub pull
request. Ordinary Jira edits do nothing, and an already-present label does not
re-fire -- remove and re-add it to retry.

Under the hood, agents authenticate to Vertex AI inference through the
repository's UIE WIF identity (the FULLSEND_GCP_WIF_PROVIDER repo secret, also
recorded in .fullsend/config.yaml) and run on the same tested Fullsend release
(v0.51.0) as the installed shim workflow.

This PR adds the triage and code routing rules as pinned harness overlays.

Type of change

  • Refactor
  • New feature
  • Bug fix
  • CVE fix
  • Optimization
  • Documentation Update
  • Configuration Update
  • Bump-up service version
  • Bump-up dependent library [pyproject.toml + uv.lock]
  • Bump-up dependent library [requirements.*.txt for Konflux]
  • Bump-up library or tool used for development (does not change the final image)
  • CI configuration change
  • Konflux configuration change
  • Unit tests improvement
  • Integration tests improvement
  • End to end tests improvement
  • Benchmarks improvement

Tools used to create PR

Identify any AI code assistants used in this PR (for transparency and review context)

  • Assisted-by: (e.g., Claude, CodeRabbit, Ollama, etc., N/A if not used)
  • Generated by: (e.g., tool name and version; N/A if not used)

Related Tickets & Documents

  • Related Issue #
  • Closes #

Checklist before requesting a review

  • I have performed a self-review of my code.
  • PR has passed all pre-merge test jobs.
  • If it is a core feature, I have added thorough tests.

Testing

  • Please provide detailed steps to perform tests related to this code change.
  • How were the fix/results from this change verified? Please provide relevant screenshots or results.

@coderabbitai

coderabbitai Bot commented Oct 30, 2026 •

Copy link
Copy Markdown
Contributor

Warning

Review limit reached

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Next included review available in 19 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

Learn how review limits work.

Review configuration:

Run configuration
Commits

Reviewing files that changed from the base of the PR and between cb13075 and 997692d.

Files selected for processing: 5
  • .fullsend/config.yaml
  • .fullsend/harness/code.yaml
  • .fullsend/harness/retro.yaml
  • .fullsend/harness/triage.yaml
  • .github/workflows/fullsend-poll-jira.yml
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

After this merges, Fullsend can pick up work straight from the LCORE Jira
board and act on it in this repository, with a human in control of every
handoff.

JIRA -> Fullsend workflow:
Tickets opt into Fullsend assistance by adding the label
`repo:lightspeed-core/lightspeed-stack`. A cron workflow can be enabled to
poll the LCORE board every five minutes, considering only non-done issues
with that label; tickets without that label are invisible to Fullsend.

Scheduled polling is turned on by setting the GitHub Actions repository
variable `FULLSEND_JIRA_POLL_ENABLED=true` (repo Settings -> Secrets and
variables -> Actions -> Variables). Until then the schedule is a no-op, but
the workflow can be run manually at any time (Run workflow / workflow_dispatch),
so the integration can be validated before scheduled polling is turned on.

Polling by itself never dispatches an agent. To ask for triage, a human
reviewer adds the `ready-to-triage` label or comments `/fs-triage` on the
issue; on the next poll the triage agent reads the issue and posts its
assessment back to Jira. Triage stops there on purpose: automatic
triage-to-code handoff is disabled, so a human decides whether the work
should proceed.

To move an issue into implementation, a reviewer adds the `ready-to-code`
label (the normal, reviewable handoff) or comments `/fs-code`; the next poll
dispatches the code agent, which does the work and opens a GitHub pull
request. Ordinary Jira edits do nothing, and an already-present label does
not re-fire -- remove and re-add it to retry.

Under the hood, agents authenticate to Vertex AI inference through the
repository's UIE WIF identity (the `FULLSEND_GCP_WIF_PROVIDER` repo secret,
also recorded in .fullsend/config.yaml) and run on the same tested Fullsend
release (v0.51.0) as the installed shim workflow.

This PR adds the triage and code routing rules as pinned harness overlays.

Signed-off-by: Anik Bhattacharjee <anbhatta@redhat.com>
@anik120
anik120 force-pushed the fullsend-JIRA-poller branch from 4b3046d to 997692d Compare October 30, 2026 21:02

This branch has not been deployed

No deployments
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.

1 participant