From 2ae057cc907b67687664505668566e1ddd20800d Mon Sep 17 00:00:00 2001 From: Paulo Porto Date: Tue, 13 Oct 2026 11:14:12 -0300 Subject: [PATCH] Release 1.0.3 --- README.md | 21 +++++++++++++++++---- dist/chromium/manifest.json | 2 +- dist/firefox/manifest.json | 2 +- docs/browser-smoke.md | 2 +- package.json | 2 +- scripts/build.mjs | 2 +- tests/characterization.test.cjs | 2 +- 7 files changed, 23 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 6b28b5d..d146069 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Opportunities Extension 1.0.2 +# Opportunities Extension 1.0.3 Browser extension that adds the "Opportunities Extension" shortcut to the permitted Oracle Fusion pages, retrieves opportunities, and displays them in a filterable table or calendar. @@ -54,7 +54,8 @@ Reference changes and modal reopenings reuse that result. Users with `SALES_REP` do not trigger CRM Service Request or Workload Actions queries or see their badges. If identity or roles cannot be validated, only these two features stay disabled; other opportunity features continue. Reload the page to refresh identity/roles. -The unused identity token is discarded and redacted from debug responses. +The identity token is retained in debug responses and hidden by default; the +explicit sensitive-values toggle reveals the original value. Consumer token recovery also handles HTTP 401/403, in addition to HTTP 200 with invalid JSON. It opens the existing SPA session URL in an inactive temporary tab, @@ -268,8 +269,9 @@ HTTP methods/statuses, request/response sections and JSON tokens. Highlighting uses safe text nodes only after the existing sensitive-value masking. Compact JSON, supported protection prefixes and JSON documents wrapped in strings are normalized and indented, including while sensitive values are visible. Large JSON responses -are captured as bounded, valid JSON previews with an explicit omission notice, -preserving indentation, highlighting and sensitive-field masking. Already incomplete +are captured in full, preserving indentation, highlighting and sensitive-field +masking. Original sensitive values are retained for explicit reveal, including +identity, tokenrelay and catalog tokens. Already incomplete or invalid JSON remains plain text. The visibility toggle retains its existing behavior. Focus, expansion and timeline scroll position survive log updates. @@ -335,6 +337,17 @@ a focused chart fixture. Stop the server with Ctrl+C when finished. - Improved compact layouts, customer actions, session recovery and completion-badge fade-out behavior. - Regenerated Chromium/Edge and Firefox distributions. Validation uses automated, browser-independent tests; installed-browser smoke tests were not performed for this release. +## Release 1.0.3 - 2026-10-13 + +- Added monthly and weekly calendar views with stage colors, fiscal week labels, daily counts and overflow details. +- Added searchable Action forms, required-field validation, saving and local badge updates. +- Added Service Request creation with dynamic lookups, payload/header confirmation and session recovery. +- Added Internal Service Request details and creation. Save reads parent data from `requestSRInfo`, resolves the current resource user, and links the new record using the parent `SrId`. +- Internal SR creation uses Session authentication, JSON, Origin and the observed App Builder client ID. Customer deadlines remain date-only; internal deadlines use midnight UTC ISO timestamps. +- Improved activity filters, cache reuse, Refresh all, progress indicators and compact layouts. +- Debug retains complete response bodies and reveals original sensitive values through the visibility toggle; values are hidden by default. +- Regenerated Chromium/Edge and Firefox distributions. Automated tests use synthetic data; real Oracle creation and installed-browser smoke tests are not part of release validation. + ## Loading in Development Mode ### Chrome or Microsoft Edge diff --git a/dist/chromium/manifest.json b/dist/chromium/manifest.json index d6b5980..fac0011 100644 --- a/dist/chromium/manifest.json +++ b/dist/chromium/manifest.json @@ -2,7 +2,7 @@ "manifest_version": 3, "name": "Opportunities Extension", "description": "Adiciona um atalho de Opportunities Extension nas paginas Oracle Fusion permitidas.", - "version": "1.0.2", + "version": "1.0.3", "permissions": [ "cookies", "storage", diff --git a/dist/firefox/manifest.json b/dist/firefox/manifest.json index 12552b0..6b119c8 100644 --- a/dist/firefox/manifest.json +++ b/dist/firefox/manifest.json @@ -2,7 +2,7 @@ "manifest_version": 3, "name": "Opportunities Extension", "description": "Adiciona um atalho de Opportunities Extension nas paginas Oracle Fusion permitidas.", - "version": "1.0.2", + "version": "1.0.3", "permissions": [ "cookies", "storage", diff --git a/docs/browser-smoke.md b/docs/browser-smoke.md index 59236f2..e034d0b 100644 --- a/docs/browser-smoke.md +++ b/docs/browser-smoke.md @@ -12,7 +12,7 @@ pass until executed and recorded separately for each browser. - Run `node scripts/build.mjs --check` and `node scripts/test.cjs` first. - Load `dist/chromium` using Load unpacked in Chrome/Edge, or load `dist/firefox/manifest.json` as a temporary Firefox add-on. Verify the source - directory and version 1.0.2; avoid testing a previously installed stale copy. + directory and version 1.0.3; avoid testing a previously installed stale copy. - Keep debug secrets hidden. Record only status codes, request names, durations and sanitized errors. Do not export real tokens, response bodies or account data. - AI generation and tests requiring a deliberately expired session must use an diff --git a/package.json b/package.json index a4f5160..db9a02a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "opportunities-extension", - "version": "1.0.2", + "version": "1.0.3", "private": true, "type": "module", "scripts": { diff --git a/scripts/build.mjs b/scripts/build.mjs index b7b4bf4..bcc59c6 100644 --- a/scripts/build.mjs +++ b/scripts/build.mjs @@ -14,7 +14,7 @@ const baseManifest = { manifest_version: 3, name: "Opportunities Extension", description: "Adiciona um atalho de Opportunities Extension nas paginas Oracle Fusion permitidas.", - version: "1.0.2", + version: "1.0.3", permissions: [ "cookies", "storage", diff --git a/tests/characterization.test.cjs b/tests/characterization.test.cjs index 13c4dfe..5f6c811 100644 --- a/tests/characterization.test.cjs +++ b/tests/characterization.test.cjs @@ -40,7 +40,7 @@ test("distribution contracts: manifests, execution boundaries and deterministic const base = { manifest_version: 3, name: "Opportunities Extension", description: "Adiciona um atalho de Opportunities Extension nas paginas Oracle Fusion permitidas.", - version: "1.0.2", permissions: ["cookies", "storage", "webRequest", "declarativeNetRequestWithHostAccess"], + version: "1.0.3", permissions: ["cookies", "storage", "webRequest", "declarativeNetRequestWithHostAccess"], host_permissions: ["https://eeho.fa.us2.oraclecloud.com/*", "https://spa.oracle.com/*", "https://comcipapic-oalprod.integration.ocp.oraclecloud.com/*"], content_scripts: [{ matches: ["https://eeho.fa.us2.oraclecloud.com/hcmUI/faces/FuseWelcome*", "https://eeho.fa.us2.oraclecloud.com/fscmUI/faces/FuseWelcome*"],