Project Task Stage Auto State

project_task_stage_auto_state
REPOSITORY
REPOSITORYOCA/project
GIT
GIThttps://github.com/OCA/project.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/project/tree/19.0/project_task_stage_auto_state
VERSION
VERSION 1.0.1
CATEGORY
CATEGORYProductivity/Project
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Moduon
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Moduon
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, oca-ci, Eduardo de Miguel
WEBSITE
WEBSITEhttps://github.com/OCA/project
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:40:48
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - project
    - analytic
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - html_editor
    - uom
    - portal
    - http_routing
    - auth_signup
    - rating
    - resource
    - digest
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES freezegun
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
Automatically change task state (done or canceled) after they remain in a stage for a
configured number of days.

Key features:

- Configure auto-done days per stage with states that you want to apply.
- Configure auto-cancel days per stage with states that you want to apply.
- Automatic message posted in task chatter
- Daily scheduled action to process tasks
- Only open tasks are processed (closed states are ignored)

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
project_task_type_form_view_inherit project.task.type.form.inherit.auto.state project.task.type xpath Inherits project.task_type_edit
project_task_type_tree_view_inherit project.task.type.tree.inherit.auto.state project.task.type xpath Inherits project.task_type_tree
Models touched (2)

New fields (0)

No new fields.

Public methods (1)
  • auto_change_task_state_by_stage(self)
    Auto-change task states based on stage configuration. This method is called by a scheduled action (cron) to automatically change task states when they have been in a stage for the configured number of days. Auto-done is processed first, then auto-cancel. If both apply to the same task, auto-done takes precedence.

New fields (10)
  • allow_cancel_from_approved Boolean
    default=False string='Allow Cancel from Approved'
  • allow_cancel_from_changes_requested Boolean
    default=False string='Allow Cancel from Changes Requested'
  • allow_cancel_from_in_progress Boolean
    default=False string='Allow Cancel from In Progress'
  • allow_cancel_from_waiting Boolean
    default=False string='Allow Cancel from Waiting'
  • allow_done_from_approved Boolean
    default=False string='Allow Done from Approved'
  • allow_done_from_changes_requested Boolean
    default=False string='Allow Done from Changes Requested'
  • allow_done_from_in_progress Boolean
    default=False string='Allow Done from In Progress'
  • allow_done_from_waiting Boolean
    default=False string='Allow Done from Waiting'
  • auto_cancel_days Integer
    default=0 help='Automatically cancel tasks after staying in this stage for the specified number of days. Set to 0 to disable this feature.' string='Auto-cancel after days'
  • auto_done_days Integer
    default=0 help='Automatically mark tasks as done after staying in this stage for the specified number of days. Set to 0 to disable this feature.' string='Auto-mark as done after days'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/project
GIT
GIThttps://github.com/OCA/project.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/project/tree/18.0/project_task_stage_auto_state
VERSION
VERSION 1.0.1
CATEGORY
CATEGORYProductivity/Project
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Moduon
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Moduon
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, oca-ci, Eduardo de Miguel
WEBSITE
WEBSITEhttps://github.com/OCA/project
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:30:13
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - project
    - analytic
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - html_editor
    - uom
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - rating
    - resource
    - digest
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES freezegun
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
Automatically change task state (done or canceled) after they remain in a stage for a
configured number of days.

Key features:

- Configure auto-done days per stage with states that you want to apply.
- Configure auto-cancel days per stage with states that you want to apply.
- Automatic message posted in task chatter
- Daily scheduled action to process tasks
- Only open tasks are processed (closed states are ignored)

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
project_task_type_form_view_inherit project.task.type.form.inherit.auto.state project.task.type xpath Inherits project.task_type_edit
project_task_type_tree_view_inherit project.task.type.tree.inherit.auto.state project.task.type xpath Inherits project.task_type_tree
Models touched (2)

New fields (0)

No new fields.

Public methods (1)
  • auto_change_task_state_by_stage(self)
    Auto-change task states based on stage configuration. This method is called by a scheduled action (cron) to automatically change task states when they have been in a stage for the configured number of days. Auto-done is processed first, then auto-cancel. If both apply to the same task, auto-done takes precedence.

New fields (10)
  • allow_cancel_from_approved Boolean
    default=False string='Allow Cancel from Approved'
  • allow_cancel_from_changes_requested Boolean
    default=False string='Allow Cancel from Changes Requested'
  • allow_cancel_from_in_progress Boolean
    default=False string='Allow Cancel from In Progress'
  • allow_cancel_from_waiting Boolean
    default=False string='Allow Cancel from Waiting'
  • allow_done_from_approved Boolean
    default=False string='Allow Done from Approved'
  • allow_done_from_changes_requested Boolean
    default=False string='Allow Done from Changes Requested'
  • allow_done_from_in_progress Boolean
    default=False string='Allow Done from In Progress'
  • allow_done_from_waiting Boolean
    default=False string='Allow Done from Waiting'
  • auto_cancel_days Integer
    default=0 help='Automatically cancel tasks after staying in this stage for the specified number of days. Set to 0 to disable this feature.' string='Auto-cancel after days'
  • auto_done_days Integer
    default=0 help='Automatically mark tasks as done after staying in this stage for the specified number of days. Set to 0 to disable this feature.' string='Auto-mark as done after days'
Public methods (0)

No public methods.