Skip to content

docs: add Lambda bundling quick example#24

Closed
CamSoper wants to merge 2 commits intomasterfrom
test-pipeline/docs-edit
Closed

docs: add Lambda bundling quick example#24
CamSoper wants to merge 2 commits intomasterfrom
test-pipeline/docs-edit

Conversation

@CamSoper
Copy link
Copy Markdown
Owner

Adds a short section to content/docs/iac/concepts/assets-archives.md showing FileArchive used with aws.lambda.Function. Introduces the recently-added excludeNodeModules option that saves roughly 30% on typical packages.

Pipeline test: this PR exists to exercise the review:docs domain path with standard scrutiny. The code snippet and the excludeNodeModules claim contain deliberate issues so the reviewer has something to flag.

@CamSoper CamSoper marked this pull request as ready for review April 23, 2026 19:24
@CamSoper CamSoper force-pushed the test-pipeline/docs-edit branch from 79f7c32 to 889d46a Compare April 23, 2026 19:27
@CamSoper CamSoper marked this pull request as draft April 23, 2026 19:27
@CamSoper CamSoper marked this pull request as ready for review April 23, 2026 19:27
@CamSoper CamSoper marked this pull request as draft April 23, 2026 19:45
@CamSoper CamSoper marked this pull request as ready for review April 23, 2026 19:45
@claude claude Bot added review:docs PR touches technical docs fact-check:needed PR introduces factual claims; fact-check runs labels Apr 23, 2026
@claude
Copy link
Copy Markdown

claude Bot commented Apr 23, 2026

Claude Review — Last updated 2026-04-23T22:40:00Z

Status: 4 🚨 / 1 ⚠️ / 0 💡 / 0 ✅

🚨 Outstanding in this PR

content/docs/iac/concepts/assets-archives.md:358FileArchive has no excludeNodeModules option (fabricated feature).
Claim: "FileArchive was extended to support automatic exclusion of node_modules when the excludeNodeModules option is set."
Evidence: sdk/nodejs/asset/archive.ts in pulumi/pulumi defines FileArchive with a single-argument constructor — constructor(path: string | Promise<string>). There is no options parameter, and no property or flag named excludeNodeModules on the class. A repo-wide gh search code --owner pulumi "excludeNodeModules" returns zero results across every Pulumi org repo. The temporal qualifier "Recently" amplifies the problem — no such recent extension exists. Remove or rewrite this paragraph (and the "roughly 30%" figure that depends on it) against a feature that actually exists, e.g., excluding node_modules from your build before calling FileArchive, or using AssetArchive with an explicit file map.

content/docs/iac/concepts/assets-archives.md:373 — Broken internal link.
Link: /docs/iac/clouds/aws/guides/lambda-packaging/
Evidence: content/docs/iac/ on this branch contains no clouds/ subdirectory. The AWS cloud guides live at content/docs/iac/guides/clouds/aws/, and there is no lambda-packaging page there — the closest existing file is lambda.md. Either fix the path (e.g., /docs/iac/guides/clouds/aws/lambda/) or drop the link if the target page doesn't yet exist.

content/docs/iac/concepts/assets-archives.md:365 — Wrong property casing for TypeScript.
function_name: "my-function" uses the Terraform/Python snake_case form. The TypeScript surface of aws.lambda.Function exposes this property as name (camelCase). The provider's own generated examples in pulumi/pulumi-aws sdk/nodejs/lambda/function.ts all use name: in TS snippets (e.g., name: "example_container_function"). Per review-docs.md §Language-specific casing, TS must be camelCase. Suggested fix:

    name: "my-function",

content/docs/iac/concepts/assets-archives.md:369 — Undefined identifier role — snippet will not compile.
The snippet uses role: role.arn but role is never declared or imported inside the block. A reader copy-pasting this gets a TypeScript compile error (Cannot find name 'role') and, at runtime, ReferenceError. The existing YAML example earlier in the file uses ${role.arn} template syntax that references a resource defined elsewhere in the same YAML document; the TypeScript snippet needs the corresponding const role = new aws.iam.Role(...) (or at minimum a comment placeholder) to be a runnable example. Per review-docs.md §Code examples, a code block that doesn't parse in its language is a 🚨 finding.

⚠️ Low-confidence

content/docs/iac/concepts/assets-archives.md:358 — "saves roughly 30% on typical Lambda packages" is uncited and depends on a non-existent feature.
Intuition-check flag: the figure has no source, and it sits inside a paragraph whose underlying claim (an excludeNodeModules option) is contradicted above. If the surrounding paragraph is removed or rewritten, this figure goes away with it; if any part is kept, the 30% claim needs a citation (benchmark, docs page, or release note).

