@opensip-cli/checks-typescript 0.1.10 → 0.1.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -2
- package/dist/__tests__/all-checks-execute.test.d.ts.map +1 -1
- package/dist/__tests__/all-checks-execute.test.js +0 -1
- package/dist/__tests__/all-checks-execute.test.js.map +1 -1
- package/dist/__tests__/behavior-fixtures-2.test.d.ts.map +1 -1
- package/dist/__tests__/behavior-fixtures-2.test.js +0 -1
- package/dist/__tests__/behavior-fixtures-2.test.js.map +1 -1
- package/dist/__tests__/behavior-fixtures-3.test.d.ts.map +1 -1
- package/dist/__tests__/behavior-fixtures-3.test.js +0 -1
- package/dist/__tests__/behavior-fixtures-3.test.js.map +1 -1
- package/dist/__tests__/behavior-fixtures-4.test.d.ts.map +1 -1
- package/dist/__tests__/behavior-fixtures-4.test.js +0 -1
- package/dist/__tests__/behavior-fixtures-4.test.js.map +1 -1
- package/dist/__tests__/behavior-fixtures-5.test.d.ts.map +1 -1
- package/dist/__tests__/behavior-fixtures-5.test.js +0 -1
- package/dist/__tests__/behavior-fixtures-5.test.js.map +1 -1
- package/dist/__tests__/behavior-fixtures-6.test.js +10 -0
- package/dist/__tests__/behavior-fixtures-6.test.js.map +1 -1
- package/dist/__tests__/behavior-fixtures.test.d.ts.map +1 -1
- package/dist/__tests__/behavior-fixtures.test.js +2 -4
- package/dist/__tests__/behavior-fixtures.test.js.map +1 -1
- package/dist/__tests__/branch-fixtures-2.test.d.ts.map +1 -1
- package/dist/__tests__/branch-fixtures-2.test.js +0 -1
- package/dist/__tests__/branch-fixtures-2.test.js.map +1 -1
- package/dist/__tests__/branch-fixtures-3.test.d.ts.map +1 -1
- package/dist/__tests__/branch-fixtures-3.test.js +0 -1
- package/dist/__tests__/branch-fixtures-3.test.js.map +1 -1
- package/dist/__tests__/branch-fixtures.test.d.ts.map +1 -1
- package/dist/__tests__/branch-fixtures.test.js +0 -1
- package/dist/__tests__/branch-fixtures.test.js.map +1 -1
- package/dist/checks/architecture/__tests__/live-view-through-cli-live.test.d.ts +2 -0
- package/dist/checks/architecture/__tests__/live-view-through-cli-live.test.d.ts.map +1 -0
- package/dist/checks/architecture/__tests__/live-view-through-cli-live.test.js +13 -0
- package/dist/checks/architecture/__tests__/live-view-through-cli-live.test.js.map +1 -0
- package/dist/checks/architecture/contracts-schema-consistency.d.ts.map +1 -1
- package/dist/checks/architecture/contracts-schema-consistency.js +0 -3
- package/dist/checks/architecture/contracts-schema-consistency.js.map +1 -1
- package/dist/checks/architecture/drizzle-orm-migration-guardrails.d.ts.map +1 -1
- package/dist/checks/architecture/drizzle-orm-migration-guardrails.js +1 -0
- package/dist/checks/architecture/drizzle-orm-migration-guardrails.js.map +1 -1
- package/dist/checks/architecture/index.d.ts +1 -0
- package/dist/checks/architecture/index.d.ts.map +1 -1
- package/dist/checks/architecture/index.js +1 -0
- package/dist/checks/architecture/index.js.map +1 -1
- package/dist/checks/architecture/live-view-through-cli-live.d.ts +8 -0
- package/dist/checks/architecture/live-view-through-cli-live.d.ts.map +1 -0
- package/dist/checks/architecture/live-view-through-cli-live.js +43 -0
- package/dist/checks/architecture/live-view-through-cli-live.js.map +1 -0
- package/dist/checks/architecture/missing-type-exports.d.ts.map +1 -1
- package/dist/checks/architecture/missing-type-exports.js +1 -1
- package/dist/checks/architecture/missing-type-exports.js.map +1 -1
- package/dist/checks/architecture/module-coupling-fan-out.d.ts.map +1 -1
- package/dist/checks/architecture/module-coupling-fan-out.js +6 -2
- package/dist/checks/architecture/module-coupling-fan-out.js.map +1 -1
- package/dist/checks/architecture/no-bootstrap-tool-import.d.ts.map +1 -1
- package/dist/checks/architecture/no-bootstrap-tool-import.js +1 -0
- package/dist/checks/architecture/no-bootstrap-tool-import.js.map +1 -1
- package/dist/checks/architecture/no-run-done-result.d.ts.map +1 -1
- package/dist/checks/architecture/no-run-done-result.js +1 -0
- package/dist/checks/architecture/no-run-done-result.js.map +1 -1
- package/dist/checks/architecture/package-json-exports-field.d.ts.map +1 -1
- package/dist/checks/architecture/package-json-exports-field.js +1 -1
- package/dist/checks/architecture/package-json-exports-field.js.map +1 -1
- package/dist/checks/architecture/phantom-dependency-detection.d.ts.map +1 -1
- package/dist/checks/architecture/phantom-dependency-detection.js +0 -4
- package/dist/checks/architecture/phantom-dependency-detection.js.map +1 -1
- package/dist/checks/architecture/tsconfig-extends-validation.d.ts.map +1 -1
- package/dist/checks/architecture/tsconfig-extends-validation.js +0 -2
- package/dist/checks/architecture/tsconfig-extends-validation.js.map +1 -1
- package/dist/checks/quality/api/fastify-schema-coverage.d.ts.map +1 -1
- package/dist/checks/quality/api/fastify-schema-coverage.js +21 -10
- package/dist/checks/quality/api/fastify-schema-coverage.js.map +1 -1
- package/dist/checks/quality/code-structure/__tests__/duplicate-utility-lang-substrate.test.d.ts +5 -0
- package/dist/checks/quality/code-structure/__tests__/duplicate-utility-lang-substrate.test.d.ts.map +1 -0
- package/dist/checks/quality/code-structure/__tests__/duplicate-utility-lang-substrate.test.js +17 -0
- package/dist/checks/quality/code-structure/__tests__/duplicate-utility-lang-substrate.test.js.map +1 -0
- package/dist/checks/quality/code-structure/duplicate-utility-functions-config.d.ts +18 -0
- package/dist/checks/quality/code-structure/duplicate-utility-functions-config.d.ts.map +1 -0
- package/dist/checks/quality/code-structure/duplicate-utility-functions-config.js +36 -0
- package/dist/checks/quality/code-structure/duplicate-utility-functions-config.js.map +1 -0
- package/dist/checks/quality/code-structure/duplicate-utility-functions-helpers.d.ts +15 -0
- package/dist/checks/quality/code-structure/duplicate-utility-functions-helpers.d.ts.map +1 -0
- package/dist/checks/quality/code-structure/duplicate-utility-functions-helpers.js +288 -0
- package/dist/checks/quality/code-structure/duplicate-utility-functions-helpers.js.map +1 -0
- package/dist/checks/quality/code-structure/duplicate-utility-functions.d.ts +1 -26
- package/dist/checks/quality/code-structure/duplicate-utility-functions.d.ts.map +1 -1
- package/dist/checks/quality/code-structure/duplicate-utility-functions.js +3 -407
- package/dist/checks/quality/code-structure/duplicate-utility-functions.js.map +1 -1
- package/dist/checks/quality/data-integrity/__tests__/null-safety-fp.test.js +39 -2
- package/dist/checks/quality/data-integrity/__tests__/null-safety-fp.test.js.map +1 -1
- package/dist/checks/quality/data-integrity/array-validation-detectors.d.ts +17 -0
- package/dist/checks/quality/data-integrity/array-validation-detectors.d.ts.map +1 -0
- package/dist/checks/quality/data-integrity/array-validation-detectors.js +184 -0
- package/dist/checks/quality/data-integrity/array-validation-detectors.js.map +1 -0
- package/dist/checks/quality/data-integrity/array-validation.d.ts +0 -2
- package/dist/checks/quality/data-integrity/array-validation.d.ts.map +1 -1
- package/dist/checks/quality/data-integrity/array-validation.js +2 -360
- package/dist/checks/quality/data-integrity/array-validation.js.map +1 -1
- package/dist/checks/quality/data-integrity/database-schema-validation.d.ts.map +1 -1
- package/dist/checks/quality/data-integrity/database-schema-validation.js +0 -1
- package/dist/checks/quality/data-integrity/database-schema-validation.js.map +1 -1
- package/dist/checks/quality/data-integrity/null-safety-analyze.d.ts +33 -0
- package/dist/checks/quality/data-integrity/null-safety-analyze.d.ts.map +1 -0
- package/dist/checks/quality/data-integrity/null-safety-analyze.js +164 -0
- package/dist/checks/quality/data-integrity/null-safety-analyze.js.map +1 -0
- package/dist/checks/quality/data-integrity/null-safety-config.d.ts +50 -0
- package/dist/checks/quality/data-integrity/null-safety-config.d.ts.map +1 -0
- package/dist/checks/quality/data-integrity/null-safety-config.js +69 -0
- package/dist/checks/quality/data-integrity/null-safety-config.js.map +1 -0
- package/dist/checks/quality/data-integrity/null-safety-heuristics.d.ts +76 -0
- package/dist/checks/quality/data-integrity/null-safety-heuristics.d.ts.map +1 -0
- package/dist/checks/quality/data-integrity/null-safety-heuristics.js +276 -0
- package/dist/checks/quality/data-integrity/null-safety-heuristics.js.map +1 -0
- package/dist/checks/quality/data-integrity/null-safety-prefixes.d.ts +13 -0
- package/dist/checks/quality/data-integrity/null-safety-prefixes.d.ts.map +1 -0
- package/dist/checks/quality/data-integrity/null-safety-prefixes.js +333 -0
- package/dist/checks/quality/data-integrity/null-safety-prefixes.js.map +1 -0
- package/dist/checks/quality/data-integrity/null-safety.d.ts +2 -82
- package/dist/checks/quality/data-integrity/null-safety.d.ts.map +1 -1
- package/dist/checks/quality/data-integrity/null-safety.js +3 -796
- package/dist/checks/quality/data-integrity/null-safety.js.map +1 -1
- package/dist/checks/quality/frontend/test-only-frontend-modules.d.ts.map +1 -1
- package/dist/checks/quality/frontend/test-only-frontend-modules.js +0 -2
- package/dist/checks/quality/frontend/test-only-frontend-modules.js.map +1 -1
- package/dist/checks/quality/linting/typescript-frontend.d.ts.map +1 -1
- package/dist/checks/quality/linting/typescript-frontend.js +1 -0
- package/dist/checks/quality/linting/typescript-frontend.js.map +1 -1
- package/dist/checks/quality/observability/logger-event-name-format.d.ts.map +1 -1
- package/dist/checks/quality/observability/logger-event-name-format.js +0 -1
- package/dist/checks/quality/observability/logger-event-name-format.js.map +1 -1
- package/dist/checks/quality/observability/no-hardcoded-correlation-id.d.ts.map +1 -1
- package/dist/checks/quality/observability/no-hardcoded-correlation-id.js +2 -3
- package/dist/checks/quality/observability/no-hardcoded-correlation-id.js.map +1 -1
- package/dist/checks/quality/patterns/__tests__/async-waterfall-sequential.test.d.ts +8 -0
- package/dist/checks/quality/patterns/__tests__/async-waterfall-sequential.test.d.ts.map +1 -0
- package/dist/checks/quality/patterns/__tests__/async-waterfall-sequential.test.js +87 -0
- package/dist/checks/quality/patterns/__tests__/async-waterfall-sequential.test.js.map +1 -0
- package/dist/checks/quality/patterns/__tests__/error-handling-probes.test.d.ts +2 -0
- package/dist/checks/quality/patterns/__tests__/error-handling-probes.test.d.ts.map +1 -0
- package/dist/checks/quality/patterns/__tests__/error-handling-probes.test.js +51 -0
- package/dist/checks/quality/patterns/__tests__/error-handling-probes.test.js.map +1 -0
- package/dist/checks/quality/patterns/__tests__/result-pattern-registration-guards.test.d.ts +2 -0
- package/dist/checks/quality/patterns/__tests__/result-pattern-registration-guards.test.d.ts.map +1 -0
- package/dist/checks/quality/patterns/__tests__/result-pattern-registration-guards.test.js +89 -0
- package/dist/checks/quality/patterns/__tests__/result-pattern-registration-guards.test.js.map +1 -0
- package/dist/checks/quality/patterns/__tests__/throws-documentation-analyze.test.d.ts +5 -0
- package/dist/checks/quality/patterns/__tests__/throws-documentation-analyze.test.d.ts.map +1 -0
- package/dist/checks/quality/patterns/__tests__/throws-documentation-analyze.test.js +78 -0
- package/dist/checks/quality/patterns/__tests__/throws-documentation-analyze.test.js.map +1 -0
- package/dist/checks/quality/patterns/__tests__/toctou-fp.test.js +44 -0
- package/dist/checks/quality/patterns/__tests__/toctou-fp.test.js.map +1 -1
- package/dist/checks/quality/patterns/async-waterfall-analysis.d.ts +17 -0
- package/dist/checks/quality/patterns/async-waterfall-analysis.d.ts.map +1 -0
- package/dist/checks/quality/patterns/async-waterfall-analysis.js +215 -0
- package/dist/checks/quality/patterns/async-waterfall-analysis.js.map +1 -0
- package/dist/checks/quality/patterns/async-waterfall-branch-keys.d.ts +6 -0
- package/dist/checks/quality/patterns/async-waterfall-branch-keys.d.ts.map +1 -0
- package/dist/checks/quality/patterns/async-waterfall-branch-keys.js +54 -0
- package/dist/checks/quality/patterns/async-waterfall-branch-keys.js.map +1 -0
- package/dist/checks/quality/patterns/async-waterfall-detection.d.ts.map +1 -1
- package/dist/checks/quality/patterns/async-waterfall-detection.js +3 -352
- package/dist/checks/quality/patterns/async-waterfall-detection.js.map +1 -1
- package/dist/checks/quality/patterns/containing-function-name.d.ts +3 -0
- package/dist/checks/quality/patterns/containing-function-name.d.ts.map +1 -0
- package/dist/checks/quality/patterns/containing-function-name.js +21 -0
- package/dist/checks/quality/patterns/containing-function-name.js.map +1 -0
- package/dist/checks/quality/patterns/error-handling-quality.d.ts +3 -0
- package/dist/checks/quality/patterns/error-handling-quality.d.ts.map +1 -1
- package/dist/checks/quality/patterns/error-handling-quality.js +150 -30
- package/dist/checks/quality/patterns/error-handling-quality.js.map +1 -1
- package/dist/checks/quality/patterns/result-pattern-consistency.d.ts +3 -0
- package/dist/checks/quality/patterns/result-pattern-consistency.d.ts.map +1 -1
- package/dist/checks/quality/patterns/result-pattern-consistency.js +136 -69
- package/dist/checks/quality/patterns/result-pattern-consistency.js.map +1 -1
- package/dist/checks/quality/patterns/throws-documentation-analyze.d.ts +14 -0
- package/dist/checks/quality/patterns/throws-documentation-analyze.d.ts.map +1 -0
- package/dist/checks/quality/patterns/throws-documentation-analyze.js +352 -0
- package/dist/checks/quality/patterns/throws-documentation-analyze.js.map +1 -0
- package/dist/checks/quality/patterns/throws-documentation-constants.d.ts +15 -0
- package/dist/checks/quality/patterns/throws-documentation-constants.d.ts.map +1 -0
- package/dist/checks/quality/patterns/throws-documentation-constants.js +94 -0
- package/dist/checks/quality/patterns/throws-documentation-constants.js.map +1 -0
- package/dist/checks/quality/patterns/throws-documentation.d.ts +1 -11
- package/dist/checks/quality/patterns/throws-documentation.d.ts.map +1 -1
- package/dist/checks/quality/patterns/throws-documentation.js +4 -472
- package/dist/checks/quality/patterns/throws-documentation.js.map +1 -1
- package/dist/checks/quality/patterns/toctou-race-condition-classify.d.ts +23 -0
- package/dist/checks/quality/patterns/toctou-race-condition-classify.d.ts.map +1 -0
- package/dist/checks/quality/patterns/toctou-race-condition-classify.js +125 -0
- package/dist/checks/quality/patterns/toctou-race-condition-classify.js.map +1 -0
- package/dist/checks/quality/patterns/toctou-race-condition-collection.d.ts +24 -0
- package/dist/checks/quality/patterns/toctou-race-condition-collection.d.ts.map +1 -0
- package/dist/checks/quality/patterns/toctou-race-condition-collection.js +248 -0
- package/dist/checks/quality/patterns/toctou-race-condition-collection.js.map +1 -0
- package/dist/checks/quality/patterns/toctou-race-condition-constants.d.ts +32 -0
- package/dist/checks/quality/patterns/toctou-race-condition-constants.d.ts.map +1 -0
- package/dist/checks/quality/patterns/toctou-race-condition-constants.js +116 -0
- package/dist/checks/quality/patterns/toctou-race-condition-constants.js.map +1 -0
- package/dist/checks/quality/patterns/toctou-race-condition.d.ts +1 -29
- package/dist/checks/quality/patterns/toctou-race-condition.d.ts.map +1 -1
- package/dist/checks/quality/patterns/toctou-race-condition.js +11 -536
- package/dist/checks/quality/patterns/toctou-race-condition.js.map +1 -1
- package/dist/checks/quality/unused-config-options.d.ts.map +1 -1
- package/dist/checks/quality/unused-config-options.js +1 -4
- package/dist/checks/quality/unused-config-options.js.map +1 -1
- package/dist/checks/resilience/__tests__/context-mutation.test.js +8 -0
- package/dist/checks/resilience/__tests__/context-mutation.test.js.map +1 -1
- package/dist/checks/resilience/__tests__/detached-promises-sync-detection.test.d.ts +2 -0
- package/dist/checks/resilience/__tests__/detached-promises-sync-detection.test.d.ts.map +1 -0
- package/dist/checks/resilience/__tests__/detached-promises-sync-detection.test.js +98 -0
- package/dist/checks/resilience/__tests__/detached-promises-sync-detection.test.js.map +1 -0
- package/dist/checks/resilience/callback-invocation-safe.d.ts.map +1 -1
- package/dist/checks/resilience/callback-invocation-safe.js +0 -1
- package/dist/checks/resilience/callback-invocation-safe.js.map +1 -1
- package/dist/checks/resilience/context-leakage.d.ts.map +1 -1
- package/dist/checks/resilience/context-leakage.js +1 -0
- package/dist/checks/resilience/context-leakage.js.map +1 -1
- package/dist/checks/resilience/context-mutation.d.ts.map +1 -1
- package/dist/checks/resilience/context-mutation.js +30 -4
- package/dist/checks/resilience/context-mutation.js.map +1 -1
- package/dist/checks/resilience/detached-promises-detection.d.ts +7 -0
- package/dist/checks/resilience/detached-promises-detection.d.ts.map +1 -0
- package/dist/checks/resilience/detached-promises-detection.js +228 -0
- package/dist/checks/resilience/detached-promises-detection.js.map +1 -0
- package/dist/checks/resilience/detached-promises-sync-constants.d.ts +36 -0
- package/dist/checks/resilience/detached-promises-sync-constants.d.ts.map +1 -0
- package/dist/checks/resilience/detached-promises-sync-constants.js +299 -0
- package/dist/checks/resilience/detached-promises-sync-constants.js.map +1 -0
- package/dist/checks/resilience/detached-promises-sync-detection.d.ts +14 -0
- package/dist/checks/resilience/detached-promises-sync-detection.d.ts.map +1 -0
- package/dist/checks/resilience/detached-promises-sync-detection.js +69 -0
- package/dist/checks/resilience/detached-promises-sync-detection.js.map +1 -0
- package/dist/checks/resilience/detached-promises.d.ts +1 -14
- package/dist/checks/resilience/detached-promises.d.ts.map +1 -1
- package/dist/checks/resilience/detached-promises.js +2 -598
- package/dist/checks/resilience/detached-promises.js.map +1 -1
- package/dist/checks/resilience/no-raw-fetch.d.ts.map +1 -1
- package/dist/checks/resilience/no-raw-fetch.js +1 -0
- package/dist/checks/resilience/no-raw-fetch.js.map +1 -1
- package/dist/checks/resilience/no-unbounded-concurrency.d.ts.map +1 -1
- package/dist/checks/resilience/no-unbounded-concurrency.js +1 -0
- package/dist/checks/resilience/no-unbounded-concurrency.js.map +1 -1
- package/dist/checks/security/sql-injection.d.ts.map +1 -1
- package/dist/checks/security/sql-injection.js +0 -1
- package/dist/checks/security/sql-injection.js.map +1 -1
- package/dist/display/architecture.d.ts.map +1 -1
- package/dist/display/architecture.js +1 -0
- package/dist/display/architecture.js.map +1 -1
- package/dist/display/types.d.ts.map +1 -1
- package/dist/display/types.js +0 -1
- package/dist/display/types.js.map +1 -1
- package/package.json +5 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detached-promises-detection.js","sourceRoot":"","sources":["../../../src/checks/resilience/detached-promises-detection.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Built-in synchronous-call allowlists for the detached-promises check.
|
|
3
|
+
* Recipe config augments these via {@link DetachedPromisesConfig}.
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Recipe-config shape for the detached-promises check. Each field augments the
|
|
7
|
+
* built-in defaults; nothing here is required. Project-specific helper names
|
|
8
|
+
* (e.g. opensip's `attachDomainContext`, `sendError`) belong in a recipe's
|
|
9
|
+
* `checks.config['detached-promises']` block, not in built-in defaults.
|
|
10
|
+
*/
|
|
11
|
+
export interface DetachedPromisesConfig extends Record<string, unknown> {
|
|
12
|
+
/** Method/function names that are synchronous (no await needed). */
|
|
13
|
+
additionalSyncFunctions?: readonly string[];
|
|
14
|
+
/** Receiver identifiers (the part before the dot) that are synchronous. */
|
|
15
|
+
additionalSyncReceivers?: readonly string[];
|
|
16
|
+
/** Method-name prefixes that mark a call as synchronous (e.g. `'wire'`). */
|
|
17
|
+
additionalSyncPrefixes?: readonly string[];
|
|
18
|
+
}
|
|
19
|
+
/** Substrings matched against receiver variable names (case-insensitive). */
|
|
20
|
+
export declare const KNOWN_SYNC_RECEIVER_PATTERNS: string[];
|
|
21
|
+
/** File path patterns that indicate CLI commands or route registrations. */
|
|
22
|
+
export declare const FILE_SKIP_PATTERNS: string[];
|
|
23
|
+
/** Method-name prefixes that indicate synchronous calls. */
|
|
24
|
+
export declare const KNOWN_SYNC_PREFIXES: string[];
|
|
25
|
+
/** Method name suffixes that indicate synchronous calls. */
|
|
26
|
+
export declare const KNOWN_SYNC_SUFFIXES: string[];
|
|
27
|
+
export declare function isFireAndForgetPattern(name: string): boolean;
|
|
28
|
+
/** Built-in defaults merged with the recipe's `detached-promises` config slice. */
|
|
29
|
+
export interface EffectiveSyncSets {
|
|
30
|
+
syncFunctions: readonly string[];
|
|
31
|
+
syncReceivers: readonly string[];
|
|
32
|
+
syncPrefixes: readonly string[];
|
|
33
|
+
}
|
|
34
|
+
/** Build effective sync-call lookup lists from defaults + recipe config. */
|
|
35
|
+
export declare function buildEffectiveSyncSets(): EffectiveSyncSets;
|
|
36
|
+
//# sourceMappingURL=detached-promises-sync-constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detached-promises-sync-constants.d.ts","sourceRoot":"","sources":["../../../src/checks/resilience/detached-promises-sync-constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;;;;GAKG;AACH,MAAM,WAAW,sBAAuB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACrE,oEAAoE;IACpE,uBAAuB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5C,2EAA2E;IAC3E,uBAAuB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5C,4EAA4E;IAC5E,sBAAsB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC5C;AAqND,6EAA6E;AAC7E,eAAO,MAAM,4BAA4B,UAaxC,CAAC;AAEF,4EAA4E;AAC5E,eAAO,MAAM,kBAAkB,UAa9B,CAAC;AAEF,4DAA4D;AAC5D,eAAO,MAAM,mBAAmB,UA8B/B,CAAC;AAEF,4DAA4D;AAC5D,eAAO,MAAM,mBAAmB,UAAW,CAAC;AAW5C,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE5D;AAED,mFAAmF;AACnF,MAAM,WAAW,iBAAiB;IAChC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;CACjC;AAED,4EAA4E;AAC5E,wBAAgB,sBAAsB,IAAI,iBAAiB,CAO1D"}
|
|
@@ -0,0 +1,299 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Built-in synchronous-call allowlists for the detached-promises check.
|
|
3
|
+
* Recipe config augments these via {@link DetachedPromisesConfig}.
|
|
4
|
+
*/
|
|
5
|
+
import { getCheckConfig } from '@opensip-cli/fitness';
|
|
6
|
+
/**
|
|
7
|
+
* Known synchronous functions that do NOT return promises. Limited to
|
|
8
|
+
* generic JS / TS / Node defaults; framework-specific entries live in
|
|
9
|
+
* recipe config under `additionalSyncFunctions`.
|
|
10
|
+
*/
|
|
11
|
+
const KNOWN_SYNC_FUNCTION_NAMES = [
|
|
12
|
+
// Node.js sync filesystem / process methods
|
|
13
|
+
'execSync',
|
|
14
|
+
'readFileSync',
|
|
15
|
+
'writeFileSync',
|
|
16
|
+
'existsSync',
|
|
17
|
+
'mkdirSync',
|
|
18
|
+
'rmdirSync',
|
|
19
|
+
'readdirSync',
|
|
20
|
+
'statSync',
|
|
21
|
+
'lstatSync',
|
|
22
|
+
'unlinkSync',
|
|
23
|
+
'copyFileSync',
|
|
24
|
+
'renameSync',
|
|
25
|
+
'accessSync',
|
|
26
|
+
// Timer clearing/scheduling helpers (sync side)
|
|
27
|
+
'clearTimeout',
|
|
28
|
+
'clearInterval',
|
|
29
|
+
'clearImmediate',
|
|
30
|
+
// Console (synchronous)
|
|
31
|
+
'log',
|
|
32
|
+
'info',
|
|
33
|
+
'warn',
|
|
34
|
+
'error',
|
|
35
|
+
'debug',
|
|
36
|
+
'time',
|
|
37
|
+
'timeEnd',
|
|
38
|
+
// Promise resolution helpers (sync wrappers)
|
|
39
|
+
'reject',
|
|
40
|
+
'resolve',
|
|
41
|
+
// Builder / coercion terminators
|
|
42
|
+
'build',
|
|
43
|
+
'toJSON',
|
|
44
|
+
'toString',
|
|
45
|
+
'valueOf',
|
|
46
|
+
// Array methods (synchronous)
|
|
47
|
+
'map',
|
|
48
|
+
'filter',
|
|
49
|
+
'reduce',
|
|
50
|
+
'find',
|
|
51
|
+
'findIndex',
|
|
52
|
+
'some',
|
|
53
|
+
'every',
|
|
54
|
+
'includes',
|
|
55
|
+
'indexOf',
|
|
56
|
+
'slice',
|
|
57
|
+
'concat',
|
|
58
|
+
'join',
|
|
59
|
+
'sort',
|
|
60
|
+
'reverse',
|
|
61
|
+
'push',
|
|
62
|
+
'pop',
|
|
63
|
+
'shift',
|
|
64
|
+
'unshift',
|
|
65
|
+
'splice',
|
|
66
|
+
'fill',
|
|
67
|
+
'copyWithin',
|
|
68
|
+
'flat',
|
|
69
|
+
'flatMap',
|
|
70
|
+
'forEach',
|
|
71
|
+
// String methods (synchronous)
|
|
72
|
+
'toLowerCase',
|
|
73
|
+
'toUpperCase',
|
|
74
|
+
'trim',
|
|
75
|
+
'trimStart',
|
|
76
|
+
'trimEnd',
|
|
77
|
+
'split',
|
|
78
|
+
'replace',
|
|
79
|
+
'replaceAll',
|
|
80
|
+
'substring',
|
|
81
|
+
'substr',
|
|
82
|
+
'charAt',
|
|
83
|
+
'charCodeAt',
|
|
84
|
+
'codePointAt',
|
|
85
|
+
'startsWith',
|
|
86
|
+
'endsWith',
|
|
87
|
+
'padStart',
|
|
88
|
+
'padEnd',
|
|
89
|
+
'repeat',
|
|
90
|
+
'match',
|
|
91
|
+
'matchAll',
|
|
92
|
+
'search',
|
|
93
|
+
'normalize',
|
|
94
|
+
'localeCompare',
|
|
95
|
+
// Object methods (synchronous)
|
|
96
|
+
'keys',
|
|
97
|
+
'values',
|
|
98
|
+
'entries',
|
|
99
|
+
'assign',
|
|
100
|
+
'freeze',
|
|
101
|
+
'seal',
|
|
102
|
+
'fromEntries',
|
|
103
|
+
'create',
|
|
104
|
+
'defineProperty',
|
|
105
|
+
'defineProperties',
|
|
106
|
+
'getOwnPropertyNames',
|
|
107
|
+
'getOwnPropertyDescriptor',
|
|
108
|
+
'getPrototypeOf',
|
|
109
|
+
'setPrototypeOf',
|
|
110
|
+
'hasOwnProperty',
|
|
111
|
+
'isPrototypeOf',
|
|
112
|
+
'propertyIsEnumerable',
|
|
113
|
+
// JSON methods
|
|
114
|
+
'stringify',
|
|
115
|
+
'parse',
|
|
116
|
+
// Math methods
|
|
117
|
+
'floor',
|
|
118
|
+
'ceil',
|
|
119
|
+
'round',
|
|
120
|
+
'max',
|
|
121
|
+
'min',
|
|
122
|
+
'abs',
|
|
123
|
+
'random',
|
|
124
|
+
'pow',
|
|
125
|
+
'sqrt',
|
|
126
|
+
'sign',
|
|
127
|
+
'trunc',
|
|
128
|
+
// Set/Map/WeakMap/WeakSet methods (synchronous)
|
|
129
|
+
'add',
|
|
130
|
+
'delete',
|
|
131
|
+
'has',
|
|
132
|
+
'clear',
|
|
133
|
+
'get',
|
|
134
|
+
'set',
|
|
135
|
+
'size',
|
|
136
|
+
// EventEmitter methods (synchronous)
|
|
137
|
+
'emit',
|
|
138
|
+
'on',
|
|
139
|
+
'off',
|
|
140
|
+
'once',
|
|
141
|
+
'addListener',
|
|
142
|
+
'removeListener',
|
|
143
|
+
'removeAllListeners',
|
|
144
|
+
'prependListener',
|
|
145
|
+
'prependOnceListener',
|
|
146
|
+
'eventNames',
|
|
147
|
+
'listeners',
|
|
148
|
+
'listenerCount',
|
|
149
|
+
'rawListeners',
|
|
150
|
+
// Registry / diagnostics helpers (void-returning in opensip-cli and similar CLIs)
|
|
151
|
+
'register',
|
|
152
|
+
'dispose',
|
|
153
|
+
'event',
|
|
154
|
+
'send',
|
|
155
|
+
'abort',
|
|
156
|
+
'throwIfAborted',
|
|
157
|
+
// OpenTelemetry Span methods (void-returning)
|
|
158
|
+
'recordException',
|
|
159
|
+
'setStatus',
|
|
160
|
+
'setAttributes',
|
|
161
|
+
'end',
|
|
162
|
+
'write',
|
|
163
|
+
// Date methods (synchronous)
|
|
164
|
+
'getTime',
|
|
165
|
+
'getDate',
|
|
166
|
+
'getDay',
|
|
167
|
+
'getFullYear',
|
|
168
|
+
'getHours',
|
|
169
|
+
'getMinutes',
|
|
170
|
+
'getSeconds',
|
|
171
|
+
'getMilliseconds',
|
|
172
|
+
'setTime',
|
|
173
|
+
'setDate',
|
|
174
|
+
'setFullYear',
|
|
175
|
+
'setHours',
|
|
176
|
+
'setMinutes',
|
|
177
|
+
'setSeconds',
|
|
178
|
+
'setMilliseconds',
|
|
179
|
+
'toISOString',
|
|
180
|
+
'toDateString',
|
|
181
|
+
'toTimeString',
|
|
182
|
+
'toLocaleDateString',
|
|
183
|
+
'toLocaleTimeString',
|
|
184
|
+
'toLocaleString',
|
|
185
|
+
'now',
|
|
186
|
+
];
|
|
187
|
+
/**
|
|
188
|
+
* Known synchronous receiver identifiers — generic JS / Node namespaces.
|
|
189
|
+
*/
|
|
190
|
+
const KNOWN_SYNC_RECEIVER_NAMES = [
|
|
191
|
+
'console',
|
|
192
|
+
'log',
|
|
193
|
+
'path',
|
|
194
|
+
'fs',
|
|
195
|
+
'process',
|
|
196
|
+
'JSON',
|
|
197
|
+
'Math',
|
|
198
|
+
'Object',
|
|
199
|
+
'Array',
|
|
200
|
+
'String',
|
|
201
|
+
'Number',
|
|
202
|
+
'Date',
|
|
203
|
+
'RegExp',
|
|
204
|
+
'Symbol',
|
|
205
|
+
'Boolean',
|
|
206
|
+
'Error',
|
|
207
|
+
'Map',
|
|
208
|
+
'Set',
|
|
209
|
+
'WeakMap',
|
|
210
|
+
'WeakSet',
|
|
211
|
+
'Reflect',
|
|
212
|
+
'Proxy',
|
|
213
|
+
'Intl',
|
|
214
|
+
];
|
|
215
|
+
/** Substrings matched against receiver variable names (case-insensitive). */
|
|
216
|
+
export const KNOWN_SYNC_RECEIVER_PATTERNS = [
|
|
217
|
+
'logger',
|
|
218
|
+
'writer',
|
|
219
|
+
'emitter',
|
|
220
|
+
'registry',
|
|
221
|
+
'cache',
|
|
222
|
+
'store',
|
|
223
|
+
'queue',
|
|
224
|
+
'buffer',
|
|
225
|
+
'timer',
|
|
226
|
+
'counter',
|
|
227
|
+
'gauge',
|
|
228
|
+
'diagnostics',
|
|
229
|
+
];
|
|
230
|
+
/** File path patterns that indicate CLI commands or route registrations. */
|
|
231
|
+
export const FILE_SKIP_PATTERNS = [
|
|
232
|
+
'/commands/',
|
|
233
|
+
'/routes/',
|
|
234
|
+
'/route-handlers/',
|
|
235
|
+
'/handlers/',
|
|
236
|
+
'/plugins/',
|
|
237
|
+
'register-routes',
|
|
238
|
+
'register-plugins',
|
|
239
|
+
// Tool CLI dispatch layers: async handlers invoke synchronous render/error helpers.
|
|
240
|
+
'/engine/src/cli/',
|
|
241
|
+
// Composition root + bootstrap: synchronous registration/mount helpers inside async setup.
|
|
242
|
+
'/cli/src/bootstrap/',
|
|
243
|
+
'/cli/src/index.ts',
|
|
244
|
+
];
|
|
245
|
+
/** Method-name prefixes that indicate synchronous calls. */
|
|
246
|
+
export const KNOWN_SYNC_PREFIXES = [
|
|
247
|
+
'set',
|
|
248
|
+
'get',
|
|
249
|
+
'add',
|
|
250
|
+
'remove',
|
|
251
|
+
'delete',
|
|
252
|
+
'clear',
|
|
253
|
+
'reset',
|
|
254
|
+
'is',
|
|
255
|
+
'has',
|
|
256
|
+
'can',
|
|
257
|
+
'should',
|
|
258
|
+
'was',
|
|
259
|
+
'will',
|
|
260
|
+
'assert',
|
|
261
|
+
'record',
|
|
262
|
+
'log',
|
|
263
|
+
'persist',
|
|
264
|
+
'validate',
|
|
265
|
+
'complete',
|
|
266
|
+
'merge',
|
|
267
|
+
'apply',
|
|
268
|
+
'prune',
|
|
269
|
+
'upsert',
|
|
270
|
+
'push',
|
|
271
|
+
'emit',
|
|
272
|
+
'on',
|
|
273
|
+
'off',
|
|
274
|
+
'once',
|
|
275
|
+
'dispatch',
|
|
276
|
+
];
|
|
277
|
+
/** Method name suffixes that indicate synchronous calls. */
|
|
278
|
+
export const KNOWN_SYNC_SUFFIXES = ['Sync'];
|
|
279
|
+
/** Fire-and-forget patterns that are intentionally not awaited. */
|
|
280
|
+
const FIRE_AND_FORGET_PATTERN_NAMES = [
|
|
281
|
+
'setImmediate',
|
|
282
|
+
'setTimeout',
|
|
283
|
+
'setInterval',
|
|
284
|
+
'nextTick',
|
|
285
|
+
'queueMicrotask',
|
|
286
|
+
];
|
|
287
|
+
export function isFireAndForgetPattern(name) {
|
|
288
|
+
return FIRE_AND_FORGET_PATTERN_NAMES.includes(name);
|
|
289
|
+
}
|
|
290
|
+
/** Build effective sync-call lookup lists from defaults + recipe config. */
|
|
291
|
+
export function buildEffectiveSyncSets() {
|
|
292
|
+
const cfg = getCheckConfig('detached-promises');
|
|
293
|
+
return {
|
|
294
|
+
syncFunctions: [...KNOWN_SYNC_FUNCTION_NAMES, ...(cfg.additionalSyncFunctions ?? [])],
|
|
295
|
+
syncReceivers: [...KNOWN_SYNC_RECEIVER_NAMES, ...(cfg.additionalSyncReceivers ?? [])],
|
|
296
|
+
syncPrefixes: [...KNOWN_SYNC_PREFIXES, ...(cfg.additionalSyncPrefixes ?? [])],
|
|
297
|
+
};
|
|
298
|
+
}
|
|
299
|
+
//# sourceMappingURL=detached-promises-sync-constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detached-promises-sync-constants.js","sourceRoot":"","sources":["../../../src/checks/resilience/detached-promises-sync-constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAiBtD;;;;GAIG;AACH,MAAM,yBAAyB,GAAG;IAChC,4CAA4C;IAC5C,UAAU;IACV,cAAc;IACd,eAAe;IACf,YAAY;IACZ,WAAW;IACX,WAAW;IACX,aAAa;IACb,UAAU;IACV,WAAW;IACX,YAAY;IACZ,cAAc;IACd,YAAY;IACZ,YAAY;IACZ,gDAAgD;IAChD,cAAc;IACd,eAAe;IACf,gBAAgB;IAChB,wBAAwB;IACxB,KAAK;IACL,MAAM;IACN,MAAM;IACN,OAAO;IACP,OAAO;IACP,MAAM;IACN,SAAS;IACT,6CAA6C;IAC7C,QAAQ;IACR,SAAS;IACT,iCAAiC;IACjC,OAAO;IACP,QAAQ;IACR,UAAU;IACV,SAAS;IACT,8BAA8B;IAC9B,KAAK;IACL,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,WAAW;IACX,MAAM;IACN,OAAO;IACP,UAAU;IACV,SAAS;IACT,OAAO;IACP,QAAQ;IACR,MAAM;IACN,MAAM;IACN,SAAS;IACT,MAAM;IACN,KAAK;IACL,OAAO;IACP,SAAS;IACT,QAAQ;IACR,MAAM;IACN,YAAY;IACZ,MAAM;IACN,SAAS;IACT,SAAS;IACT,+BAA+B;IAC/B,aAAa;IACb,aAAa;IACb,MAAM;IACN,WAAW;IACX,SAAS;IACT,OAAO;IACP,SAAS;IACT,YAAY;IACZ,WAAW;IACX,QAAQ;IACR,QAAQ;IACR,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,UAAU;IACV,UAAU;IACV,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,UAAU;IACV,QAAQ;IACR,WAAW;IACX,eAAe;IACf,+BAA+B;IAC/B,MAAM;IACN,QAAQ;IACR,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,aAAa;IACb,QAAQ;IACR,gBAAgB;IAChB,kBAAkB;IAClB,qBAAqB;IACrB,0BAA0B;IAC1B,gBAAgB;IAChB,gBAAgB;IAChB,gBAAgB;IAChB,eAAe;IACf,sBAAsB;IACtB,eAAe;IACf,WAAW;IACX,OAAO;IACP,eAAe;IACf,OAAO;IACP,MAAM;IACN,OAAO;IACP,KAAK;IACL,KAAK;IACL,KAAK;IACL,QAAQ;IACR,KAAK;IACL,MAAM;IACN,MAAM;IACN,OAAO;IACP,gDAAgD;IAChD,KAAK;IACL,QAAQ;IACR,KAAK;IACL,OAAO;IACP,KAAK;IACL,KAAK;IACL,MAAM;IACN,qCAAqC;IACrC,MAAM;IACN,IAAI;IACJ,KAAK;IACL,MAAM;IACN,aAAa;IACb,gBAAgB;IAChB,oBAAoB;IACpB,iBAAiB;IACjB,qBAAqB;IACrB,YAAY;IACZ,WAAW;IACX,eAAe;IACf,cAAc;IACd,kFAAkF;IAClF,UAAU;IACV,SAAS;IACT,OAAO;IACP,MAAM;IACN,OAAO;IACP,gBAAgB;IAChB,8CAA8C;IAC9C,iBAAiB;IACjB,WAAW;IACX,eAAe;IACf,KAAK;IACL,OAAO;IACP,6BAA6B;IAC7B,SAAS;IACT,SAAS;IACT,QAAQ;IACR,aAAa;IACb,UAAU;IACV,YAAY;IACZ,YAAY;IACZ,iBAAiB;IACjB,SAAS;IACT,SAAS;IACT,aAAa;IACb,UAAU;IACV,YAAY;IACZ,YAAY;IACZ,iBAAiB;IACjB,aAAa;IACb,cAAc;IACd,cAAc;IACd,oBAAoB;IACpB,oBAAoB;IACpB,gBAAgB;IAChB,KAAK;CACG,CAAC;AAEX;;GAEG;AACH,MAAM,yBAAyB,GAAG;IAChC,SAAS;IACT,KAAK;IACL,MAAM;IACN,IAAI;IACJ,SAAS;IACT,MAAM;IACN,MAAM;IACN,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,OAAO;IACP,KAAK;IACL,KAAK;IACL,SAAS;IACT,SAAS;IACT,SAAS;IACT,OAAO;IACP,MAAM;CACE,CAAC;AAEX,6EAA6E;AAC7E,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,UAAU;IACV,OAAO;IACP,OAAO;IACP,OAAO;IACP,QAAQ;IACR,OAAO;IACP,SAAS;IACT,OAAO;IACP,aAAa;CACd,CAAC;AAEF,4EAA4E;AAC5E,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,YAAY;IACZ,UAAU;IACV,kBAAkB;IAClB,YAAY;IACZ,WAAW;IACX,iBAAiB;IACjB,kBAAkB;IAClB,oFAAoF;IACpF,kBAAkB;IAClB,2FAA2F;IAC3F,qBAAqB;IACrB,mBAAmB;CACpB,CAAC;AAEF,4DAA4D;AAC5D,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,KAAK;IACL,KAAK;IACL,KAAK;IACL,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,OAAO;IACP,IAAI;IACJ,KAAK;IACL,KAAK;IACL,QAAQ;IACR,KAAK;IACL,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,KAAK;IACL,SAAS;IACT,UAAU;IACV,UAAU;IACV,OAAO;IACP,OAAO;IACP,OAAO;IACP,QAAQ;IACR,MAAM;IACN,MAAM;IACN,IAAI;IACJ,KAAK;IACL,MAAM;IACN,UAAU;CACX,CAAC;AAEF,4DAA4D;AAC5D,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,MAAM,CAAC,CAAC;AAE5C,mEAAmE;AACnE,MAAM,6BAA6B,GAAG;IACpC,cAAc;IACd,YAAY;IACZ,aAAa;IACb,UAAU;IACV,gBAAgB;CACR,CAAC;AAEX,MAAM,UAAU,sBAAsB,CAAC,IAAY;IACjD,OAAQ,6BAAmD,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC7E,CAAC;AASD,4EAA4E;AAC5E,MAAM,UAAU,sBAAsB;IACpC,MAAM,GAAG,GAAG,cAAc,CAAyB,mBAAmB,CAAC,CAAC;IACxE,OAAO;QACL,aAAa,EAAE,CAAC,GAAG,yBAAyB,EAAE,GAAG,CAAC,GAAG,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAC;QACrF,aAAa,EAAE,CAAC,GAAG,yBAAyB,EAAE,GAAG,CAAC,GAAG,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAC;QACrF,YAAY,EAAE,CAAC,GAAG,mBAAmB,EAAE,GAAG,CAAC,GAAG,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC;KAC9E,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Same-file sync callable detection for detached-promises.
|
|
3
|
+
*/
|
|
4
|
+
import * as ts from 'typescript';
|
|
5
|
+
/**
|
|
6
|
+
* True when `name` refers to a top-level sync function or const arrow in `sourceFile`.
|
|
7
|
+
*/
|
|
8
|
+
export declare function isSyncTopLevelCallable(sourceFile: ts.SourceFile, name: string): boolean;
|
|
9
|
+
/**
|
|
10
|
+
* True when `name` refers to a sync helper declared in an enclosing scope of `callSite`
|
|
11
|
+
* (nested `function` declarations or local `const` arrows), or at module top level.
|
|
12
|
+
*/
|
|
13
|
+
export declare function isSyncCallableInScope(callSite: ts.Node, sourceFile: ts.SourceFile, name: string): boolean;
|
|
14
|
+
//# sourceMappingURL=detached-promises-sync-detection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detached-promises-sync-detection.d.ts","sourceRoot":"","sources":["../../../src/checks/resilience/detached-promises-sync-detection.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAgDjC;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAIvF;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,EAAE,CAAC,IAAI,EACjB,UAAU,EAAE,EAAE,CAAC,UAAU,EACzB,IAAI,EAAE,MAAM,GACX,OAAO,CAeT"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Same-file sync callable detection for detached-promises.
|
|
3
|
+
*/
|
|
4
|
+
import * as ts from 'typescript';
|
|
5
|
+
function isNonAsyncFunctionLike(node) {
|
|
6
|
+
return !node.modifiers?.some((m) => m.kind === ts.SyntaxKind.AsyncKeyword);
|
|
7
|
+
}
|
|
8
|
+
function initializerIsSyncCallable(init) {
|
|
9
|
+
if (!init)
|
|
10
|
+
return false;
|
|
11
|
+
if (ts.isArrowFunction(init) || ts.isFunctionExpression(init)) {
|
|
12
|
+
return isNonAsyncFunctionLike(init);
|
|
13
|
+
}
|
|
14
|
+
return false;
|
|
15
|
+
}
|
|
16
|
+
function isSyncNamedFunctionDeclaration(stmt, name) {
|
|
17
|
+
if (!ts.isFunctionDeclaration(stmt) || stmt.name?.text !== name)
|
|
18
|
+
return false;
|
|
19
|
+
return isNonAsyncFunctionLike(stmt);
|
|
20
|
+
}
|
|
21
|
+
function isSyncNamedConstArrow(stmt, name) {
|
|
22
|
+
if (!ts.isVariableStatement(stmt))
|
|
23
|
+
return false;
|
|
24
|
+
for (const decl of stmt.declarationList.declarations) {
|
|
25
|
+
if (!ts.isIdentifier(decl.name) || decl.name.text !== name)
|
|
26
|
+
continue;
|
|
27
|
+
if (initializerIsSyncCallable(decl.initializer))
|
|
28
|
+
return true;
|
|
29
|
+
}
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
32
|
+
function blockDeclaresSyncCallable(block, name) {
|
|
33
|
+
return block.statements.some((stmt) => isSyncNamedFunctionDeclaration(stmt, name) || isSyncNamedConstArrow(stmt, name));
|
|
34
|
+
}
|
|
35
|
+
function isDirectFunctionBodyBlock(block) {
|
|
36
|
+
const parent = block.parent;
|
|
37
|
+
return (parent !== undefined &&
|
|
38
|
+
(ts.isFunctionDeclaration(parent) ||
|
|
39
|
+
ts.isFunctionExpression(parent) ||
|
|
40
|
+
ts.isArrowFunction(parent) ||
|
|
41
|
+
ts.isMethodDeclaration(parent) ||
|
|
42
|
+
ts.isConstructorDeclaration(parent)));
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* True when `name` refers to a top-level sync function or const arrow in `sourceFile`.
|
|
46
|
+
*/
|
|
47
|
+
export function isSyncTopLevelCallable(sourceFile, name) {
|
|
48
|
+
return sourceFile.statements.some((stmt) => isSyncNamedFunctionDeclaration(stmt, name) || isSyncNamedConstArrow(stmt, name));
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* True when `name` refers to a sync helper declared in an enclosing scope of `callSite`
|
|
52
|
+
* (nested `function` declarations or local `const` arrows), or at module top level.
|
|
53
|
+
*/
|
|
54
|
+
export function isSyncCallableInScope(callSite, sourceFile, name) {
|
|
55
|
+
if (isSyncTopLevelCallable(sourceFile, name))
|
|
56
|
+
return true;
|
|
57
|
+
let current = callSite;
|
|
58
|
+
while (current) {
|
|
59
|
+
if (ts.isSourceFile(current))
|
|
60
|
+
break;
|
|
61
|
+
if (ts.isBlock(current) &&
|
|
62
|
+
isDirectFunctionBodyBlock(current) &&
|
|
63
|
+
blockDeclaresSyncCallable(current, name))
|
|
64
|
+
return true;
|
|
65
|
+
current = current.parent;
|
|
66
|
+
}
|
|
67
|
+
return false;
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=detached-promises-sync-detection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detached-promises-sync-detection.js","sourceRoot":"","sources":["../../../src/checks/resilience/detached-promises-sync-detection.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,20 +11,6 @@
|
|
|
11
11
|
* {@link DetachedPromisesConfig}. The check reads that block via
|
|
12
12
|
* `getCheckConfig` and merges it into the effective sync-call sets.
|
|
13
13
|
*/
|
|
14
|
-
/**
|
|
15
|
-
* Recipe-config shape for the detached-promises check. Each field augments the
|
|
16
|
-
* built-in defaults; nothing here is required. Project-specific helper names
|
|
17
|
-
* (e.g. opensip's `attachDomainContext`, `sendError`) belong in a recipe's
|
|
18
|
-
* `checks.config['detached-promises']` block, not in built-in defaults.
|
|
19
|
-
*/
|
|
20
|
-
export interface DetachedPromisesConfig extends Record<string, unknown> {
|
|
21
|
-
/** Method/function names that are synchronous (no await needed). */
|
|
22
|
-
additionalSyncFunctions?: readonly string[];
|
|
23
|
-
/** Receiver identifiers (the part before the dot) that are synchronous. */
|
|
24
|
-
additionalSyncReceivers?: readonly string[];
|
|
25
|
-
/** Method-name prefixes that mark a call as synchronous (e.g. `'wire'`). */
|
|
26
|
-
additionalSyncPrefixes?: readonly string[];
|
|
27
|
-
}
|
|
28
14
|
/**
|
|
29
15
|
* Check: resilience/detached-promises
|
|
30
16
|
*
|
|
@@ -37,4 +23,5 @@ export interface DetachedPromisesConfig extends Record<string, unknown> {
|
|
|
37
23
|
* - Skip fire-and-forget patterns (process.nextTick, setImmediate, etc.)
|
|
38
24
|
*/
|
|
39
25
|
export declare const detachedPromises: import("@opensip-cli/fitness").Check;
|
|
26
|
+
export { type DetachedPromisesConfig } from './detached-promises-sync-constants.js';
|
|
40
27
|
//# sourceMappingURL=detached-promises.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detached-promises.d.ts","sourceRoot":"","sources":["../../../src/checks/resilience/detached-promises.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"detached-promises.d.ts","sourceRoot":"","sources":["../../../src/checks/resilience/detached-promises.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;GAYG;AAMH;;;;;;;;;;GAUG;AACH,eAAO,MAAM,gBAAgB,sCAyB3B,CAAC;AAEH,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,uCAAuC,CAAC"}
|