Skip to content

Release/26.1.4#278

Merged
Devesh-Skyflow merged 159 commits into
mainfrom
release/26.1.4
May 25, 2026
Merged

Release/26.1.4#278
Devesh-Skyflow merged 159 commits into
mainfrom
release/26.1.4

Conversation

@aadarsh-st
Copy link
Copy Markdown
Collaborator

@aadarsh-st aadarsh-st commented Jan 28, 2026

Summary
Deprecation strategy (SK-2812): Deprecated snake_case error fields (http_code, http_status, request_ID, grpc_code) on SkyflowError.error in favor of camelCase equivalents (httpCode, httpStatus, requestId, grpcCode). Deprecated accessors emit a WARN-level log and will be removed in v3. Public interface cleaned up via api-extractor contract snapshot.
Missing request_id propagation (SK-2182): Fixed requestId missing from error responses in several vault and connection controller code paths.
Constants refactor (SK-2812 / SK-2495): Replaced hardcoded string literals across controllers and utils with named constant objects (SDK, HTTP_HEADER, CONTENT_TYPE, FILE_FORMAT_TYPE, ENCODING_TYPE, DETECT_STATUS, etc.).
Detect controller fixes (SK-2812): Switched file reads/writes to async (fs.promises.readFile, decodeBase64AndSaveToFile), fixed Uint8Array buffer wrapping for File constructor, replaced magic strings with constants.
Custom tokenUri support (SK-2503): Service account auth now accepts a custom tokenUri option for non-standard token endpoints.
jwt-decode library upgrade (SK-2528): Pinned to v3.1.2; v4+ is ESM-only and breaks CJS builds.
Invoke connection content-type fix (SK-2536): Aligned Content-Type in request and response handling for connection invocations.
Public interface consistency (SK-2645): Fixed inconsistencies found in extracted public interfaces doc; merged fixes from release/26.1.5 and release/26.2.2.
SDK issue fixes (SK-2510): Miscellaneous fixes identified post-release.
Linter added (SK-2455): ESLint + Prettier wired into CI (common-ci.yml).
Deprecated samples (SK-2841): Added samples/deprecated/ with v1-style vault API examples for migration reference.
Test coverage: 100% coverage maintained. New tests for deprecation warnings, error structure, connection controller, detect controller, vault controller, and service-account token flow.

@github-actions
Copy link
Copy Markdown

Gitleaks Findings: No secrets detected. Safe to proceed!

@github-actions
Copy link
Copy Markdown

Semgrep Findings: Issues with Error level severity are found (Error is Highest severity in Semgrep), Please resolve the issues before merging.

@aadarsh-st aadarsh-st requested a review from Copilot January 28, 2026 08:39
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR refactors the codebase to replace magic strings with named constants, improving maintainability and consistency. The changes also introduce ESLint configuration with TypeScript support to enforce camelCase naming and prevent the use of string literals for object access.

Changes:

  • Introduced new constant groups (SDK, SKYFLOW, CONFIG, HTTP_HEADER, CONTENT_TYPE, ENCODING_TYPE, etc.) to replace hardcoded string literals throughout the codebase
  • Updated ESLint configuration to use typescript-eslint with rules enforcing camelCase and restricting magic strings
  • Added eslint-disable comments for unavoidable camelCase violations (e.g., external library usage with snake_case)

Reviewed changes

Copilot reviewed 18 out of 19 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
src/utils/index.ts Introduced constant groups to centralize magic strings
src/vault/skyflow/index.ts Replaced string literals with CONFIG constants
src/vault/controller/vault/index.ts Replaced string literals with SDK, SKYFLOW, CONTENT_TYPE, and ENCODING_TYPE constants
src/vault/controller/detect/index.ts Replaced string literals with SDK, FILE_PROCESSING, DETECT_STATUS, and ENCODING_TYPE constants
src/vault/controller/connections/index.ts Replaced string literals with SDK, SKYFLOW, REQUEST, and CONTENT_TYPE constants
src/vault/client/index.ts Replaced string literals with HTTP_HEADER, CONTENT_TYPE, BOOLEAN_STRING, and HTTP_STATUS_CODE constants
src/utils/validations/index.ts Replaced string literals with CONFIG, SKYFLOW, and API_KEY constants
src/utils/jwt-utils/index.ts Added eslint-disable comment for jwt_decode import
src/service-account/index.ts Replaced string literals with HTTP_HEADER, CONTENT_TYPE, HTTP_STATUS_CODE, JWT, and ENCODING_TYPE constants
test/vault/utils/utils.test.js Added eslint-disable comment for jwt_decode import
test/vault/utils/jwt-utils/jwt.test.js Added eslint-disable comment for jwt_decode import
test/vault/controller/vault.test.js Updated mock to include new constant structures
test/vault/controller/detect.test.js Updated mock to include new constants and improved test structure with better documentation
test/vault/controller/connection.test.js Updated references to use SDK and SKYFLOW constant groups
src/vault/model/options/deidentify-file/bleep-audio/index.ts Added eslint-disable comment for camelCase
samples/vault-api/data-residency.ts Added eslint-disable comment for skyflow_id destructuring
package.json Updated version, added ESLint dependencies, and modified lint scripts to include TypeScript files
eslint.config.mjs Created new ESLint configuration with TypeScript support and custom rules

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread eslint.config.mjs
Comment thread test/vault/controller/detect.test.js
@github-actions
Copy link
Copy Markdown

Gitleaks Findings: No secrets detected. Safe to proceed!

@github-actions
Copy link
Copy Markdown

Gitleaks Findings: No secrets detected. Safe to proceed!

@github-actions
Copy link
Copy Markdown

Semgrep Findings: Issues with Error level severity are found (Error is Highest severity in Semgrep), Please resolve the issues before merging.

1 similar comment
@github-actions
Copy link
Copy Markdown

Semgrep Findings: Issues with Error level severity are found (Error is Highest severity in Semgrep), Please resolve the issues before merging.

@github-actions
Copy link
Copy Markdown

Gitleaks Findings: No secrets detected. Safe to proceed!

@github-actions
Copy link
Copy Markdown

Gitleaks Findings: No secrets detected. Safe to proceed!

@github-actions
Copy link
Copy Markdown

Gitleaks Findings: No secrets detected. Safe to proceed!

@github-actions
Copy link
Copy Markdown

Semgrep Findings: Issues with Error level severity are found (Error is Highest severity in Semgrep), Please resolve the issues before merging.

1 similar comment
@github-actions
Copy link
Copy Markdown

Semgrep Findings: Issues with Error level severity are found (Error is Highest severity in Semgrep), Please resolve the issues before merging.

@github-actions
Copy link
Copy Markdown

Gitleaks Findings: No secrets detected. Safe to proceed!

@github-actions
Copy link
Copy Markdown

Semgrep Findings: Issues with Error level severity are found (Error is Highest severity in Semgrep), Please resolve the issues before merging.

@github-actions
Copy link
Copy Markdown

Gitleaks Findings: No secrets detected. Safe to proceed!

@github-actions
Copy link
Copy Markdown

Semgrep Findings: Issues with Error level severity are found (Error is Highest severity in Semgrep), Please resolve the issues before merging.

@Devesh-Skyflow Devesh-Skyflow merged commit 98e80a1 into main May 25, 2026
7 checks passed
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.

5 participants