feat(oracle-fusion-financials): add Payables Receivables Expenses and GL - #7515
feat(oracle-fusion-financials): add Payables Receivables Expenses and GL#7515BillLeoutsakosvl346 wants to merge 1 commit into
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Greptile SummaryThis PR expands Oracle Fusion Cloud Financials from its existing 24 read-only Payables tools to 108 tools spanning Payables, Receivables, Expenses, and General Ledger, and adds eight new selectors.
Confidence Score: 5/5The PR appears safe to merge, with no outstanding previous findings or actionable new defects identified. The estimated-total parser now accepts Oracle’s documented estimate inconsistencies while preserving numeric validation and
|
| Filename | Overview |
|---|---|
| apps/sim/lib/internal/oracle-fusion-financials/operations.ts | Defines and routes the expanded Receivables, Expenses, and GL operations with bounded collection handling, typed writes, opaque-key validation, and action-result checks. |
| apps/sim/lib/internal/oracle-fusion-financials/schema.ts | Adds request and response schemas that preserve nullable Oracle values and exact decimal identifiers without unsafe numeric coercion. |
| apps/sim/tools/oracle_fusion_financials/shared.ts | Provides shared inputs and output metadata for the expanded Financials tool family. |
| apps/sim/lib/selectors/server/providers/oracle-fusion-financials.ts | Adds eight credential-bound, bounded selectors with resource-specific IDs and detail resolution. |
| apps/sim/lib/internal/oracle-fusion/protocol.ts | Correctly changes collection totals to estimated metadata while retaining structural and numeric validation. |
| apps/sim/blocks/blocks/oracle_fusion_financials.ts | Exposes the complete 108-tool Financials integration through the block definition. |
| apps/sim/tools/registry.ts | Registers the expanded Oracle Fusion Financials tool set in the application tool registry. |
Flowchart
%%{init: {'theme': 'neutral'}}%%
flowchart LR
W[Workflow tool or selector] --> R[Financials registrations]
R --> E[Oracle Fusion Financials executor]
E --> O[Typed operation definitions]
O --> C[Shared Oracle Fusion client]
C --> A[Oracle Fusion REST API]
O --> P[Payables: 24 read-only tools]
O --> AR[Receivables: 46 tools]
O --> X[Expenses: 24 tools]
O --> GL[General Ledger: 14 tools]
S[Eight new selectors] --> E
C --> V[Schema validation and projection]
V --> W
Reviews (3): Last reviewed commit: "feat(oracle-fusion-financials): add Paya..." | Re-trigger Greptile
9cab3b1 to
9ba59cc
Compare
9ba59cc to
1132fe4
Compare
1132fe4 to
efd8f7a
Compare
efd8f7a to
b73084b
Compare
b73084b to
622710e
Compare
622710e to
821f182
Compare
821f182 to
00bb6df
Compare
00bb6df to
20b69c1
Compare
|
@greptile Please review the current head 20b69c1 against the foundation base. The same Financials integration now preserves 24 Payables tools and adds 84 Receivables, Expenses, and GL tools plus eight selectors. Current-head GitHub CI is green and independent integration review has converged; the PR description documents contracts, gated exclusions, and scope boundaries. |
Summary
feat/oracle-fusion-foundation/ feat(oracle-fusion): add shared integration foundation #7427.NetSuiteIcondirectly.Type of Change
Coverage
Added selectors: Receivables invoices, credit memos, receipts, customer accounts and account sites; expense reports; GL ledgers and journal batches. All use credential-only context, bounded pagination, safe option projection, and detail resolution.
Contracts and exclusions
{ items, count, hasMore, limit, offset, totalResults? }. Default page size 50, maximum 100, default offset 0; no automatic all-page retrieval. Estimated totals do not determine pagination.#MISSING, andN/A.Ssucceeds; error-bearing expense submission results are preserved as failures. Cash-advance removal distinguishesY/N. Successful deletion accepts an empty response.ReceivablesNumberis notCustomerTransactionId; no automatic duplicate AR creation or ambiguous cross-domain lookup.Three contract-gated actions are deliberately absent (no placeholder tools):
ReversalFlagrepresentations remain insufficiently specifiedThese are Oracle contract gates, not foundation defects. No Oracle tenant was mutated or live-verified.
Official API evidence
Reviewed current 26c endpoint inventories, methods, request/response schemas, selected fields, child hierarchies, query controls, and action results before implementation.
Expense,ExpenseDistribution,ExpenseItemization,processingDetails, andExpensePaymentchildren.Endpoint-specific contract references
Permissions and setup
AR_CREATE_RECEIVABLES_INVOICE_PRIVfor invoice GET/POST/PATCH. Do not infer it grants every delete or lifecycle action. See invoice setup.AR_CREATE_RECEIVABLES_RECEIPT_PRIVfor POST fromAR_MANAGE_RECEIVABLES_RECEIPT_PRIVfor GET/DELETE; confirm PATCH/apply authorization separately. See receipt setup.Precedents and scope
tools/netsuite/{create_record,update_record,delete_record}.ts; typed nested inputs intools/sap_s4hana/create_sales_order.ts; normalized deletion intools/stripe/delete_invoice.tstools/stripe/finalize_invoice.ts,tools/sap_concur/submit_expense_report.tsblocks/blocks/{netsuite,sap_s4hana,sap_concur}.tslib/internal/sap-s4hana/{operations,schema,execute-tool}.tsand corresponding testslib/selectors/server/providers/netsuite.tsandnetsuite.test.tsPaths above are relative to
apps/sim/. Expansion footprint against the original Financials revision: 84 new action files, 16 modified source files, five generated outputs; no deletes. Existingexecute-tool.ts,oauth/types.ts, both selector types files, and original Payables action files remain unchanged.Testing
Candidate:
20b69c10b6ce499f144979a28bff3d043567e1e5. Foundation:15294a2b40aaeb176f6ec79599ce790eadd969e9.GitHub run 34001784692 completed successfully for this exact candidate: Lint and Test (including audits, all workspace type checks and tests), both remaining test shards, and Build App.
No local tests, builds, lint, type checks, or audits were run for this expansion. Only the required repository generators ran locally. Product tests use real foundation protocol/identifier/serialization helpers with network and credential seams mocked.
Coverage includes resource addressing and parent identifiers, restricted write bodies, exact-integer receipt application, opaque expense/journal round trips, business-result failures, no-content deletion, balance missing-value markers, selector pagination/credential binding, and unchanged Payables behavior.
Independent
validate-integrationreview, includingvalidate-selector,memory-load-check, every Financials source/test file, and the complete foundation execution path, converged on this exact candidate with no unresolved substantive Financials findings. The Expense/GL output-metadata argument-order defect was fixed and regenerated; the Receivables nullable-ID concern was closed against Oracle's nonnullable schemas. Greptile review completed on this exact head with 5/5, no actionable new findings, and zero unresolved review threads across all pages. The PR is open and mergeable against its foundation base.Separately owned findings
clientSecretbefore minting/persistence (apps/sim/lib/credentials/service-account-secret.ts:304). Fusion's password minter preserves supplied bytes. Oracle's 26c password policy permits spaces. Supporting passwords with meaningful surrounding spaces requires a separate shared-credential correction; no such repair is bundled here.Checklist