Skip to content

docs: expand the development environment page (SAM, CDK, testing, agentic) - #231

Open
SilanHe wants to merge 20 commits into
mainfrom
docs/issue-111-development-environment
Open

docs: expand the development environment page (SAM, CDK, testing, agentic)#231
SilanHe wants to merge 20 commits into
mainfrom
docs/issue-111-development-environment

Conversation

@SilanHe

@SilanHe SilanHe commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

What

Expands docs/getting-started/development-environment.md from a placeholder (a single workflow diagram) into a full development-environment guide, per #111. Sections:

  • Development workflow — keeps the existing inner-loop diagram, with context.
  • Prerequisites — AWS CLI, language runtime, and a deploy tool (SAM CLI / CDK / CLI), with the minimum versions the team documents.
  • Install the SDK — per-language tabs (TypeScript / Python / Java / C#) matching the Quickstart package names and runtimes.
  • Write and test locally — the local runner (LocalDurableTestRunner / DurableFunctionTestRunner), linking into the Testing section rather than duplicating it.
  • Configure your function — the three requirements (DurableConfig, AWSLambdaBasicDurableExecutionRolePolicy, qualified ARN) with a link to the configuration reference.
  • Deploy with infrastructure as codeSAM and CDK examples (the core ask), plus a CloudFormation note.
  • Test against the cloud — Cloud Runner + SAM CLI (sam local invoke / sam remote invoke).
  • Agentic development with Kiro — documents the team's Kiro Power (aws-lambda-durable-functions-power), how to install/activate it, and the steering files for other AI assistants; notes why durable functions suit agentic workloads.

Grounding

Content is grounded in existing repo sources — the Quickstart, the Testing pages, the new configuration reference (#229), and the aws-lambda-durable-functions-power steering pack (README.md/POWER.md/deployment-iac.md/getting-started.md) — not invented. No SDK behavior is asserted beyond what those sources state.

Quality

mdformat --check and codespell pass on the file, and it contains no hidden characters — so it satisfies the PR quality gate added in #230. Links point to existing pages.

Closes #111

Replaces the placeholder (a lone workflow diagram) with a full dev-env guide:
- prerequisites and per-language SDK install (TS/Python/Java/C#)
- the inner development loop and local testing (links to Testing section)
- function configuration (DurableConfig, execution-role policy, qualified ARN)
- deploy with infrastructure as code: SAM and CDK examples (+ CloudFormation note)
- test against the cloud via the Cloud Runner and SAM CLI
- agentic development with the team's Kiro Power, plus the steering files for
  other AI assistants

Grounded in the repo's quickstart, testing pages, configuration reference, and the
aws-lambda-durable-functions-power steering pack. mdformat + codespell clean.

Closes #111
@SilanHe
SilanHe marked this pull request as draft July 29, 2026 17:11
Adds a tabbed minimal test (TS/Python/Java/C#) to the 'Write and test locally'
section via snippet includes to the existing verified examples/*/testing/authoring/
minimal-test.* files, so the code stays in sync and cannot drift.
Comment thread docs/getting-started/development-environment.md Outdated
Comment thread docs/getting-started/development-environment.md Outdated
Comment thread docs/getting-started/development-environment.md
Comment thread docs/getting-started/development-environment.md Outdated
Comment thread docs/getting-started/development-environment.md Outdated
Comment thread docs/getting-started/development-environment.md Outdated
Comment thread docs/getting-started/development-environment.md Outdated
Comment thread docs/getting-started/development-environment.md Outdated
Comment thread docs/getting-started/development-environment.md Outdated
Comment thread docs/getting-started/development-environment.md Outdated
hsilan and others added 10 commits July 29, 2026 18:28
Drop the 'for the valid ranges and defaults' clause: the configuration
reference does not currently document DurableConfig ranges/defaults (PR #229
was closed unmerged), so the page no longer promises content that isn't there.
Relabel the workflow flowchart nodes to match the page's H2 section titles
(Install the SDK / Write and test locally / Configure your function /
Deploy with infrastructure as code / Test against the cloud).
Rename the five workflow sections to the flowchart's step labels
(Write Function / Write Tests / Run Tests / Deploy / Test in Cloud) and drop the
node numbers so headings and flowchart labels match verbatim. SDK install folds
into Write Function; DurableConfig requirements fold into Deploy.
Updated terminology for clarity and consistency in the development environment documentation. Adjusted explanations regarding the local development loop, Lambda runtime, and deployment recommendations.
Split the shared console block into TypeScript/Python/Java/C# tabs
(npm test / pytest / mvn test / dotnet test).
- Rewrite the runtime-SDK-lag sentence (fix comma splice and 'it can unclear')
- Replace the bare durable-configuration.html URL with a markdown link
Clarify SDK versioning and improve instructions for building workflows.
Updated recommendation for deploying with SAM or CDK to emphasize the importance of storing function configuration and related infrastructure in source control for better iteration and production readiness.
Add 1.-5. to both the flowchart step nodes and the matching workflow
section headings so they stay in sync (1. Write Function ... 5. Test in Cloud).
- Intro + prerequisites: SAM CLI drives the local dev loop; CDK recommended for
  productionizing the surrounding infrastructure
- Write Function: lead with 'sam init' (durable starter templates for TS/Python/Java),
  then keep the manual SDK add/pin tabs
- Deploy: frame SAM as the iterate path and CDK as the productionize path
  (tab labels 'SAM (iterate)' / 'CDK (productionize)')
Comment thread docs/getting-started/development-environment.md Outdated
Comment thread docs/getting-started/development-environment.md Outdated
hsilan added 3 commits July 29, 2026 23:14
- 'tight inner loop' -> 'tight local loop' (clarify inner == local)
- 'use CloudFormation' -> 'use CloudFormation directly' (clarify vs SAM/CDK)
…tself)

SAM does not keep config/IAM/version/alias in source control; it declares them
in a single template.yaml that you can put under source control.
@SilanHe
SilanHe marked this pull request as ready for review July 30, 2026 22:59
Comment thread docs/getting-started/development-environment.md Outdated
Comment thread docs/getting-started/development-environment.md
Comment thread docs/getting-started/development-environment.md Outdated
Comment thread docs/getting-started/development-environment.md Outdated
Comment thread docs/getting-started/development-environment.md Outdated
Comment thread docs/getting-started/development-environment.md
Comment thread docs/getting-started/development-environment.md Outdated
Comment thread docs/getting-started/development-environment.md Outdated
Co-authored-by: Brent Champion <brent.champion@queensu.ca>
@SilanHe
SilanHe requested a review from bchampp July 31, 2026 20:50
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.

[docs]: development environment page

4 participants