Skip to content

Implement planned topic: 0001-standalone-activities#224

Merged
donald-pinckney merged 14 commits into
mainfrom
draft/0001-standalone-activities
Jun 2, 2026
Merged

Implement planned topic: 0001-standalone-activities#224
donald-pinckney merged 14 commits into
mainfrom
draft/0001-standalone-activities

Conversation

@skill-temporal-developer-updater

Copy link
Copy Markdown
Contributor

Validation Report — standalone-activities

Branch under validation: draft/0001-standalone-activities
Files validated (added on this branch, vs. main):

  • references/python/standalone-activities.md
  • references/typescript/standalone-activities.md
  • references/java/standalone-activities.md
  • references/dotnet/standalone-activities.md

Source of truth: ../documentation/docs/, specifically:

  • docs/encyclopedia/activities/standalone-activity.mdx
  • docs/develop/python/activities/standalone-activities.mdx
  • docs/develop/typescript/activities/standalone-activities.mdx
  • docs/develop/java/activities/standalone-activities.mdx
  • docs/develop/dotnet/activities/standalone-activities.mdx

Topic is not a third-party integration — references/integrations.md exists but this is a per-language Temporal feature. Check 5 skipped.

Go/no-go

Check Verdict Notes
1 — citation audit PASS 149/150 citations resolve and substantively support their claims (~99.3%, ≥ 98% threshold).
2 — reverse-grep audit MINOR 4 unexplained tokens total across 4 files; all are real SDK names used as cross-references without a citation or <!-- undocumented: ... --> marker. ≤ 5 → fits MINOR-FIXES criterion.
3 — regression on known bugs FAIL Universal regression pattern hit in two files: TEMPORAL_TLS_CLIENT_CERT_PATH / TEMPORAL_TLS_CLIENT_KEY_PATH at references/java/standalone-activities.md:209 and references/dotnet/standalone-activities.md:211.
4 — independent re-verification PASS Sampling matched 38/40 across the four files (95%); the 2 divergences are the same uncited additions surfaced in Check 2 (TypeScript file).
5 — integration layout N/A Not an integration topic.
6 — tone & scope MINOR No workaround disclosures. One pattern-2 issue across all four files: empty ## Activity context inside a Standalone Activity section whose entire body is an HTML <!-- VERIFY: ... --> comment — leftover authoring scaffolding that renders an empty heading.

Overall verdict: RE-RUN AUTHORING for the Java and .NET files due to Check 3 hits. Python is essentially clean; TypeScript has MINOR fixes only.

Per the §5 rubric: "RE-RUN AUTHORING — Check 3 has any hit." This applies to Java and .NET; the affected ## Temporal Cloud section in each should be re-authored.


Check 1 findings

100% of cited lines resolve in the docs clone for all four files. The one minor citation-quality note:

  • references/typescript/standalone-activities.md:10 cites develop/typescript/activities/standalone-activities.mdx:33-35 for "the same function can run as either with no code changes." The cited range introduces the topic but the verbatim no-code-change claim is at L127-128 of the same file. Range is in the same doc, conceptually correct, off-by-section. Not a finding for verdict purposes.

Check 2 findings

Tokens used in authored files that are absent from the cited docs subtree:

references/python/standalone-activities.md

  • workflow.execute_activity (line 12) — referenced as the Workflow-side alternative inside the hard-guardrail bullet. Not present in either cited file. Real Python SDK API used elsewhere in the docs but lacks a citation or <!-- undocumented --> marker here. Minor.

