Donald Pinckney
7d5ae761ff
Reduce repetition in determinism sans sandboxing ( #67 )
...
* Reduce repetition in determinism sans sandboxing.
* fix merge
2026-04-02 17:08:53 -04:00
Donald Pinckney
0c8586b4c2
Add Java SDK support ( #42 )
...
* Add Java SDK reference files (11 files)
Create complete Java reference documentation covering:
- java.md: Entry point with quick start tutorial, key concepts
- patterns.md: 17 patterns (signals, queries, updates, child workflows,
saga, cancellation scopes, heartbeating, etc.)
- determinism.md: Safe alternatives table, forbidden operations
- determinism-protection.md: Convention-based enforcement (no sandbox)
- error-handling.md: ApplicationFailure, retry/timeout config
- gotchas.md: Non-deterministic operations, cancellation, heartbeating
- testing.md: TestWorkflowEnvironment, Mockito mocking, replay testing
- versioning.md: Workflow.getVersion(), worker versioning
- data-handling.md: Jackson, PayloadConverter, encryption, search attributes
- observability.md: SLF4J logging, Micrometer metrics
- advanced-features.md: Schedules, async completion, worker tuning
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
* Fix Java alignment issues from self-review
- Reduce gotchas.md Non-Deterministic Operations from ~94 lines to ~12
(reference determinism.md instead of duplicating)
- Remove Workflow Failure Exception Types duplication from error-handling.md
(keep only in advanced-features.md)
- Expand versioning.md Worker Versioning with Key Concepts, PINNED vs
AUTO_UPGRADE, Deployment Strategies subsections
- Fix section names to match Python reference style:
Activity Heartbeat Details, Handling Activity Errors,
Retry Policy Configuration, Workflow Test Environment,
Mocking Activities, Workflow Replay Testing
- Reduce data-handling.md Payload Encryption verbosity
- Reduce observability.md Logger Customization verbosity
- Reduce testing.md to single approach per section
- Rename determinism.md "Convention-Based Enforcement" to "SDK Protection"
- Fix handler guidance in patterns.md to match Python
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
* Fix correctness issues in Java reference files
- patterns.md: Fix Queries section — ActivityStub → typed interface
(Workflow.newActivityStub returns the typed interface, not ActivityStub)
- data-handling.md: Add missing ProtobufPayloadConverter to default
converter chain (4th of 5 converters)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
* Add Java to SKILL.md and core/determinism.md
- SKILL.md: Add "Temporal Java" trigger phrase, update Overview to
list Java, add Java entry to Getting Started references
- core/determinism.md: Add Java entry to SDK Protection Mechanisms
(no sandbox, convention-based, NonDeterministicException at replay)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
* Apply manual editorial fixes to Java references
- java.md: Remove "Understanding Replay" section (covered by Overview),
simplify File Organization note (no sandbox rationale)
- gotchas.md: Move Heartbeating before Cancellation, make Wrong Retry
Classification brief with reference (not inline examples)
- error-handling.md: Remove editorializing from Workflow Failure note
- determinism-protection.md: Remove cross-language comparison paragraph
(state Java's approach on its own terms)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
* Add temporal-workflowcheck static analysis to Java determinism docs
- determinism-protection.md: Add "Static Analysis with temporal-workflowcheck"
section with Gradle/Maven setup, manual run, and suppression instructions.
Beta warning included.
- determinism.md: Update overview and SDK Protection to reference workflowcheck
- core/determinism.md: Update Java entry in SDK Protection Mechanisms
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
* Integrate feedback from Go PR into Java patterns
- Updates: Add validator note — validators must not mutate state or
block (matches note added to Python, TypeScript, Go, and core)
- Saga Pattern: Use Workflow.newDetachedCancellationScope() for
compensations so they execute even if the workflow is cancelled
(mirrors Go's workflow.NewDisconnectedContext pattern)
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com >
* docs: add @WorkflowInit description to java.md Key Concepts
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
* mark java as supported
* Apply suggestions from code review
Co-authored-by: Brian Strauch <brian@brianstrauch.com >
* strongly recommend java 21+
* Softened stance on static checker and replay testing.
* address python/typescript sandboxing comment
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
Co-authored-by: Brian Strauch <brian.strauch@temporal.io >
Co-authored-by: Brian Strauch <brian@brianstrauch.com >
2026-04-02 17:07:33 -04:00
Donald Pinckney
9b97ceebd0
[fix] Add missing section to TS's observability ( #65 )
2026-04-02 14:12:24 -04:00
Brian Strauch
57c08ef74b
Add @workflow.init decorator to python.md Key Concepts ( #57 )
...
* docs: add @workflow.init decorator to python.md Key Concepts
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
* Apply suggestion from @brianstrauch
* Update references/python/python.md
---------
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-31 14:16:11 -07:00
Trevor J. Yao
b040ae10b4
Fix Python reference bugs: incorrect API name, syntax error, broken cross-ref, misleading comment ( #55 )
2026-03-31 14:58:57 -04:00
Jackson Lo
68ebe14ff5
Fix typos and broken references across skill docs ( #56 )
...
- Fix missing trailing pipe in error-reference.md table header
- Fix wrong reference path in go.md (python -> go determinism-protection)
- Add missing .md extension to testing reference in go/determinism-protection.md
- Fix typos: "Activty" -> "Activity", "accomplised" -> "accomplished", "discourged" -> "discouraged"
2026-03-31 14:20:51 -04:00
Donald Pinckney
e16c9b808a
Add Go (supersedes other PR) ( #38 )
...
* progress on go
* Go translation workflow completed.
* missed a few spots
* Manual edits
* Address feedback
* Add gotcha about anonymous local activities
* Sample code for payload converter
* clarify sdk protection mechanisms
2026-03-18 21:18:45 -04:00
Donald Pinckney
c013b87f87
Fix saga compensations to run under cancellation protection ( #43 )
...
When a workflow is cancelled mid-saga, compensations must run in a
cancellation-protected scope, otherwise they are immediately cancelled
before they can execute.
- Python: wrap compensation loop in asyncio.shield() so it runs even
when the workflow receives a CancelledError
- TypeScript: wrap compensation loop in CancellationScope.nonCancellable()
so it runs even when the root scope is cancelled (per official docs:
"Cleanup logic must be in a nonCancellable scope")
- TypeScript: also fix compensation registration order — register BEFORE
calling the activity (was already correct in Python)
Co-authored-by: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com >
2026-03-17 18:41:25 -04:00
Donald Pinckney
8ad9233bb1
Fix typos and reference links ( #36 )
...
* Fix typos and reference links
* 2 more typo fixes
2026-03-07 09:44:11 -05:00
Donald Pinckney
766f8883fe
Add TypeScript ( #31 )
...
Adds initial support for TypeScript to the skill
---------
Co-authored-by: James Watkins-Harvey <mjameswh@users.noreply.github.com >
Co-authored-by: Chris Olszewski <chrisdolszewski@gmail.com >
2026-03-07 09:41:32 -05:00
Donald Pinckney
87fe92e083
Remove multi-patching from Python, since its obvious, dont waste tokens on it. ( #34 )
2026-03-03 00:29:19 -05:00
Donald Pinckney
99a2d4a1eb
Automated pass over on python cleanup & deduplication
2026-03-03 00:28:59 -05:00
Donald Pinckney
0692311a5a
De-couple core from python and TypeScript as much as possible
2026-02-23 15:05:51 -05:00
Donald Pinckney
846cb449b9
remove ts directory
2026-02-23 15:05:51 -05:00
Donald Pinckney
14da16ad9f
clean up ai-patterns.md
2026-02-23 13:46:43 -05:00
Donald Pinckney
ec02f3822e
Improve patterns.md
2026-02-23 13:46:43 -05:00
Donald Pinckney
663bbe47eb
cleanup to top level of skill (like CLI install instructions), and to top-level of python
2026-02-23 13:46:43 -05:00
Donald Pinckney
79ecaf3f97
Lots of improvements to testing
2026-02-23 13:46:43 -05:00
Donald Pinckney
cbfd857fbd
de-duplicate content
2026-02-23 13:46:43 -05:00
Donald Pinckney
f01763a45a
cut a lot of duplicate stuff from python gotchas, address comments
2026-02-23 13:46:43 -05:00
Donald Pinckney
ad4cc34bfa
Cut otel for now
2026-02-19 12:12:06 -05:00
Donald Pinckney
d61866b6d4
Cleanup observability.md, remove duplicated search attributes
2026-02-19 12:12:06 -05:00
Donald Pinckney
35c3bc55c1
Clean up references/python/sync-vs-async.md
2026-02-19 12:12:06 -05:00
Donald Pinckney
56dde7576b
local activities aren't experimental
2026-02-19 12:12:06 -05:00
Donald Pinckney
0bc69b2e0a
Unify sandbox stuff into one file
2026-02-19 12:12:06 -05:00
Donald Pinckney
f36faca41f
small edits
2026-02-19 12:12:06 -05:00
Donald Pinckney
f0387e3743
remove multi-param activities
2026-02-19 12:12:06 -05:00
Donald Pinckney
3d43cd27f1
move idempotency patterns to patterns.md
2026-02-19 12:12:06 -05:00
Donald Pinckney
f693cc742c
error-handling.md cleanup
2026-02-19 12:12:06 -05:00
Donald Pinckney
8b7dffa088
don't explicitely provide defaults for retry policies
2026-02-19 12:12:06 -05:00
Donald Pinckney
3dcccb82eb
Prefer start_to_close_timeout
2026-02-19 12:12:06 -05:00
Donald Pinckney
bb46cb4b90
Improve references/python/data-handling.md
2026-02-19 12:12:06 -05:00
Donald Pinckney
322f85abd2
remove duplicated content from determinism.md, clean up
2026-02-19 12:12:06 -05:00
Donald Pinckney
e945f1da5e
Use explicit namespace in connect
2026-02-19 12:12:06 -05:00
Donald Pinckney
1c185b6455
Improve references/python/advanced-features.md
2026-02-19 12:12:06 -05:00
Donald Pinckney
d4d9921adb
clarify on heartbeating of async activity completions, and prompt it a bit in relation to signals
2026-02-19 12:12:06 -05:00
Donald Pinckney
e10cbb8fa3
remove dynamic workflows
2026-02-19 12:12:06 -05:00
Donald Pinckney
5695854e77
remove interceptors for now
2026-02-19 12:12:06 -05:00
Donald Pinckney
d237247cbc
Edit troubleshooting.md
2026-02-19 12:12:06 -05:00
Donald Pinckney
3c19991c25
Cut shell scripts
2026-02-19 12:12:06 -05:00
Donald Pinckney
1f4c53de06
Clean up patterns.md
2026-02-19 12:12:06 -05:00
Donald Pinckney
f61d2ea40c
Update interactive-workflows.md
2026-02-19 12:12:06 -05:00
Donald Pinckney
45497f4be5
Update error-reference.md
2026-02-19 12:12:06 -05:00
Donald Pinckney
efc8ef22de
Clean up references/core/determinism.md
2026-02-19 12:12:06 -05:00
Donald Pinckney
2b6676f22f
Clean up references/core/determinism.md
2026-02-19 12:12:06 -05:00
Donald Pinckney
e113399131
Clean up references/core/common-gotchas.md
2026-02-19 12:12:06 -05:00
Donald Pinckney
b0fcfe305e
Clean up references/core/common-gotchas.md
2026-02-19 12:12:06 -05:00
Donald Pinckney
d25073a47e
Clean up references/core/ai-integration.md
2026-02-19 12:12:06 -05:00
Donald Pinckney
5998c6406d
Use claude to merge Steve's, Max's, and Mason's skills. ( #2 )
...
* Use claude to merge Steve's, Max's, and Mason's skills. Did a review pass using claude's skill devlopment skills
* Add missing things from Steve
* trigger tweaks
* Add in common gotchas from Johann
2026-02-04 14:35:08 -05:00
Donald Pinckney
eca74d6ac4
Add initial skill for testing, which is simply Steve's skill ( #1 )
...
* Add initial skill for testing, which is simply Steve's skill
* Rename skill to 'temporal-dev' and update version
Updated skill name and version for Temporal Python.
2026-02-02 18:20:32 -05:00