Compare commits

...

4 Commits

Author SHA1 Message Date
Jose David Rodriguez Velasco
a567c1892e
Merge 7d19f2625f into d1f5eb9d69 2026-05-12 18:33:23 +05:30
Hemant Singh Bisht
d1f5eb9d69
chore: ignore fast-uri and axios in root dependabot entry
Closes open bot PRs #258 and #250 by adding them to the root ignore list.
2026-05-12 12:03:30 +05:30
Hemant Singh Bisht
63a8a646a9
chore: suppress dependabot PRs for all sample directories
Add ignore: "*" to existing sample entries and add missing nested
uiBundles paths so Dependabot closes all 14 open bot PRs on next run.
2026-05-12 11:55:53 +05:30
Jose David Rodriguez Velasco
7d19f2625f
fix: make it explicit not to read schema in the non-negotiable rules 2026-04-13 17:51:57 -04:00
2 changed files with 30 additions and 2 deletions

View File

@ -9,33 +9,61 @@ updates:
- dependency-name: "@salesforce/ui-bundle-template-app-react-sample-b2x"
- dependency-name: "@salesforce/webapp-template-app-react-sample-b2e-experimental"
- dependency-name: "@salesforce/webapp-template-app-react-sample-b2x-experimental"
- dependency-name: "fast-uri"
- dependency-name: "axios"
- package-ecosystem: "npm"
directory: "/samples/ui-bundle-template-app-react-sample-b2e"
open-pull-requests-limit: 0
schedule:
interval: "weekly"
ignore:
- dependency-name: "*"
- package-ecosystem: "npm"
directory: "/samples/ui-bundle-template-app-react-sample-b2x"
open-pull-requests-limit: 0
schedule:
interval: "weekly"
ignore:
- dependency-name: "*"
- package-ecosystem: "npm"
directory: "/samples/webapp-template-app-react-sample-b2e-experimental"
open-pull-requests-limit: 0
schedule:
interval: "weekly"
ignore:
- dependency-name: "*"
- package-ecosystem: "npm"
directory: "/samples/webapp-template-app-react-sample-b2x-experimental"
open-pull-requests-limit: 0
schedule:
interval: "weekly"
ignore:
- dependency-name: "*"
- package-ecosystem: "npm"
directory: "/samples/native-mobile-rental-tenant-app"
open-pull-requests-limit: 0
schedule:
interval: "weekly"
ignore:
- dependency-name: "*"
- package-ecosystem: "npm"
directory: "/samples/ui-bundle-template-app-react-sample-b2x/force-app/main/default/uiBundles/propertyrentalapp"
open-pull-requests-limit: 0
schedule:
interval: "weekly"
ignore:
- dependency-name: "*"
- package-ecosystem: "npm"
directory: "/samples/ui-bundle-template-app-react-sample-b2e/force-app/main/default/uiBundles/propertymanagementapp"
open-pull-requests-limit: 0
schedule:
interval: "weekly"
ignore:
- dependency-name: "*"

View File

@ -74,7 +74,7 @@ These rules exist because Salesforce GraphQL has platform-specific behaviors tha
1. **HTTP 200 does not mean success** — Salesforce returns HTTP 200 even when operations fail. **Always parse the `errors` array in the response body.**
2. **Schema is the single source of truth** — Every entity name, field name, and type must be confirmed via the schema search script before use in a query. Never guess — Salesforce field names are case-sensitive, relationships may be polymorphic, and custom objects use suffixes (`__c`, `__e`). Objects added to UI API in v60+ may use a `_Record` suffix (e.g., `FeedItem_Record` instead of `FeedItem`).
2. **Schema is the single source of truth — access it only via the search script** — Every entity name, field name, and type must be confirmed by running `bash scripts/graphql-search.sh <Entity>` before use in a query. Never read `schema.graphql` directly. Never guess — Salesforce field names are case-sensitive, relationships may be polymorphic, and custom objects use suffixes (`__c`, `__e`). Objects added to UI API in v60+ may use a `_Record` suffix (e.g., `FeedItem_Record` instead of `FeedItem`).
3. **`@optional` on all record fields** (read queries) — Salesforce field-level security (FLS) causes queries to fail entirely if the user lacks access to even one field. The `@optional` directive (v65+) tells the server to omit inaccessible fields instead of failing. Apply it to every scalar field, parent relationship, and child relationship. Consuming code must use optional chaining (`?.`) and nullish coalescing (`??`).
@ -102,7 +102,7 @@ These rules exist because Salesforce GraphQL has platform-specific behaviors tha
### Step 1: Acquire Schema
The `schema.graphql` file (265K+ lines) is the source of truth. **Never open or parse it directly**no cat, less, head, tail, editors, or programmatic parsers.
The `schema.graphql` file (265K+ lines) is the source of truth. **Never open or parse it directly**do NOT use `Read`, `Grep`, `Bash`, `cat`, `head`, `tail`, `grep`, `rg`, `less`, `sed`, `awk`, editors, or any tool to read, search, or parse this file. It will overwhelm your context. Use only `bash scripts/graphql-search.sh <Entity>`.
Verify preconditions 13 (see [Preconditions](#preconditions--verify-before-starting)), then proceed to Step 2.