@flagshark/core 2.2.1 → 2.3.1
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/dist/config/schema.d.ts +10 -10
- package/dist/detection/detectors/typescript.d.ts.map +1 -1
- package/dist/detection/detectors/typescript.js +62 -21
- package/dist/detection/detectors/typescript.js.map +1 -1
- package/dist/output/json.d.ts.map +1 -1
- package/dist/output/json.js +37 -0
- package/dist/output/json.js.map +1 -1
- package/dist/output/text.d.ts.map +1 -1
- package/dist/output/text.js +14 -2
- package/dist/output/text.js.map +1 -1
- package/dist/providers/cache.d.ts +2 -0
- package/dist/providers/cache.d.ts.map +1 -1
- package/dist/providers/cache.js +10 -1
- package/dist/providers/cache.js.map +1 -1
- package/dist/providers/cross-reference.d.ts +36 -13
- package/dist/providers/cross-reference.d.ts.map +1 -1
- package/dist/providers/cross-reference.js +166 -52
- package/dist/providers/cross-reference.js.map +1 -1
- package/dist/providers/index.d.ts +2 -0
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js.map +1 -1
- package/dist/providers/interface.d.ts +91 -3
- package/dist/providers/interface.d.ts.map +1 -1
- package/dist/providers/launchdarkly/client.d.ts +8 -0
- package/dist/providers/launchdarkly/client.d.ts.map +1 -1
- package/dist/providers/launchdarkly/client.js +84 -2
- package/dist/providers/launchdarkly/client.js.map +1 -1
- package/dist/providers/launchdarkly/definition.d.ts +41 -4
- package/dist/providers/launchdarkly/definition.d.ts.map +1 -1
- package/dist/providers/launchdarkly/definition.js +36 -7
- package/dist/providers/launchdarkly/definition.js.map +1 -1
- package/dist/providers/launchdarkly/types.d.ts +443 -0
- package/dist/providers/launchdarkly/types.d.ts.map +1 -1
- package/dist/providers/launchdarkly/types.js +52 -0
- package/dist/providers/launchdarkly/types.js.map +1 -1
- package/dist/providers/orchestrate.d.ts +38 -5
- package/dist/providers/orchestrate.d.ts.map +1 -1
- package/dist/providers/orchestrate.js +130 -22
- package/dist/providers/orchestrate.js.map +1 -1
- package/dist/scan-repo.d.ts.map +1 -1
- package/dist/scan-repo.js +2 -1
- package/dist/scan-repo.js.map +1 -1
- package/dist/staleness.d.ts +42 -2
- package/dist/staleness.d.ts.map +1 -1
- package/dist/staleness.js +16 -4
- package/dist/staleness.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/providers/launchdarkly/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/providers/launchdarkly/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { PlatformSignal, PlatformFlag } from './interface.js';
|
|
1
|
+
import type { PlatformSignal, PlatformFlag, FlagVariation } from './interface.js';
|
|
2
2
|
import type { FeatureFlag } from '../detection/feature-flag.js';
|
|
3
3
|
import type { ScanLogger } from '../scan-repo.js';
|
|
4
4
|
export interface OrchestratePlatformsOptions {
|
|
@@ -17,6 +17,12 @@ export interface OrchestratePlatformsOptions {
|
|
|
17
17
|
* never emitted.
|
|
18
18
|
*/
|
|
19
19
|
thresholdDays?: number;
|
|
20
|
+
/**
|
|
21
|
+
* Per-platform low-evaluations threshold passed through to crossReference.
|
|
22
|
+
* Below this count over the reporting window, platform-low-evaluations fires.
|
|
23
|
+
* Default in crossReference: 10.
|
|
24
|
+
*/
|
|
25
|
+
evaluationThreshold?: number;
|
|
20
26
|
/**
|
|
21
27
|
* @internal — test seam. When set, used instead of platform.listFlags().
|
|
22
28
|
* Allows tests to bypass network without monkey-patching globalThis.fetch.
|
|
@@ -24,11 +30,27 @@ export interface OrchestratePlatformsOptions {
|
|
|
24
30
|
listFlagsOverride?: (signal?: AbortSignal) => Promise<PlatformFlag[]>;
|
|
25
31
|
}
|
|
26
32
|
/**
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
*
|
|
30
|
-
*
|
|
33
|
+
* Per-env breakdown of platform data for each detected flag, indexed by
|
|
34
|
+
* flag name then env key. Populated only for flags that matched a platform
|
|
35
|
+
* AND had at least one per-env enrichment field set — currently status,
|
|
36
|
+
* evaluations30d, lastRequested, lastTouched, on, fallthroughVariation,
|
|
37
|
+
* or offVariation. Surfaced to the JSON output formatter so consumers see
|
|
38
|
+
* the full multi-env picture beneath the flat top-level fields.
|
|
31
39
|
*/
|
|
40
|
+
export interface PerFlagEnvironmentData {
|
|
41
|
+
status?: 'new' | 'active' | 'inactive' | 'launched';
|
|
42
|
+
evaluations30d?: number | null;
|
|
43
|
+
lastRequested?: Date | null;
|
|
44
|
+
lastTouched?: Date | null;
|
|
45
|
+
/**
|
|
46
|
+
* Per-env LD configuration. Surfaced for SaaS-side cleanup pipelines
|
|
47
|
+
* that need to substitute the correct variation value into code.
|
|
48
|
+
* See PlatformFlag for field semantics.
|
|
49
|
+
*/
|
|
50
|
+
on?: boolean;
|
|
51
|
+
fallthroughVariation?: number | null;
|
|
52
|
+
offVariation?: number;
|
|
53
|
+
}
|
|
32
54
|
export interface OrchestrateResult {
|
|
33
55
|
signals: Map<string, PlatformSignal[]>;
|
|
34
56
|
permanentByPlatform: Record<string, string[]>;
|
|
@@ -44,7 +66,18 @@ export interface OrchestrateResult {
|
|
|
44
66
|
tags?: string[];
|
|
45
67
|
maintainer?: string;
|
|
46
68
|
status?: 'new' | 'active' | 'inactive' | 'launched';
|
|
69
|
+
variations?: FlagVariation[];
|
|
70
|
+
codeReferences?: {
|
|
71
|
+
count: number;
|
|
72
|
+
} | null;
|
|
47
73
|
}>;
|
|
74
|
+
/**
|
|
75
|
+
* Per-flag, per-env enrichment data. Outer key: detected flag name.
|
|
76
|
+
* Inner key: env name. Empty when no platform integration is configured
|
|
77
|
+
* or when no flag had enrichment data. JSON output uses this to emit
|
|
78
|
+
* the additive `environments` block.
|
|
79
|
+
*/
|
|
80
|
+
environmentsByFlag: Map<string, Map<string, PerFlagEnvironmentData>>;
|
|
48
81
|
}
|
|
49
82
|
/**
|
|
50
83
|
* Runs each configured platform integration. Logs warnings on individual
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrate.d.ts","sourceRoot":"","sources":["../../src/providers/orchestrate.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"orchestrate.d.ts","sourceRoot":"","sources":["../../src/providers/orchestrate.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AACjF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAC/D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAEjD,MAAM,WAAW,2BAA2B;IAC1C,iFAAiF;IACjF,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;IACpD,4CAA4C;IAC5C,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAA;IACzC,MAAM,EAAE,UAAU,CAAA;IAClB,0CAA0C;IAC1C,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,YAAY,EAAE,CAAC,CAAA;CACtE;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,sBAAsB;IACrC,MAAM,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,UAAU,GAAG,UAAU,CAAA;IACnD,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,aAAa,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;IAC3B,WAAW,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;IACzB;;;;OAIG;IACH,EAAE,CAAC,EAAE,OAAO,CAAA;IACZ,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACpC,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,CAAA;IACtC,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;IAC7C;;;;;;;OAOG;IACH,cAAc,EAAE,GAAG,CACjB,MAAM,EACN;QACE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;QACf,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,MAAM,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,UAAU,GAAG,UAAU,CAAA;QACnD,UAAU,CAAC,EAAE,aAAa,EAAE,CAAA;QAC5B,cAAc,CAAC,EAAE;YAAE,KAAK,EAAE,MAAM,CAAA;SAAE,GAAG,IAAI,CAAA;KAC1C,CACF,CAAA;IACD;;;;;OAKG;IACH,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC,CAAA;CACrE;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,2BAA2B,GAChC,OAAO,CAAC,iBAAiB,CAAC,CAkN5B"}
|
|
@@ -11,8 +11,9 @@ export async function orchestratePlatforms(opts) {
|
|
|
11
11
|
const out = new Map();
|
|
12
12
|
const permanentByPlatform = {};
|
|
13
13
|
const metadataByFlag = new Map();
|
|
14
|
+
const environmentsByFlag = new Map();
|
|
14
15
|
if (!opts.platformsConfig) {
|
|
15
|
-
return { signals: out, permanentByPlatform, metadataByFlag };
|
|
16
|
+
return { signals: out, permanentByPlatform, metadataByFlag, environmentsByFlag };
|
|
16
17
|
}
|
|
17
18
|
for (const [name, rawConfig] of Object.entries(opts.platformsConfig)) {
|
|
18
19
|
const def = findPlatform(name);
|
|
@@ -37,20 +38,56 @@ export async function orchestratePlatforms(opts) {
|
|
|
37
38
|
opts.logger.warn(`${def.displayName}: missing ${tokenEnv}; skipping platform integration`);
|
|
38
39
|
continue;
|
|
39
40
|
}
|
|
41
|
+
// Preflight token-shape check (LaunchDarkly only). LD ships two token
|
|
42
|
+
// families with distinct prefixes: SDK keys (`sdk-…`, mobile keys
|
|
43
|
+
// `mob-…`) are for the runtime SDK and rejected by the REST API; API
|
|
44
|
+
// access tokens (`api-…`) are what FlagShark needs. The mistake is
|
|
45
|
+
// common because LD shows both in adjacent UI surfaces. We still
|
|
46
|
+
// attempt the request (in case LD ever changes formats) but emit a
|
|
47
|
+
// pointed warning up-front so the 401 below isn't the only signal.
|
|
48
|
+
if (name === 'launchdarkly' && /^(sdk-|mob-)/.test(token)) {
|
|
49
|
+
opts.logger.warn(`${def.displayName}: ${tokenEnv} looks like an SDK key (${token.slice(0, 4)}…). ` +
|
|
50
|
+
`FlagShark needs an API access token (api-…). ` +
|
|
51
|
+
`Create one at Account settings → Authorization → API access tokens ` +
|
|
52
|
+
`(needs Reader role on the project at minimum).`);
|
|
53
|
+
}
|
|
40
54
|
try {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
55
|
+
// Multi-env: parsed.data.environments is always a non-empty array
|
|
56
|
+
// after the Zod transform (both `environment: 'x'` and
|
|
57
|
+
// `environments: ['x']` are normalized to environments[]).
|
|
58
|
+
// Loop serially per env — each iteration runs an isolated
|
|
59
|
+
// listFlags() with its own concurrency budget and its own cache
|
|
60
|
+
// entry (computeCacheKey hashes the full config including env).
|
|
61
|
+
// Serial keeps blast radius constant per env.
|
|
62
|
+
const envs = parsed.data.environments;
|
|
63
|
+
const perEnv = new Map();
|
|
64
|
+
let firstEnvFlags = [];
|
|
65
|
+
for (const env of envs) {
|
|
66
|
+
const envConfig = { ...parsed.data, environment: env };
|
|
67
|
+
const client = def.createClient(envConfig, token);
|
|
68
|
+
const cacheKey = computeCacheKey(name, envConfig, token);
|
|
69
|
+
const flags = opts.listFlagsOverride
|
|
70
|
+
? await opts.listFlagsOverride(opts.signal)
|
|
71
|
+
: await loadPlatformFlagsCached(client, cacheKey, {
|
|
72
|
+
noCache: opts.noCache,
|
|
73
|
+
signal: opts.signal,
|
|
74
|
+
logger: opts.logger,
|
|
75
|
+
});
|
|
76
|
+
if (env === envs[0])
|
|
77
|
+
firstEnvFlags = flags;
|
|
78
|
+
for (const f of flags) {
|
|
79
|
+
if (!perEnv.has(f.key))
|
|
80
|
+
perEnv.set(f.key, new Map());
|
|
81
|
+
perEnv.get(f.key).set(env, f);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
const signals = crossReference(opts.detectedFlags, perEnv, def.displayName, {
|
|
47
85
|
thresholdDays: opts.thresholdDays,
|
|
86
|
+
evaluationThreshold: opts.evaluationThreshold,
|
|
48
87
|
});
|
|
49
88
|
mergePlatformSignals(out, signals);
|
|
50
|
-
// Track
|
|
51
|
-
//
|
|
52
|
-
// <Platform>: a, b, c'. Read the signals MAP we just merged in
|
|
53
|
-
// (not `signals` directly — same content, but consistent source).
|
|
89
|
+
// Track flags marked permanent (LD's temporary=false). Flag-level
|
|
90
|
+
// field — identical across envs — so reading from first env is correct.
|
|
54
91
|
const platformPermanent = [];
|
|
55
92
|
for (const [flagName, sigList] of signals) {
|
|
56
93
|
if (sigList.some((s) => s.type === 'platform-permanent')) {
|
|
@@ -60,37 +97,108 @@ export async function orchestratePlatforms(opts) {
|
|
|
60
97
|
if (platformPermanent.length > 0) {
|
|
61
98
|
permanentByPlatform[def.displayName] = platformPermanent.sort();
|
|
62
99
|
}
|
|
63
|
-
//
|
|
64
|
-
//
|
|
65
|
-
//
|
|
66
|
-
|
|
67
|
-
for (const flag of flags) {
|
|
100
|
+
// metadataByFlag: surface platform-side metadata. For multi-env,
|
|
101
|
+
// we use the first env's data — matches the JSON output rule
|
|
102
|
+
// (top-level fields source from environments[envs[0]]).
|
|
103
|
+
for (const flag of firstEnvFlags) {
|
|
68
104
|
if (!opts.detectedFlags.has(flag.key))
|
|
69
105
|
continue;
|
|
70
|
-
const hasMetadata = (flag.tags && flag.tags.length > 0)
|
|
106
|
+
const hasMetadata = (flag.tags && flag.tags.length > 0)
|
|
107
|
+
|| flag.maintainer
|
|
108
|
+
|| flag.status
|
|
109
|
+
|| (flag.variations && flag.variations.length > 0)
|
|
110
|
+
|| flag.codeReferences !== undefined;
|
|
71
111
|
if (!hasMetadata)
|
|
72
112
|
continue;
|
|
73
113
|
metadataByFlag.set(flag.key, {
|
|
74
114
|
tags: flag.tags && flag.tags.length > 0 ? flag.tags : undefined,
|
|
75
115
|
maintainer: flag.maintainer,
|
|
76
116
|
status: flag.status,
|
|
117
|
+
variations: flag.variations && flag.variations.length > 0 ? flag.variations : undefined,
|
|
118
|
+
codeReferences: flag.codeReferences,
|
|
77
119
|
});
|
|
78
120
|
}
|
|
121
|
+
// environmentsByFlag: per-env enrichment for every detected flag
|
|
122
|
+
// that the platform knew about. Outer key = detected flag name.
|
|
123
|
+
// Inner key = env name. Populates from the stitched perEnv map
|
|
124
|
+
// we built above — single source of truth.
|
|
125
|
+
for (const [flagKey, envInnerMap] of perEnv) {
|
|
126
|
+
if (!opts.detectedFlags.has(flagKey))
|
|
127
|
+
continue;
|
|
128
|
+
const inner = new Map();
|
|
129
|
+
for (const [env, pf] of envInnerMap) {
|
|
130
|
+
// Skip envs with no enrichment data to keep environmentsByFlag tight.
|
|
131
|
+
//
|
|
132
|
+
// IMPORTANT: uses `== null` (not `===`) deliberately. The cache layer
|
|
133
|
+
// (packages/core/src/providers/cache.ts) stubs fallthroughVariation as
|
|
134
|
+
// literal `null` for cached PlatformFlag entries — that stub MUST be
|
|
135
|
+
// treated as "no data" so cache hits don't emit misleading
|
|
136
|
+
// fallthroughVariation:null in JSON output (which would signal "split
|
|
137
|
+
// rollout, fail-closed" to SaaS Piranha). The == null check matches
|
|
138
|
+
// both the stub null AND the undefined of the other optional fields,
|
|
139
|
+
// preserving the load-bearing-null semantics.
|
|
140
|
+
//
|
|
141
|
+
// If you ever need to distinguish stub null from live null, the right
|
|
142
|
+
// fix is to make the cache stub more honest (don't pretend to know),
|
|
143
|
+
// NOT to change == to ===.
|
|
144
|
+
if (pf.status == null
|
|
145
|
+
&& pf.evaluations30d == null
|
|
146
|
+
&& pf.lastRequested == null
|
|
147
|
+
&& pf.lastTouched == null
|
|
148
|
+
&& pf.on == null
|
|
149
|
+
&& pf.fallthroughVariation == null
|
|
150
|
+
&& pf.offVariation == null)
|
|
151
|
+
continue;
|
|
152
|
+
inner.set(env, {
|
|
153
|
+
status: pf.status,
|
|
154
|
+
evaluations30d: pf.evaluations30d,
|
|
155
|
+
lastRequested: pf.lastRequested,
|
|
156
|
+
lastTouched: pf.lastTouched,
|
|
157
|
+
on: pf.on,
|
|
158
|
+
fallthroughVariation: pf.fallthroughVariation,
|
|
159
|
+
offVariation: pf.offVariation,
|
|
160
|
+
});
|
|
161
|
+
}
|
|
162
|
+
if (inner.size > 0) {
|
|
163
|
+
environmentsByFlag.set(flagKey, inner);
|
|
164
|
+
}
|
|
165
|
+
}
|
|
79
166
|
}
|
|
80
167
|
catch (err) {
|
|
81
168
|
// 401/403 are by far the most common failure mode here and the cause
|
|
82
169
|
// is almost always confusable token shapes (SDK key vs. API access
|
|
83
170
|
// token, project-scoped token pointed at the wrong project, project
|
|
84
171
|
// KEY vs. project NAME in the YAML). Surface a hint inline so users
|
|
85
|
-
// don't have to guess.
|
|
172
|
+
// don't have to guess. If we already preflighted the prefix above
|
|
173
|
+
// and it looked correct (`api-…`), the next-most-likely cause is
|
|
174
|
+
// project key vs. name, so steer the hint there instead of repeating
|
|
175
|
+
// the SDK-key warning.
|
|
86
176
|
const message = err.message;
|
|
87
177
|
const isAuthError = /\b(401|403|Unauthorized|Forbidden)\b/i.test(message);
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
178
|
+
let hint = '';
|
|
179
|
+
if (isAuthError) {
|
|
180
|
+
if (name === 'launchdarkly' && token.startsWith('api-')) {
|
|
181
|
+
hint =
|
|
182
|
+
` (token shape is correct — verify the project KEY (not name) in .flagshark.yml ` +
|
|
183
|
+
`matches a project the token can read; the project key is shown in LD under ` +
|
|
184
|
+
`Account settings → Projects, in the second column)`;
|
|
185
|
+
}
|
|
186
|
+
else if (name === 'launchdarkly') {
|
|
187
|
+
hint =
|
|
188
|
+
` (use an API access token (api-…), not an SDK key; verify the project KEY ` +
|
|
189
|
+
`(not display name) in .flagshark.yml matches a project the token can read)`;
|
|
190
|
+
/* v8 ignore start -- defensive fallback for future non-LD platforms;
|
|
191
|
+
launchdarkly is the only registered platform today, and unknown
|
|
192
|
+
platform names bail at the findPlatform() check above. */
|
|
193
|
+
}
|
|
194
|
+
else {
|
|
195
|
+
hint = ` (check token type and that it has read access to the configured project)`;
|
|
196
|
+
}
|
|
197
|
+
/* v8 ignore stop */
|
|
198
|
+
}
|
|
91
199
|
opts.logger.warn(`${def.displayName}: ${message}${hint}. Continuing with code-only signals.`);
|
|
92
200
|
}
|
|
93
201
|
}
|
|
94
|
-
return { signals: out, permanentByPlatform, metadataByFlag };
|
|
202
|
+
return { signals: out, permanentByPlatform, metadataByFlag, environmentsByFlag };
|
|
95
203
|
}
|
|
96
204
|
//# sourceMappingURL=orchestrate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrate.js","sourceRoot":"","sources":["../../src/providers/orchestrate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAA;AAC3E,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"orchestrate.js","sourceRoot":"","sources":["../../src/providers/orchestrate.ts"],"names":[],"mappings":"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"}
|
package/dist/scan-repo.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scan-repo.d.ts","sourceRoot":"","sources":["../src/scan-repo.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAgBH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAE1D,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;IACnC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;IAClC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;IAClC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;CACpC;AAED,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,GAAG,EAAE,MAAM,CAAA;IAEX;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IAEb;;;;OAIG;IACH,MAAM,CAAC,EAAE,WAAW,CAAA;IAEpB;;OAEG;IACH,MAAM,CAAC,EAAE,UAAU,CAAA;IAEnB,2EAA2E;IAC3E,MAAM,CAAC,EAAE,OAAO,GAAG,aAAa,CAAA;IAEhC;;;OAGG;IACH,MAAM,CAAC,EAAE,eAAe,CAAA;IAExB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAElB;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;IAEtB;;OAEG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAE9B,qDAAqD;IACrD,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,uEAAuE;IACvE,UAAU,EAAE,MAAM,CAAA;IAElB,yDAAyD;IACzD,YAAY,EAAE,MAAM,CAAA;IAEpB;;;;OAIG;IACH,UAAU,EAAE,SAAS,EAAE,CAAA;IAEvB;;;OAGG;IACH,iBAAiB,EAAE,MAAM,EAAE,CAAA;IAE3B,0EAA0E;IAC1E,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAEzC;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAA;IAEnB,uDAAuD;IACvD,YAAY,EAAE,MAAM,CAAA;IAEpB,uFAAuF;IACvF,aAAa,CAAC,EAAE,MAAM,CAAA;IAEtB,0FAA0F;IAC1F,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IAExB;;;;;;;;OAQG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IAExB;;;;;;;;;OASG;IACH,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAA;IAE5B;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;IAE9C,kGAAkG;IAClG,iBAAiB,CAAC,EAAE,cAAc,CAAA;CACnC;AAUD,wBAAsB,QAAQ,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,
|
|
1
|
+
{"version":3,"file":"scan-repo.d.ts","sourceRoot":"","sources":["../src/scan-repo.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAgBH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAE1D,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;IACnC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;IAClC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;IAClC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;CACpC;AAED,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,GAAG,EAAE,MAAM,CAAA;IAEX;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IAEb;;;;OAIG;IACH,MAAM,CAAC,EAAE,WAAW,CAAA;IAEpB;;OAEG;IACH,MAAM,CAAC,EAAE,UAAU,CAAA;IAEnB,2EAA2E;IAC3E,MAAM,CAAC,EAAE,OAAO,GAAG,aAAa,CAAA;IAEhC;;;OAGG;IACH,MAAM,CAAC,EAAE,eAAe,CAAA;IAExB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAElB;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;IAEtB;;OAEG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAE9B,qDAAqD;IACrD,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,uEAAuE;IACvE,UAAU,EAAE,MAAM,CAAA;IAElB,yDAAyD;IACzD,YAAY,EAAE,MAAM,CAAA;IAEpB;;;;OAIG;IACH,UAAU,EAAE,SAAS,EAAE,CAAA;IAEvB;;;OAGG;IACH,iBAAiB,EAAE,MAAM,EAAE,CAAA;IAE3B,0EAA0E;IAC1E,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAEzC;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAA;IAEnB,uDAAuD;IACvD,YAAY,EAAE,MAAM,CAAA;IAEpB,uFAAuF;IACvF,aAAa,CAAC,EAAE,MAAM,CAAA;IAEtB,0FAA0F;IAC1F,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IAExB;;;;;;;;OAQG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IAExB;;;;;;;;;OASG;IACH,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAA;IAE5B;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;IAE9C,kGAAkG;IAClG,iBAAiB,CAAC,EAAE,cAAc,CAAA;CACnC;AAUD,wBAAsB,QAAQ,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAoK7E"}
|
package/dist/scan-repo.js
CHANGED
|
@@ -75,7 +75,7 @@ export async function scanRepo(opts) {
|
|
|
75
75
|
if (config.custom_detectors && config.custom_detectors.length > 0) {
|
|
76
76
|
applyCustomDetectors(files, config.custom_detectors, analysisResult.totalFlags, logger);
|
|
77
77
|
}
|
|
78
|
-
const { signals: platformSignals, permanentByPlatform, metadataByFlag, } = await orchestratePlatforms({
|
|
78
|
+
const { signals: platformSignals, permanentByPlatform, metadataByFlag, environmentsByFlag, } = await orchestratePlatforms({
|
|
79
79
|
platformsConfig: config.platforms,
|
|
80
80
|
detectedFlags: analysisResult.totalFlags,
|
|
81
81
|
logger,
|
|
@@ -92,6 +92,7 @@ export async function scanRepo(opts) {
|
|
|
92
92
|
repoRoot: opts.cwd,
|
|
93
93
|
platformSignals,
|
|
94
94
|
platformMetadata: metadataByFlag,
|
|
95
|
+
platformEnvironments: environmentsByFlag,
|
|
95
96
|
});
|
|
96
97
|
// Flatten the per-platform breakdown into a single sorted, deduplicated
|
|
97
98
|
// list so callers that only want "did anything get excluded?" don't
|
package/dist/scan-repo.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scan-repo.js","sourceRoot":"","sources":["../src/scan-repo.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AACtF,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACxG,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AAoJjE,MAAM,IAAI,GAAiC,GAAG,EAAE,GAAE,CAAC,CAAA;AACnD,MAAM,WAAW,GAAe;IAC9B,KAAK,EAAE,IAAI;IACX,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,KAAK,EAAE,IAAI;CACZ,CAAA;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,IAAqB;IAClD,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;IAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,WAAW,CAAA;IAEzC,MAAM,MAAM,GACV,IAAI,CAAC,MAAM;QACX,CAAC,IAAI,CAAC,QAAQ;YACZ,CAAC,CAAC,kBAAkB,EAAE;YACtB,CAAC,CAAC,CAAC,MAAM,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,IAAI,kBAAkB,EAAE,CAAC,CAAA;IAEvE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAA;IAEpD,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAE5E,MAAM,QAAQ,GAAG,aAAa,CAAC;QAC7B,MAAM;QACN,kBAAkB,EAAE,UAAU,EAAE,QAAQ,IAAI,EAAE;KAC/C,CAAC,CAAA;IAEF,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAA;IAE3D,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM;QAC1B,CAAC,CAAC,wBAAwB,CAAC,IAAI,CAAC,MAAM,CAAC;QACvC,CAAC,CAAC,qBAAqB,EAAE,CAAA;IAC3B,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,sBAAsB,EAAE,CAAC,CAAA;IACtE,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;IAEvD,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAA;IACnC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,GAAG,YAAY,CAAC;QAC3D,IAAI,EAAE,IAAI,CAAC,GAAG;QACd,mBAAmB;QACnB,OAAO,EAAE,IAAI,CAAC,IAAI;QAClB,QAAQ;QACR,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;KAChD,CAAC,CAAA;IAEF,MAAM,CAAC,KAAK,CAAC,YAAY,KAAK,CAAC,IAAI,8BAA8B,aAAa,GAAG,CAAC,CAAA;IAClF,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAA;IAE/B,2EAA2E;IAC3E,2EAA2E;IAC3E,wEAAwE;IACxE,uEAAuE;IACvE,0EAA0E;IAC1E,2EAA2E;IAC3E,oCAAoC;IACpC,EAAE;IACF,sEAAsE;IACtE,yDAAyD;IACzD,EAAE;IACF,2EAA2E;IAC3E,0EAA0E;IAC1E,6EAA6E;IAC7E,MAAM,eAAe,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAA;IACpD,MAAM,gBAAgB,GAAG,0BAA0B,CAAC,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;IAE7F,MAAM,cAAc,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;IAEjF,yEAAyE;IACzE,uEAAuE;IACvE,yEAAyE;IACzE,4EAA4E;IAC5E,yEAAyE;IACzE,gDAAgD;IAChD,IAAI,MAAM,CAAC,gBAAgB,IAAI,MAAM,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClE,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,gBAAgB,EAAE,cAAc,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;IACzF,CAAC;IAED,MAAM,EACJ,OAAO,EAAE,eAAe,EACxB,mBAAmB,EACnB,cAAc,
|
|
1
|
+
{"version":3,"file":"scan-repo.js","sourceRoot":"","sources":["../src/scan-repo.ts"],"names":[],"mappings":"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"}
|
package/dist/staleness.d.ts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { type FeatureFlag } from './detection/feature-flag.js';
|
|
2
|
+
import type { PerFlagEnvironmentData } from './providers/orchestrate.js';
|
|
3
|
+
import type { FlagVariation } from './providers/interface.js';
|
|
2
4
|
export interface StalenessSignal {
|
|
3
|
-
type: 'age' | 'hardcoded' | 'low-usage' | 'test-only-references' | 'missing-in-platform' | 'archived-in-platform' | 'platform-too-old' | 'platform-inactive' | 'platform-launched' | 'platform-zero-evaluations' | 'platform-low-evaluations' | 'platform-untouched-stale';
|
|
4
|
-
severity: 'error' | 'warning';
|
|
5
|
+
type: 'age' | 'hardcoded' | 'low-usage' | 'test-only-references' | 'missing-in-platform' | 'archived-in-platform' | 'platform-too-old' | 'platform-inactive' | 'platform-launched' | 'platform-zero-evaluations' | 'platform-low-evaluations' | 'platform-untouched-stale' | 'coverage-gap-vs-platform';
|
|
6
|
+
severity: 'error' | 'warning' | 'info';
|
|
5
7
|
description: string;
|
|
6
8
|
}
|
|
7
9
|
export interface StaleFlag {
|
|
@@ -32,6 +34,33 @@ export interface StaleFlag {
|
|
|
32
34
|
maintainer?: string;
|
|
33
35
|
/** LD's per-environment activity verdict; see PlatformFlag.status. */
|
|
34
36
|
platformStatus?: 'new' | 'active' | 'inactive' | 'launched';
|
|
37
|
+
/**
|
|
38
|
+
* Variation definitions for this flag from the platform integration.
|
|
39
|
+
* Populated only when the platform exposes variation data (LD does;
|
|
40
|
+
* others may not). Surfaced in JSON output as a top-level per-flag
|
|
41
|
+
* field so cleanup pipelines can look up the substitute value by
|
|
42
|
+
* variation index.
|
|
43
|
+
*/
|
|
44
|
+
variations?: FlagVariation[];
|
|
45
|
+
/**
|
|
46
|
+
* Cross-check count from the platform's own code-references feature.
|
|
47
|
+
* Populated when the platform exposes the feature AND it's available
|
|
48
|
+
* for the project. Surfaced in JSON output for SaaS consumers and
|
|
49
|
+
* verbose text output for human review.
|
|
50
|
+
*
|
|
51
|
+
* See PlatformFlag.codeReferences for the three-state semantics
|
|
52
|
+
* (undefined / null / { count }).
|
|
53
|
+
*/
|
|
54
|
+
codeReferences?: {
|
|
55
|
+
count: number;
|
|
56
|
+
} | null;
|
|
57
|
+
/**
|
|
58
|
+
* Per-env platform enrichment data for this flag. Populated only
|
|
59
|
+
* when a platform integration is active AND the flag matched in that
|
|
60
|
+
* platform. JSON output renders this as an additive `environments`
|
|
61
|
+
* block per flag.
|
|
62
|
+
*/
|
|
63
|
+
environments?: Map<string, PerFlagEnvironmentData>;
|
|
35
64
|
}
|
|
36
65
|
export interface StalenessOptions {
|
|
37
66
|
/** Flag lines older than this are considered stale. Default: 30. */
|
|
@@ -50,7 +79,18 @@ export interface StalenessOptions {
|
|
|
50
79
|
tags?: string[];
|
|
51
80
|
maintainer?: string;
|
|
52
81
|
status?: 'new' | 'active' | 'inactive' | 'launched';
|
|
82
|
+
variations?: FlagVariation[];
|
|
83
|
+
codeReferences?: {
|
|
84
|
+
count: number;
|
|
85
|
+
} | null;
|
|
53
86
|
}>;
|
|
87
|
+
/**
|
|
88
|
+
* Per-flag, per-env enrichment data sourced from the platform integration.
|
|
89
|
+
* When provided, surfaces on each StaleFlag via the `environments` field,
|
|
90
|
+
* which the JSON formatter renders into the additive `environments` block.
|
|
91
|
+
* Outer key: detected flag name. Inner key: env name.
|
|
92
|
+
*/
|
|
93
|
+
platformEnvironments?: Map<string, Map<string, PerFlagEnvironmentData>>;
|
|
54
94
|
}
|
|
55
95
|
/**
|
|
56
96
|
* Analyze a set of detected feature flags for staleness signals.
|
package/dist/staleness.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"staleness.d.ts","sourceRoot":"","sources":["../src/staleness.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,6BAA6B,CAAA;
|
|
1
|
+
{"version":3,"file":"staleness.d.ts","sourceRoot":"","sources":["../src/staleness.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAA;AACxE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAI7D,MAAM,WAAW,eAAe;IAK9B,IAAI,EACA,KAAK,GACL,WAAW,GACX,WAAW,GACX,sBAAsB,GACtB,qBAAqB,GACrB,sBAAsB,GACtB,kBAAkB,GAClB,mBAAmB,GACnB,mBAAmB,GACnB,2BAA2B,GAC3B,0BAA0B,GAC1B,0BAA0B,GAC1B,0BAA0B,CAAA;IAC9B,QAAQ,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAA;IACtC,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,eAAe,EAAE,CAAA;IAC1B,+CAA+C;IAC/C,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAA;IAEtC;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,sEAAsE;IACtE,cAAc,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,UAAU,GAAG,UAAU,CAAA;IAE3D;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,aAAa,EAAE,CAAA;IAE5B;;;;;;;;OAQG;IACH,cAAc,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;IAEzC;;;;;OAKG;IACH,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAA;CACnD;AAED,MAAM,WAAW,gBAAgB;IAC/B,oEAAoE;IACpE,aAAa,EAAE,MAAM,CAAA;IACrB,gDAAgD;IAChD,QAAQ,EAAE,MAAM,CAAA;IAChB,kEAAkE;IAClE,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,0BAA0B,EAAE,cAAc,EAAE,CAAC,CAAA;IAClF;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,GAAG,CACpB,MAAM,EACN;QACE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;QACf,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,MAAM,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,UAAU,GAAG,UAAU,CAAA;QACnD,UAAU,CAAC,EAAE,aAAa,EAAE,CAAA;QAC5B,cAAc,CAAC,EAAE;YAAE,KAAK,EAAE,MAAM,CAAA;SAAE,GAAG,IAAI,CAAA;KAC1C,CACF,CAAA;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC,CAAA;CACxE;AAgOD;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,EACjC,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,SAAS,EAAE,CAAC,CAgKtB"}
|
package/dist/staleness.js
CHANGED
|
@@ -285,9 +285,6 @@ export async function analyzeStaleness(flags, options) {
|
|
|
285
285
|
for (const ps of platformSigs) {
|
|
286
286
|
if (ps.type === 'platform-permanent')
|
|
287
287
|
continue;
|
|
288
|
-
// After the platform-permanent filter, the remaining types are
|
|
289
|
-
// missing-in-platform / archived-in-platform — both narrow to
|
|
290
|
-
// error/warning severities. Help the type checker see that.
|
|
291
288
|
signals.push({
|
|
292
289
|
type: ps.type,
|
|
293
290
|
severity: ps.severity,
|
|
@@ -304,7 +301,12 @@ export async function analyzeStaleness(flags, options) {
|
|
|
304
301
|
// When a flag IS stale for another reason, low-usage stays in
|
|
305
302
|
// the signals list because "this is single-file → small cleanup
|
|
306
303
|
// scope" is useful diagnostic for the reviewer.
|
|
307
|
-
|
|
304
|
+
// `low-usage` and `coverage-gap-vs-platform` are non-stale-implying
|
|
305
|
+
// signals — `low-usage` is a contributing signal (only stale when paired
|
|
306
|
+
// with another), and `coverage-gap-vs-platform` is purely a detector-
|
|
307
|
+
// quality diagnostic (doesn't make a flag stale; informational only).
|
|
308
|
+
// A flag with only these signals should not appear in staleFlags.
|
|
309
|
+
const hasPrimarySignal = signals.some((s) => s.type !== 'low-usage' && s.type !== 'coverage-gap-vs-platform');
|
|
308
310
|
if (hasPrimarySignal) {
|
|
309
311
|
const stale = {
|
|
310
312
|
name: flag.name,
|
|
@@ -333,6 +335,16 @@ export async function analyzeStaleness(flags, options) {
|
|
|
333
335
|
stale.maintainer = meta.maintainer;
|
|
334
336
|
if (meta.status)
|
|
335
337
|
stale.platformStatus = meta.status;
|
|
338
|
+
if (meta.variations && meta.variations.length > 0)
|
|
339
|
+
stale.variations = meta.variations;
|
|
340
|
+
if (meta.codeReferences !== undefined)
|
|
341
|
+
stale.codeReferences = meta.codeReferences;
|
|
342
|
+
}
|
|
343
|
+
if (options.platformEnvironments) {
|
|
344
|
+
const envData = options.platformEnvironments.get(flagName);
|
|
345
|
+
if (envData && envData.size > 0) {
|
|
346
|
+
stale.environments = envData;
|
|
347
|
+
}
|
|
336
348
|
}
|
|
337
349
|
staleFlags.push(stale);
|
|
338
350
|
}
|
package/dist/staleness.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"staleness.js","sourceRoot":"","sources":["../src/staleness.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"staleness.js","sourceRoot":"","sources":["../src/staleness.ts"],"names":[],"mappings":"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"}
|