# Test Coverage Plan (ਪੰਜਾਬੀ) 🌐 **Languages:** 🇺🇸 [English](../../../../ops/COVERAGE_PLAN.md) · 🇪🇹 [am](../../../am/docs/ops/COVERAGE_PLAN.md) · 🇸🇦 [ar](../../../ar/docs/ops/COVERAGE_PLAN.md) · 🇦🇿 [az](../../../az/docs/ops/COVERAGE_PLAN.md) · 🇧🇬 [bg](../../../bg/docs/ops/COVERAGE_PLAN.md) · 🇧🇩 [bn](../../../bn/docs/ops/COVERAGE_PLAN.md) · 🇧🇦 [bs](../../../bs/docs/ops/COVERAGE_PLAN.md) · 🇨🇿 [cs](../../../cs/docs/ops/COVERAGE_PLAN.md) · 🇩🇰 [da](../../../da/docs/ops/COVERAGE_PLAN.md) · 🇩🇪 [de](../../../de/docs/ops/COVERAGE_PLAN.md) · 🇬🇷 [el](../../../el/docs/ops/COVERAGE_PLAN.md) · 🇪🇸 [es](../../../es/docs/ops/COVERAGE_PLAN.md) · 🇪🇪 [et](../../../et/docs/ops/COVERAGE_PLAN.md) · 🇮🇷 [fa](../../../fa/docs/ops/COVERAGE_PLAN.md) · 🇫🇮 [fi](../../../fi/docs/ops/COVERAGE_PLAN.md) · 🇫🇷 [fr](../../../fr/docs/ops/COVERAGE_PLAN.md) · 🇮🇪 [ga](../../../ga/docs/ops/COVERAGE_PLAN.md) · 🇮🇳 [gu](../../../gu/docs/ops/COVERAGE_PLAN.md) · 🇳🇬 [ha](../../../ha/docs/ops/COVERAGE_PLAN.md) · 🇮🇱 [he](../../../he/docs/ops/COVERAGE_PLAN.md) · 🇮🇳 [hi](../../../hi/docs/ops/COVERAGE_PLAN.md) · 🇭🇷 [hr](../../../hr/docs/ops/COVERAGE_PLAN.md) · 🇭🇺 [hu](../../../hu/docs/ops/COVERAGE_PLAN.md) · 🇦🇲 [hy](../../../hy/docs/ops/COVERAGE_PLAN.md) · 🇮🇩 [id](../../../id/docs/ops/COVERAGE_PLAN.md) · 🇳🇬 [ig](../../../ig/docs/ops/COVERAGE_PLAN.md) · 🇮🇹 [it](../../../it/docs/ops/COVERAGE_PLAN.md) · 🇯🇵 [ja](../../../ja/docs/ops/COVERAGE_PLAN.md) · 🇬🇪 [ka](../../../ka/docs/ops/COVERAGE_PLAN.md) · 🇰🇭 [km](../../../km/docs/ops/COVERAGE_PLAN.md) · 🇮🇳 [kn](../../../kn/docs/ops/COVERAGE_PLAN.md) · 🇰🇷 [ko](../../../ko/docs/ops/COVERAGE_PLAN.md) · 🇱🇹 [lt](../../../lt/docs/ops/COVERAGE_PLAN.md) · 🇱🇻 [lv](../../../lv/docs/ops/COVERAGE_PLAN.md) · 🇮🇳 [ml](../../../ml/docs/ops/COVERAGE_PLAN.md) · 🇮🇳 [mr](../../../mr/docs/ops/COVERAGE_PLAN.md) · 🇲🇾 [ms](../../../ms/docs/ops/COVERAGE_PLAN.md) · 🇲🇹 [mt](../../../mt/docs/ops/COVERAGE_PLAN.md) · 🇲🇲 [my](../../../my/docs/ops/COVERAGE_PLAN.md) · 🇳🇵 [ne](../../../ne/docs/ops/COVERAGE_PLAN.md) · 🇳🇱 [nl](../../../nl/docs/ops/COVERAGE_PLAN.md) · 🇳🇴 [no](../../../no/docs/ops/COVERAGE_PLAN.md) · 🇮🇳 [or](../../../or/docs/ops/COVERAGE_PLAN.md) · 🇵🇭 [phi](../../../phi/docs/ops/COVERAGE_PLAN.md) · 🇵🇱 [pl](../../../pl/docs/ops/COVERAGE_PLAN.md) · 🇵🇹 [pt](../../../pt/docs/ops/COVERAGE_PLAN.md) · 🇧🇷 [pt-BR](../../../pt-BR/docs/ops/COVERAGE_PLAN.md) · 🇷🇴 [ro](../../../ro/docs/ops/COVERAGE_PLAN.md) · 🇷🇺 [ru](../../../ru/docs/ops/COVERAGE_PLAN.md) · 🇱🇰 [si](../../../si/docs/ops/COVERAGE_PLAN.md) · 🇸🇰 [sk](../../../sk/docs/ops/COVERAGE_PLAN.md) · 🇸🇮 [sl](../../../sl/docs/ops/COVERAGE_PLAN.md) · 🇷🇸 [sr](../../../sr/docs/ops/COVERAGE_PLAN.md) · 🇸🇪 [sv](../../../sv/docs/ops/COVERAGE_PLAN.md) · 🇰🇪 [sw](../../../sw/docs/ops/COVERAGE_PLAN.md) · 🇮🇳 [ta](../../../ta/docs/ops/COVERAGE_PLAN.md) · 🇮🇳 [te](../../../te/docs/ops/COVERAGE_PLAN.md) · 🇹🇭 [th](../../../th/docs/ops/COVERAGE_PLAN.md) · 🇹🇷 [tr](../../../tr/docs/ops/COVERAGE_PLAN.md) · 🇺🇦 [uk-UA](../../../uk-UA/docs/ops/COVERAGE_PLAN.md) · 🇵🇰 [ur](../../../ur/docs/ops/COVERAGE_PLAN.md) · 🇺🇿 [uz](../../../uz/docs/ops/COVERAGE_PLAN.md) · 🇻🇳 [vi](../../../vi/docs/ops/COVERAGE_PLAN.md) · 🇳🇬 [yo](../../../yo/docs/ops/COVERAGE_PLAN.md) · 🇨🇳 [zh-CN](../../../zh-CN/docs/ops/COVERAGE_PLAN.md) · 🇹🇼 [zh-TW](../../../zh-TW/docs/ops/COVERAGE_PLAN.md) --- ਆਖਰੀ ਵਾਰ ਅੱਪਡੇਟ ਕੀਤਾ: 2026-06-28 > 2026-05-13 ਨੂੰ ਮਾਪੀ ਗਈ ਸਥਿਤੀ: ਲਾਈਨਾਂ 82.58%, ਸਟੇਟਮੈਂਟਾਂ 82.58%, ਫੰਕਸ਼ਨਾਂ 84.23%, ਬ੍ਰਾਂਚਾਂ 75.22%। ਪੜਾਅ 1-5 ਪੂਰੇ ਹੋ ਚੁੱਕੇ ਹਨ। ਮੌਜੂਦਾ ਧਿਆਨ ਪੜਾਅ 6 (>=85%) ਅਤੇ ਪੜਾਅ 7 (>=90%) ਉੱਤੇ ਹੈ। ## ਬੇਸਲਾਈਨ ਰਿਪੋਰਟ ਦੀ ਗਣਨਾ ਕਰਨ ਦੇ ਢੰਗ ਦੇ ਅਧਾਰ 'ਤੇ ਕਈ ਕਵਰੇਜ ਅੰਕੜੇ ਹਨ। ਯੋਜਨਾਬੰਦੀ ਲਈ, ਉਨ੍ਹਾਂ ਵਿੱਚੋਂ ਕੇਵਲ ਇੱਕ ਹੀ ਲਾਭਦਾਇਕ ਹੈ। | ਮੈਟ੍ਰਿਕ | ਦਾਇਰਾ | ਸਟੇਟਮੈਂਟ / ਲਾਈਨਾਂ | ਬ੍ਰਾਂਚਾਂ | ਫੰਕਸ਼ਨ | ਨੋਟਸ | | ----------------- | ------------------------------------------------------------ | ----------------: | -------: | -----: | ----------------------------------------------------------------- | | ਪੁਰਾਤਨ | ਪੁਰਾਣਾ `npm run test:coverage` | 79.42% | 75.15% | 67.94% | ਵਧਾਇਆ ਹੋਇਆ: ਟੈਸਟ ਫਾਈਲਾਂ ਗਿਣਦਾ ਹੈ ਅਤੇ `open-sse` ਨੂੰ ਬਾਹਰ ਰੱਖਦਾ ਹੈ | | ਡਾਇਗਨੋਸਟਿਕ | ਕੇਵਲ ਸਰੋਤ, ਟੈਸਟਾਂ ਅਤੇ `open-sse` ਨੂੰ ਬਾਹਰ ਰੱਖਦੇ ਹੋਏ | 68.16% | 63.55% | 64.06% | ਸਿਰਫ਼ `src/**` ਨੂੰ ਅਲੱਗ ਕਰਨ ਲਈ ਲਾਭਦਾਇਕ | | ਸਿਫ਼ਾਰਸ਼ੀ ਬੇਸਲਾਈਨ | ਕੇਵਲ ਸਰੋਤ, ਟੈਸਟਾਂ ਨੂੰ ਬਾਹਰ ਅਤੇ `open-sse` ਨੂੰ ਸ਼ਾਮਲ ਕਰਦੇ ਹੋਏ | 82.58% | 75.22% | 84.23% | ਇਹ ਸੁਧਾਰ ਲਈ ਪੂਰੇ ਪ੍ਰੋਜੈਕਟ ਦੀ ਬੇਸਲਾਈਨ ਹੈ | ਸਿਫ਼ਾਰਸ਼ੀ ਬੇਸਲਾਈਨ ਹੀ ਉਹ ਅੰਕੜਾ ਹੈ ਜਿਸ ਦੇ ਮੁਕਾਬਲੇ ਅਨੁਕੂਲਨ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ। ## ਨਿਯਮ - ਕਵਰੇਜ ਟੀਚੇ ਸਰੋਤ ਫਾਈਲਾਂ ਉੱਤੇ ਲਾਗੂ ਹੁੰਦੇ ਹਨ, `tests/**` ਉੱਤੇ ਨਹੀਂ। - `open-sse/**` ਉਤਪਾਦ ਦਾ ਹਿੱਸਾ ਹੈ ਅਤੇ ਇਸ ਨੂੰ ਦਾਇਰੇ ਵਿੱਚ ਰੱਖਣਾ ਲਾਜ਼ਮੀ ਹੈ। - ਨਵੇਂ ਕੋਡ ਨਾਲ ਛੋਹੇ ਗਏ ਖੇਤਰਾਂ ਵਿੱਚ ਕਵਰੇਜ ਘਟਣੀ ਨਹੀਂ ਚਾਹੀਦੀ। - ਲਾਗੂਕਰਨ ਦੇ ਵੇਰਵਿਆਂ ਦੀ ਬਜਾਏ ਵਿਹਾਰ ਅਤੇ ਬ੍ਰਾਂਚ ਨਤੀਜਿਆਂ ਦੀ ਜਾਂਚ ਨੂੰ ਤਰਜੀਹ ਦਿਓ। - `src/lib/db/**` ਲਈ ਵਿਆਪਕ ਮੌਕਾਂ ਦੀ ਬਜਾਏ ਅਸਥਾਈ SQLite ਡੇਟਾਬੇਸਾਂ ਅਤੇ ਛੋਟੇ ਫਿਕਸਚਰਾਂ ਨੂੰ ਤਰਜੀਹ ਦਿਓ। ## ਮੌਜੂਦਾ ਕਮਾਂਡ ਸੈੱਟ - `npm run test:coverage` - ਯੂਨਿਟ ਟੈਸਟ ਸੂਟ ਲਈ ਮੁੱਖ ਸਰੋਤ ਕਵਰੇਜ ਗੇਟ - `text-summary`, `html`, `json-summary`, ਅਤੇ `lcov` ਤਿਆਰ ਕਰਦਾ ਹੈ - `npm run coverage:report` - ਨਵੀਨਤਮ ਰਨ ਤੋਂ ਫਾਈਲ-ਦਰ-ਫਾਈਲ ਵਿਸਤ੍ਰਿਤ ਰਿਪੋਰਟ - `npm run test:coverage:legacy` - ਕੇਵਲ ਇਤਿਹਾਸਕ ਤੁਲਨਾ ਲਈ ## ਮੀਲ ਪੱਥਰ | ਪੜਾਅ | ਟੀਚਾ | ਧਿਆਨ | ਸਥਿਤੀ | | ------ | --------------------: | ----------------------------------------------------- | ------- | | ਪੜਾਅ 1 | 60% ਸਟੇਟਮੈਂਟ / ਲਾਈਨਾਂ | ਤੁਰੰਤ ਲਾਭ ਅਤੇ ਘੱਟ-ਜੋਖਮ ਯੂਟਿਲਿਟੀ ਕਵਰੇਜ | ✅ ਪੂਰਾ | | ਪੜਾਅ 2 | 65% ਸਟੇਟਮੈਂਟ / ਲਾਈਨਾਂ | DB ਅਤੇ ਰੂਟ ਦੀਆਂ ਬੁਨਿਆਦਾਂ | ✅ ਪੂਰਾ | | ਪੜਾਅ 3 | 70% ਸਟੇਟਮੈਂਟ / ਲਾਈਨਾਂ | ਪ੍ਰਦਾਤਾ ਪ੍ਰਮਾਣਿਕਤਾ ਅਤੇ ਵਰਤੋਂ ਵਿਸ਼ਲੇਸ਼ਣ | ✅ ਪੂਰਾ | | ਪੜਾਅ 4 | 75% ਸਟੇਟਮੈਂਟ / ਲਾਈਨਾਂ | `open-sse` ਰੂਪਾਂਤਰਕ ਅਤੇ ਸਹਾਇਕ | ✅ ਪੂਰਾ | | ਪੜਾਅ 5 | 80% ਸਟੇਟਮੈਂਟ / ਲਾਈਨਾਂ | `open-sse` ਹੈਂਡਲਰ ਅਤੇ ਐਗਜ਼ੀਕਿਊਟਰ ਬ੍ਰਾਂਚਾਂ | ✅ ਪੂਰਾ | | ਪੜਾਅ 6 | 85% ਸਟੇਟਮੈਂਟ / ਲਾਈਨਾਂ | ਵਧੇਰੇ ਔਖੇ ਸੀਮਾਵਰਤੀ ਮਾਮਲੇ, ਬ੍ਰਾਂਚ ਕਰਜ਼ਾ, ਰਿਗ੍ਰੈਸ਼ਨ ਸੂਟ | ਜਾਰੀ ਹੈ | | ਪੜਾਅ 7 | 90% ਸਟੇਟਮੈਂਟ / ਲਾਈਨਾਂ | ਅੰਤਿਮ ਸਮੀਖਿਆ, ਖੱਪੇ ਬੰਦ ਕਰਨਾ, ਸਖ਼ਤ ਕ੍ਰਮਵਾਰ ਵਾਧਾ | ਬਕਾਇਆ | ਹਰੇਕ ਪੜਾਅ ਨਾਲ ਬ੍ਰਾਂਚਾਂ ਅਤੇ ਫੰਕਸ਼ਨਾਂ ਦੀ ਕਵਰੇਜ ਕ੍ਰਮਵਾਰ ਵਧਣੀ ਚਾਹੀਦੀ ਹੈ, ਪਰ ਮੁੱਖ ਸਖ਼ਤ ਟੀਚਾ ਸਟੇਟਮੈਂਟ / ਲਾਈਨਾਂ ਹਨ। ## ਤਰਜੀਹੀ ਹੌਟਸਪੌਟ ਇਨ੍ਹਾਂ ਫ਼ਾਈਲਾਂ ਦੀ ਅੱਜ ਲਾਈਨ ਕਵਰੇਜ ਸਭ ਤੋਂ ਘੱਟ (< 60%) ਹੈ ਅਤੇ ਇਹ ਪੜਾਅ 6-7 ਲਈ ਸਭ ਤੋਂ ਵਧੀਆ ਨਤੀਜਾ ਪ੍ਰਦਾਨ ਕਰਦੀਆਂ ਹਨ। 2026-05-13 ਨੂੰ `coverage/coverage-summary.json` ਤੋਂ ਤਿਆਰ ਕੀਤਾ ਗਿਆ: | # | ਫ਼ਾਈਲ | ਲਾਈਨਾਂ % | | --- | ------------------------------------------------------------ | -------: | | 1 | `open-sse/services/compression/validation.ts` | 7.87% | | 2 | `src/app/api/v1/batches/route.ts` | 9.67% | | 3 | `src/app/docs/components/FeedbackWidget.tsx` | 9.80% | | 4 | `open-sse/services/compression/toolResultCompressor.ts` | 10.00% | | 5 | `src/app/docs/components/DocCodeBlocks.tsx` | 10.63% | | 6 | `open-sse/services/compression/engines/rtk/lineFilter.ts` | 10.96% | | 7 | `open-sse/services/specificityRules.ts` | 11.28% | | 8 | `src/mitm/systemCommands.ts` | 12.19% | | 9 | `open-sse/services/compression/aggressive.ts` | 12.77% | | 10 | `src/app/api/v1/batches/[id]/cancel/route.ts` | 12.98% | | 11 | `open-sse/services/compression/progressiveAging.ts` | 13.26% | | 12 | `open-sse/services/compression/engines/rtk/smartTruncate.ts` | 13.43% | | 13 | `open-sse/services/compression/engines/rtk/deduplicator.ts` | 13.51% | | 14 | `src/lib/cloudAgent/agents/jules.ts` | 13.52% | | 15 | `open-sse/services/compression/lite.ts` | 14.46% | | 16 | `src/app/api/v1/rerank/route.ts` | 14.94% | | 17 | `open-sse/services/compression/preservation.ts` | 15.07% | | 18 | `src/lib/cloudAgent/agents/codex.ts` | 15.54% | | 19 | `open-sse/services/tierResolver.ts` | 16.66% | | 20 | `src/app/docs/components/DocsLazyWrapper.tsx` | 16.66% | ਪੜਾਅ 6-7 ਲਈ ਮੁੱਖ ਵਿਸ਼ੇ: - `open-sse/services/compression/**` ਘੱਟ ਕਵਰੇਜ ਵਾਲੀਆਂ ਫ਼ਾਈਲਾਂ ਦਾ ਸਭ ਤੋਂ ਸੰਘਣਾ ਸਮੂਹ ਹੈ ਅਤੇ ਬਾਕੀ ਰਹਿੰਦੇ ਅੰਤਰ ਦਾ ਵੱਡਾ ਹਿੱਸਾ ਹੈ। - ਬੈਚ ਅਤੇ ਰੀਰੈਂਕ API ਰੂਟਾਂ (`src/app/api/v1/batches/**`, `src/app/api/v1/rerank/route.ts`) ਨੂੰ ਹੈਂਡਲਰ-ਪੱਧਰੀ ਟੈਸਟਾਂ ਦੀ ਲੋੜ ਹੈ। - ਕਲਾਉਡ ਏਜੰਟ ਅਡੈਪਟਰਾਂ (`src/lib/cloudAgent/agents/jules.ts`, `codex.ts`) ਅਤੇ `tierResolver.ts` ਨੂੰ ਪਰਿਦ੍ਰਿਸ਼ ਟੈਸਟਾਂ ਦੀ ਲੋੜ ਹੈ। - ਡੌਕਸ UI ਕੰਪੋਨੈਂਟ ਅਤੇ `src/mitm/systemCommands.ts` ਘੱਟ ਤਰਜੀਹ ਵਾਲੇ ਹਨ, ਪਰ ਇਨ੍ਹਾਂ ਤੋਂ ਆਸਾਨੀ ਨਾਲ ਬ੍ਰਾਂਚ ਕਵਰੇਜ ਲਾਭ ਮਿਲ ਸਕਦੇ ਹਨ। ## ਕਾਰਜ-ਨਿਰਵਾਹ ਚੈੱਕਲਿਸਟ ### ਪੜਾਅ 1: 56.95% -> 60% - [x] ਕਵਰੇਜ ਮੈਟ੍ਰਿਕ ਨੂੰ ਠੀਕ ਕਰੋ ਤਾਂ ਜੋ ਇਹ ਟੈਸਟ ਫ਼ਾਈਲਾਂ ਦੀ ਬਜਾਏ ਸਰੋਤ ਕੋਡ ਨੂੰ ਦਰਸਾਏ - [x] ਤੁਲਨਾ ਲਈ ਇੱਕ ਵਿਰਾਸਤੀ ਕਵਰੇਜ ਸਕ੍ਰਿਪਟ ਬਣਾਈ ਰੱਖੋ - [x] ਰਿਪੋਜ਼ਟਰੀ ਵਿੱਚ ਬੇਸਲਾਈਨ ਅਤੇ ਹੌਟਸਪੌਟ ਦਰਜ ਕਰੋ - [ ] ਘੱਟ-ਜੋਖਮ ਵਾਲੀਆਂ ਯੂਟਿਲਿਟੀਆਂ ਲਈ ਕੇਂਦ੍ਰਿਤ ਟੈਸਟ ਜੋੜੋ: - `src/shared/utils/upstreamError.ts` - `src/shared/utils/fetchTimeout.ts` - `src/lib/api/errorResponse.ts` - `src/shared/utils/apiAuth.ts` - `src/lib/display/names.ts` - [ ] ਇਨ੍ਹਾਂ ਲਈ ਰੂਟ ਟੈਸਟ ਜੋੜੋ: - `src/app/api/settings/require-login/route.ts` - `src/app/api/providers/[id]/models/route.ts` ### ਪੜਾਅ 2: 60% -> 65% - [ ] ਇਨ੍ਹਾਂ ਲਈ DB-ਸਮਰਥਿਤ ਟੈਸਟ ਜੋੜੋ: - `src/lib/db/modelComboMappings.ts` - `src/lib/db/settings.ts` - `src/lib/db/registeredKeys.ts` - [ ] ਇਨ੍ਹਾਂ ਵਿੱਚ ਬ੍ਰਾਂਚ ਵਿਹਾਰ ਕਵਰ ਕਰੋ: - `src/lib/providers/validation.ts` - `src/app/api/v1/embeddings/route.ts` - `src/app/api/v1/moderations/route.ts` ### ਪੜਾਅ 3: 65% -> 70% - [ ] ਇਨ੍ਹਾਂ ਲਈ ਵਰਤੋਂ ਵਿਸ਼ਲੇਸ਼ਣ ਟੈਸਟ ਜੋੜੋ: - `src/lib/usage/usageHistory.ts` - `src/lib/usage/usageStats.ts` - `src/lib/usage/costCalculator.ts` - [ ] ਪ੍ਰੌਕਸੀ ਪ੍ਰਬੰਧਨ ਅਤੇ ਸੈਟਿੰਗਾਂ ਦੀਆਂ ਬ੍ਰਾਂਚਾਂ ਲਈ ਰੂਟ ਕਵਰੇਜ ਵਧਾਓ ### ਪੜਾਅ 4: 70% -> 75% - [ ] ਅਨੁਵਾਦਕ ਹੈਲਪਰਾਂ ਅਤੇ ਕੇਂਦਰੀ ਅਨੁਵਾਦ ਪਾਥਾਂ ਨੂੰ ਕਵਰ ਕਰੋ: - `open-sse/translator/index.ts` - `open-sse/translator/helpers/*` - `open-sse/translator/request/*` - `open-sse/translator/response/*` ### ਪੜਾਅ 5: 75% -> 80% - [ ] ਇਨ੍ਹਾਂ ਲਈ ਹੈਂਡਲਰ-ਪੱਧਰੀ ਟੈਸਟ ਜੋੜੋ: - `open-sse/handlers/chatCore.ts` - `open-sse/handlers/responsesHandler.js` - `open-sse/handlers/imageGeneration.js` - `open-sse/handlers/embeddings.js` - [ ] ਪ੍ਰਦਾਤਾ-ਵਿਸ਼ੇਸ਼ ਪ੍ਰਮਾਣੀਕਰਨ, ਮੁੜ-ਕੋਸ਼ਿਸ਼ਾਂ ਅਤੇ ਐਂਡਪੌਇੰਟ ਓਵਰਰਾਈਡਾਂ ਲਈ ਐਗਜ਼ੀਕਿਊਟਰ ਬ੍ਰਾਂਚ ਕਵਰੇਜ ਜੋੜੋ ### ਪੜਾਅ 6: 80% -> 85% - [ ] ਮੁੱਖ ਕਵਰੇਜ ਪਾਥ ਵਿੱਚ ਹੋਰ ਐਜ-ਕੇਸ ਸੂਟ ਮਿਲਾਓ - [ ] ਕਮਜ਼ੋਰ ਕੰਸਟਰਕਟਰ/ਹੈਲਪਰ ਕਵਰੇਜ ਵਾਲੇ DB ਮੌਡਿਊਲਾਂ ਲਈ ਫੰਕਸ਼ਨ ਕਵਰੇਜ ਵਧਾਓ - [ ] `settings.ts`, `registeredKeys.ts`, `validation.ts`, ਅਤੇ ਅਨੁਵਾਦਕ ਹੈਲਪਰਾਂ ਵਿੱਚ ਬ੍ਰਾਂਚ ਅੰਤਰ ਬੰਦ ਕਰੋ ### ਪੜਾਅ 7: 85% -> 90% - [ ] ਬਾਕੀ ਰਹਿ ਗਈਆਂ ਘੱਟ-ਕਵਰੇਜ ਫ਼ਾਈਲਾਂ ਨੂੰ ਰੁਕਾਵਟਾਂ ਵਜੋਂ ਲਓ - [ ] 90% ਤੱਕ ਪਹੁੰਚਣ ਦੇ ਯਤਨ ਦੌਰਾਨ ਠੀਕ ਕੀਤੇ ਹਰੇਕ ਅਣਕਵਰ ਉਤਪਾਦਨ ਬੱਗ ਲਈ ਰਿਗ੍ਰੈਸ਼ਨ ਟੈਸਟ ਜੋੜੋ - [ ] CI ਵਿੱਚ ਕਵਰੇਜ ਗੇਟ ਕੇਵਲ ਉਦੋਂ ਵਧਾਓ ਜਦੋਂ ਸਥਾਨਕ ਬੇਸਲਾਈਨ ਘੱਟੋ-ਘੱਟ ਲਗਾਤਾਰ ਦੋ ਰਨਾਂ ਲਈ ਸਥਿਰ ਹੋਵੇ ## ਰੈਚਟ ਨੀਤੀ `npm run test:coverage` ਦੀਆਂ ਥ੍ਰੈਸ਼ਹੋਲਡਾਂ ਨੂੰ ਸਿਰਫ਼ ਉਦੋਂ ਅੱਪਡੇਟ ਕਰੋ ਜਦੋਂ ਪ੍ਰੋਜੈਕਟ ਅਸਲ ਵਿੱਚ ਅਗਲੇ ਮੀਲ-ਪੱਥਰ ਨੂੰ ਇੱਕ ਆਰਾਮਦਾਇਕ ਅੰਤਰ ਨਾਲ ਪਾਰ ਕਰ ਲਵੇ। **ਮੌਜੂਦਾ ਗੇਟ:** `npm run test:coverage` **60 ਸਟੇਟਮੈਂਟਾਂ / 60 ਲਾਈਨਾਂ / 60 ਫੰਕਸ਼ਨਾਂ / 60 ਬ੍ਰਾਂਚਾਂ** ਨੂੰ ਲਾਗੂ ਕਰਦਾ ਹੈ (ਮੈਟ੍ਰਿਕ ਨੂੰ Quality-Gates Fase 6A.1 ਵਿੱਚ ਮੁੜ ਬੇਸ ਕੀਤਾ ਗਿਆ ਸੀ — ਪਹਿਲਾਂ ਵਾਲੀ 82.58% ਬੇਸਲਾਈਨ ਵਧੀ ਹੋਈ ਸੀ ਕਿਉਂਕਿ ਉਸ ਵਿੱਚ ਟੈਸਟ ਫਾਈਲਾਂ ਗਿਣੀਆਂ ਜਾਂਦੀਆਂ ਸਨ ਅਤੇ `open-sse` ਨੂੰ ਸ਼ਾਮਲ ਨਹੀਂ ਕੀਤਾ ਜਾਂਦਾ ਸੀ)। `test:coverage:legacy` ਕਮਾਂਡ ਇਤਿਹਾਸਕ ਤੁਲਨਾ ਲਈ ਪੁਰਾਣੇ 50/50/50 ਮੈਟ੍ਰਿਕ ਨੂੰ ਬਰਕਰਾਰ ਰੱਖਦੀ ਹੈ। ਨਵੀਨਤਮ ਰਿਪੋਰਟ ਦੇ ਆਧਾਰ 'ਤੇ ਤੁਰੰਤ ਥ੍ਰੈਸ਼ਹੋਲਡ ਜਾਂਚਾਂ ਲਈ ਇਹ ਵਰਤੋ: ```bash node scripts/check/test-report-summary.mjs --threshold 75 ``` ਸਿਫ਼ਾਰਸ਼ੀ ਰੈਚਟ ਕ੍ਰਮ (ਕ੍ਰਮ `ਸਟੇਟਮੈਂਟਾਂ-ਲਾਈਨਾਂ / ਬ੍ਰਾਂਚਾਂ / ਫੰਕਸ਼ਨਾਂ` ਹੈ): 1. 55/60/55 2. 60/62/58 3. 65/64/62 4. 70/66/66 5. 75/70/72 <-- ਮੌਜੂਦਾ ਗੇਟ (75/70/75) 6. 80/75/78 7. 85/80/84 8. 90/85/88 ਜਦੋਂ ਬ੍ਰਾਂਚ ਕਵਰੇਜ ਲਗਾਤਾਰ ਦੋ ਰਨਾਂ ਲਈ 78% ਤੋਂ ਉੱਪਰ ਬਣੀ ਰਹੇ, ਤਾਂ ਅਗਲਾ ਰੈਚਟ ਟੀਚਾ `80/75/78` ਹੈ। ## ਜਾਣਿਆ-ਪਛਾਣਿਆ ਅੰਤਰ ਮੌਜੂਦਾ ਕਵਰੇਜ ਕਮਾਂਡ ਮੁੱਖ Node ਯੂਨਿਟ ਸੂਟ ਨੂੰ ਮਾਪਦੀ ਹੈ ਅਤੇ ਇਸ ਰਾਹੀਂ ਪਹੁੰਚੇ ਸਰੋਤ ਨੂੰ ਸ਼ਾਮਲ ਕਰਦੀ ਹੈ, ਜਿਸ ਵਿੱਚ `open-sse` ਵੀ ਸ਼ਾਮਲ ਹੈ। ਇਹ ਹਾਲੇ Vitest ਕਵਰੇਜ ਨੂੰ ਇੱਕੋ ਇਕਸਾਰ ਰਿਪੋਰਟ ਵਿੱਚ ਮਰਜ ਨਹੀਂ ਕਰਦੀ। ਇਹ ਮਰਜ ਬਾਅਦ ਵਿੱਚ ਕਰਨਾ ਲਾਭਦਾਇਕ ਹੈ, ਪਰ ਇਹ 60% -> 80% ਦੀ ਚੜ੍ਹਾਈ ਸ਼ੁਰੂ ਕਰਨ ਵਿੱਚ ਰੁਕਾਵਟ ਨਹੀਂ ਹੈ।