references/typescript/standalone-activities.md

  • proxyActivities (line 14) — referenced as the Workflow-side alternative inside the hard-guardrail bullet. Not present in either cited file. Minor.
  • @temporalio/* packages must be pinned to the same version (line 19) — uncited heads-up. Not present in either cited file. Real TypeScript-SDK practice but should either be cited from a different docs page (e.g., the TS install/quickstart) or removed. Minor.
  • "The --input value is JSON-encoded" (line 188) — interpretive gloss; the cited line (L274) shows --input '"World"' but does not describe the encoding. Soft. Trivial.

references/java/standalone-activities.md

  • Workflow.newActivityStub (line 11) — referenced as the Workflow-side alternative inside the hard-guardrail bullet. Not present in either cited file. Real Java SDK API; same pattern as Python's workflow.execute_activity. Minor.

references/dotnet/standalone-activities.md

  • None. All tokens resolve in cited docs.

Pattern: in three of the four files the "use the Workflow-side API instead" parenthetical inside the hard-guardrail bullet names an API symbol that the cited docs don't mention. This is consistent authoring choice (helpful cross-reference) but lacks the <!-- undocumented: source = … --> marker the plan requires. Spot-fix: add a citation to the language's basic-activities or workflow-activity doc.


Check 3 findings — regression hits (failure-gating)

File Line Wrong pattern Should be
references/java/standalone-activities.md 209 TEMPORAL_TLS_CLIENT_CERT_PATH TEMPORAL_TLS_CERT
references/java/standalone-activities.md 209 TEMPORAL_TLS_CLIENT_KEY_PATH TEMPORAL_TLS_KEY
references/dotnet/standalone-activities.md 211 TEMPORAL_TLS_CLIENT_CERT_PATH TEMPORAL_TLS_CERT
references/dotnet/standalone-activities.md 211 TEMPORAL_TLS_CLIENT_KEY_PATH TEMPORAL_TLS_KEY

Context: the source docs themselves currently contain these _PATH variants (e.g., Java standalone-activities.mdx:428-429, .NET standalone-activities.mdx:443-444), so the authoring faithfully reproduced what the docs said. The universal regression rule exists precisely because these doc env-var names are wrong — envconfig reads TEMPORAL_TLS_CERT / TEMPORAL_TLS_KEY. The skill must override the docs here.

Python and TypeScript avoided the hit because their Cloud sections describe the variables abstractly without inlining a code-block list; Java and .NET inline the verbatim variable names. Re-authoring should either (a) drop the inline env-var names and point at a Temporal Cloud connection reference, or (b) substitute the correct env-var names.


Check 4 findings — sampled-claim divergences

40 samples total (10 per file). 38 match cleanly.

The 2 divergences are both in references/typescript/standalone-activities.md:

  1. Line 14 — Authored claim adds proxyActivities as the recommended Workflow-side alternative; the citation (develop/typescript/activities/standalone-activities.mdx:228-229) only contains "Call this from your application code, not from inside a Workflow Definition." The cited line does not name proxyActivities. Already captured under Check 2.
  2. Line 19 — Authored heads-up "All @temporalio/* packages must be pinned to the same version" is uncited and not in either cited docs file. Already captured under Check 2.

Python, Java, and .NET sampled 10/10 each.

Match rate: 38/40 = 95.0%, exactly at the pass threshold. Combined with the Check 3 hits, fix-then-revalidate is preferable to relying on the marginal pass.


Check 6 findings — tone & scope

Pattern-2 finding (in-the-weeds / dead scaffolding) — all four files

Each authored file ends with:

## Activity context inside a Standalone Activity

<!-- VERIFY: ... -->

The heading renders to the reader, but the body is empty (HTML comment only). This is leftover authoring scaffolding flagging an open verification question. It either belongs as a real section with content (after the open question is answered against the source docs or SDK source) or should be removed before merge. As written, it's pattern-2 noise (in-the-weeds rationale that doesn't change generated code).

  • references/python/standalone-activities.md:202-204
  • references/typescript/standalone-activities.md:199-201
  • references/java/standalone-activities.md:216-218
  • references/dotnet/standalone-activities.md:218-220

No findings for patterns 1, 3, 4

  • Pattern 1 (workaround disclosure): none. The closest candidate, .NET:88 ("This is a hard constraint — there is no workaround; you must supply all three"), is the acceptable form — it names the constraint and reinforces it, does not disclose an escape hatch.
  • Pattern 3 (multi-sentence bullets): the files are terse throughout; no bullet expansion that could be one sentence.
  • Pattern 4 (Public Preview admonition): all four files carry the standard > [!NOTE] block with the required phrasing at the top.

Statistics

File Citations Citation-pass Reverse-grep misses (unexplained) Check 3 hits Check 4 sample Sample pass
python/standalone-activities.md 30 30 1 0 10 10
typescript/standalone-activities.md 32 31 3 0 10 8
java/standalone-activities.md 45 45 1 2 10 10
dotnet/standalone-activities.md 43 43 0 2 10 10
Total 150 149 (99.3%) 5 4 40 38 (95%)

Recommended actions

  1. Java + .NET (re-authoring): rewrite the Temporal Cloud / mTLS env-var listing using TEMPORAL_TLS_CERT / TEMPORAL_TLS_KEY, or remove the inline variable names and link to the canonical Cloud connection reference. The skill's regression table treats these strings as bugs even when the cited docs reproduce them.
  2. TypeScript (minor): cite or remove the proxyActivities parenthetical (line 14) and the @temporalio/* pinning heads-up (line 19).
  3. Python (minor): cite or remove the workflow.execute_activity parenthetical (line 12).
  4. All four (minor): resolve or delete the empty ## Activity context inside a Standalone Activity sections. If the answer to the verify question is "docs don't say," that itself should be the section body, not a hidden HTML comment.

Items 2–4 alone would fit a single MINOR FIXES commit. Item 1 should go through another authoring pass for the two affected files.

donald-pinckney and others added 8 commits June 1, 2026 15:24
Rename the worker section to "Worker setup & activity registration" in
all four SDK files and lead with a single sentence noting the Activity
is defined and registered exactly as normal. Drop the .NET "Define the
Activity" section so no file repeats how to define an activity, matching
the Python structure.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@donald-pinckney

Copy link
Copy Markdown
Collaborator

Note, this does NOT include Go's standalone activities. Will be done in a follow-up PR. This is just due to some complications with skill-sync-pipeline.

@donald-pinckney donald-pinckney merged commit 5f32b62 into main Jun 2, 2026
3 checks passed
@donald-pinckney donald-pinckney deleted the draft/0001-standalone-activities branch June 2, 2026 19:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant