Skip to content

Conversation

@taeold
Copy link
Contributor

@taeold taeold commented Nov 13, 2025

Adds support for configuring attemptDeadlineSeconds in scheduled functions. This maps to the attemptDeadline field in Cloud Scheduler jobs, allowing users to increase the timeout for v2 scheduled functions beyond the default 3 minutes.

@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @taeold, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request enhances the functionality of scheduled functions by integrating support for attemptDeadlineSeconds. This change provides greater control over the execution duration of scheduled tasks, directly mapping to Cloud Scheduler's attemptDeadline field. The modifications span across backend interfaces, build processes, and Cloud Scheduler integration, ensuring that the new configuration option is seamlessly handled from definition to deployment.

Highlights

  • New Feature: attemptDeadlineSeconds for Scheduled Functions: This pull request introduces the ability to configure attemptDeadlineSeconds for scheduled functions, allowing users to specify a custom timeout for Cloud Scheduler jobs, extending beyond the default 3 minutes.
  • Backend and Build Interface Updates: The ScheduleTrigger interface in both src/deploy/functions/backend.ts and src/deploy/functions/build.ts has been updated to include the new attemptDeadlineSeconds field. The build process now correctly resolves this value.
  • Cloud Scheduler Job Configuration: The Job interface in src/gcp/cloudscheduler.ts now includes attemptDeadline. The needUpdate logic has been enhanced to detect changes in this field, ensuring that Cloud Scheduler jobs are updated when the attemptDeadline is modified.
  • Parsing attemptDeadlineSeconds from Annotations: The parseTriggers.ts file has been updated to correctly read attemptDeadlineSeconds from function annotations and incorporate it into the scheduled function's configuration.
  • Comprehensive Unit Testing: New unit tests have been added to src/gcp/cloudscheduler.spec.ts to verify the correct mapping of attemptDeadlineSeconds from endpoints to Cloud Scheduler jobs and to confirm that needUpdate accurately identifies changes in the attemptDeadline.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request adds support for attemptDeadlineSeconds in scheduled functions, which is a great enhancement. The changes are well-structured, touching all the necessary files from backend interfaces to Cloud Scheduler job creation logic. The new functionality is also well-tested. I've left one minor suggestion to improve code clarity by removing a redundant line. Overall, this is a solid contribution.

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