fix: keep the step key in a cached task's identity

This commit is contained in:
Ruben Fiszel
2026-09-16 08:49:18 +02:00
parent 9d7001ddc0
commit 35c349696d
15 changed files with 156 additions and 78 deletions
+15 -12
View File
@@ -4609,10 +4609,11 @@ def parse_sql_client_name(name: str) -> tuple[str, Optional[str]]
# no \`\`delay\`\` all go out in a single round.
#
# \`\`cache_ttl\`\` serves a previous result of the task for that many seconds
# instead of running it again. The result is keyed on the task and the
# arguments it is called with, so anything a cached task reads from its
# closure must be passed in as an argument. It has no effect on a
# \`\`task_flow\`\` target, which keeps its flow's own cache policy.
# instead of running it again. The result is keyed on the task, the step it
# runs as and the arguments it is called with, so anything a cached task reads
# from its closure, the receiver of a bound method included, must be passed in
# as an argument. It has no effect on a \`\`task_flow\`\` target, which keeps its
# flow's own cache policy.
#
# Usage::
#
@@ -6748,10 +6749,11 @@ export interface TaskOptions {
timeout?: number;
tag?: string;
/** Seconds during which a previous result of this task is served instead of
* running it again. The result is keyed on the task and the arguments it is
* called with, so anything a cached task reads from its closure must be
* passed in as an argument. It has no effect on a \`taskFlow\` target, which
* keeps its flow's own cache policy. */
* running it again. The result is keyed on the task, the step it runs as and
* the arguments it is called with, so anything a cached task reads from its
* closure, the receiver of a bound method included, must be passed in as an
* argument. It has no effect on a \`taskFlow\` target, which keeps its flow's
* own cache policy. */
cache_ttl?: number;
priority?: number;
concurrency_limit?: number;
@@ -6944,10 +6946,11 @@ def get_resume_urls(approver: str = None, flow_level: bool = None) -> dict
# no \`\`delay\`\` all go out in a single round.
#
# \`\`cache_ttl\`\` serves a previous result of the task for that many seconds
# instead of running it again. The result is keyed on the task and the
# arguments it is called with, so anything a cached task reads from its
# closure must be passed in as an argument. It has no effect on a
# \`\`task_flow\`\` target, which keeps its flow's own cache policy.
# instead of running it again. The result is keyed on the task, the step it
# runs as and the arguments it is called with, so anything a cached task reads
# from its closure, the receiver of a bound method included, must be passed in
# as an argument. It has no effect on a \`\`task_flow\`\` target, which keeps its
# flow's own cache policy.
#
# Usage::
#