Skip to content

Feat: add extraction_model field to Scrape, Extract, and Crawl resources#235

Merged
RapierCraft merged 1 commit into
mainfrom
feat/extraction-model-234
Jun 3, 2026
Merged

Feat: add extraction_model field to Scrape, Extract, and Crawl resources#235
RapierCraft merged 1 commit into
mainfrom
feat/extraction-model-234

Conversation

@RapierCraft

Copy link
Copy Markdown
Owner

Summary

Syncs the n8n node with Node SDK PR #19988 which added extraction_model to ScrapeRequest, ExtractRequest, and CrawlRequest interfaces.

  • Adds Extraction Model string field to Scrape Extraction collection
  • Adds Extraction Model string field to Crawl Settings collection
  • Adds Extraction Model string field to Extract Options collection
  • Wires extraction_model into API payload builders for all three resources
  • Updates TypeScript type interfaces accordingly

Changes

  • nodes/AlterLab/AlterLab.node.ts — 38 lines added (3 UI params + 3 type fields + 3 payload wires)

Testing

  • Extraction Model field visible in n8n UI for Scrape, Crawl, and Extract resources
  • Setting model to gpt-4o sends extraction_model: "gpt-4o" in API payload
  • Leaving empty omits extraction_model from API payload

Closes #234
Implementation branch: feat/extraction-model-234
Base: main

…esources (#234)

- Add Extraction Model string field to Scrape Extraction collection
- Add Extraction Model string field to Crawl Settings collection
- Add Extraction Model string field to Extract Options collection
- Wire extraction_model into API payload builders for all three resources
- Update TypeScript type interfaces for extraction, settings, and opts

Syncs n8n node with Node SDK PR #19988.
@RapierCraft

Copy link
Copy Markdown
Owner Author

PR #235 Review — Security & API Design

Reviewed commit: 37b1d76

Security Scan

  • Injection/SSRF/path traversal: N/A — n8n UI config, no server-side execution
  • Hardcoded secrets: None
  • Input handling: extractionModel string passed as-is to API payload — validation delegated to AlterLab API (correct for client node)

API Design Consistency

All three resources use identical pattern:

  • Field name extractionModel (camelCase, n8n collection convention) ✓
  • Payload key extraction_model (snake_case, API convention) ✓
  • Truthy guard — empty string omits field from payload ✓
  • Default "" — matches n8n optional string convention ✓

SDK alignment (PR #19988): Node sends extraction_model snake_case for all three resources ✓

Build

npm run build passes cleanly ✓

Verdict: CLEAN

No findings.


@RapierCraft

Copy link
Copy Markdown
Owner Author

APPROVED: commit 37b1d76 after context-aware review (1 agent: Security+API Design). 0 findings. Safe to merge.

  • Build: ✓ npm run build passes
  • Security: ✓ No injection, SSRF, or hardcoded secrets
  • API consistency: ✓ All three resources correctly wired
  • SDK alignment: ✓ Matches Node SDK PR #19988 payload convention

@RapierCraft RapierCraft merged commit c359354 into main Jun 3, 2026
3 checks passed
@RapierCraft

Copy link
Copy Markdown
Owner Author

PR Review Summary: #235 — Feat: add extraction_model field to Scrape, Extract, and Crawl resources

Review Integrity

Reviewed commit: 37b1d76 | Current HEAD: 37b1d76 | Status: CURRENT

Verdict: APPROVED ✓

Context-Aware Review

Domains: n8n Node / TypeScript | Agents: 1 (Security + API Design)

Integration Checks (Phase 2.5)

Code registration: ✓ All 3 getNodeParameter() calls read collections that define the new extractionModel fields. Field names match TypeScript type keys. Activation path intact.
SOPS deploy chain: N/A — satellite repo, no secrets
Purpose Regression Gate (7A): N/A — non-milestone PR

Risk Matrix

Category Risk Blocking? Confidence
Security NONE No N/A
API consistency CLEAN No CONFIRMED
Build PASS N/A CONFIRMED

Findings

None.

Automated Checks

Check Result
TypeScript build (npm run build) ✓ PASS
Secrets detection ✓ Clean
Env var audit ✓ No new vars
Scope vs contract ✓ Match (1 file)

Recommendation

PR merged to main. 0 review findings.


Context-aware review complete. 1 agent (Security+API Design). 0 findings.

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.

Sync: Add extraction_model field to Scrape, Extract, and Crawl resources (from #19988)

1 participant