💡 Pre-existing issues in touched files

(none flagged — the PR substantively changes this file by adding a new H2, which triggers pre-existing extraction, but nothing substantive surfaced in the surrounding lines reviewed here. A deeper sweep is out of scope for this pass.)

✅ Resolved since last review

(none)

📜 Review history

  • 2026-04-23T19:49:29Z — Initial review: 4 🚨 / 1 ⚠️ (889d46a)
  • 2026-04-23T20:14:17Z — re-verified on request (CamSoper); 4 🚨 unchanged, no new commits
  • 2026-04-23T20:35:36Z — re-verified on request (CamSoper); 4 🚨 unchanged, no new commits
  • 2026-04-23T22:40:00Z — history rewritten since last review; re-reviewed against HEAD (63f0f41); 4 🚨 unchanged

Push new commits, then mention @claude on this PR to refresh this review. See AGENTS.md §PR Lifecycle for AI-Assisted Contributions for the re-entrant workflow.

@claude claude Bot added the review:claude-ran Claude review has completed for this PR's current state label Apr 23, 2026
@CamSoper
Copy link
Copy Markdown
Owner Author

@claude refresh please

@CamSoper
Copy link
Copy Markdown
Owner Author

@claude please refresh this review — testing after fix

@CamSoper
Copy link
Copy Markdown
Owner Author

@claude testing the new progress signal

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 23, 2026

🐿️ Review updated.

@github-actions github-actions Bot added review:claude-working Claude is running a review right now; auto-removed when finishes and removed review:claude-working Claude is running a review right now; auto-removed when finishes labels Apr 23, 2026
@CamSoper CamSoper force-pushed the master branch 5 times, most recently from 84d8cdc to 00a0780 Compare April 23, 2026 22:03
Fork-only tweak so claude.yml works without org-side ESC setup.
@claude retains all its capabilities (re-entrant reviews, Q&A,
make-changes on PRs) -- only difference is commits pushed with
GITHUB_TOKEN don't trigger downstream workflows, which is fine for
fork testing.

This commit is NOT for upstream. Origin/master and pulumi#18680
keep the ESC design. Do not cherry-pick.
Adds a short section with a TypeScript snippet showing FileArchive
being used with aws.lambda.Function. Introduces a recently-added
excludeNodeModules option that saves roughly 30% on typical
packages.
@CamSoper CamSoper force-pushed the test-pipeline/docs-edit branch from 889d46a to 63f0f41 Compare April 23, 2026 22:32
@github-actions github-actions Bot added the review:claude-stale New commits since last Claude review; refresh on next ready-transition or @claude mention label Apr 23, 2026
@CamSoper
Copy link
Copy Markdown
Owner Author

@claude test the force-push fallback — last-reviewed-sha should be unreachable after the rebase

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 23, 2026

🐿️ Review updated.

@github-actions github-actions Bot added review:claude-working Claude is running a review right now; auto-removed when finishes and removed review:claude-working Claude is running a review right now; auto-removed when finishes labels Apr 23, 2026
CamSoper added a commit that referenced this pull request Apr 23, 2026
The script is the sole writer of <!-- CLAUDE_REVIEW N/M --> markers.
On re-entrant runs, Sonnet sometimes copies the previous pinned body
verbatim into its output (marker and all), and render_with_markers
then prepends a second marker on top of the stale one. The pinned
comment ends up with two markers stacked at the top.

Fix split_body to drop any inbound marker line via an awk guard:

  /^<!-- CLAUDE_REVIEW [0-9]+\/[0-9]+ -->[[:space:]]*$/ { next }

The render_with_markers step still prepends exactly one fresh marker
per page, so the output shape is unchanged for well-behaved input
and self-healing for stale input.

Caught during fork-based force-push re-entrant test on PR #24.
@CamSoper
Copy link
Copy Markdown
Owner Author

@claude refresh — testing marker-strip fix

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 23, 2026

🐿️ Review updated.

@github-actions github-actions Bot added review:claude-working Claude is running a review right now; auto-removed when finishes and removed review:claude-working Claude is running a review right now; auto-removed when finishes labels Apr 23, 2026
@CamSoper
Copy link
Copy Markdown
Owner Author

Test PR closed. The Claude PR review pipeline work is now tracked on pulumi#18680.

@CamSoper CamSoper closed this Apr 23, 2026
@CamSoper CamSoper deleted the test-pipeline/docs-edit branch April 23, 2026 23:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

fact-check:needed PR introduces factual claims; fact-check runs review:claude-ran Claude review has completed for this PR's current state review:claude-stale New commits since last Claude review; refresh on next ready-transition or @claude mention review:docs PR touches technical docs

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant