LLD: Fix Invalidly Audited TCs
Problem
32 TCs have lossPercentage set but are missing tcConsumption (31) or installationConsumption (1) — the fields required to compute lossPercentage. These were incorrectly marked as AUDITED.
Script
transformer_fixInvalidAuditedTCs
Step 1 — Find and log affected TCs
Query transformer collection:
filter: {
lossPercentage: { $exists: true, $ne: null },
$or: [
{ tcConsumption: null },
{ tcConsumption: { $exists: false } },
{ installationConsumption: null },
{ installationConsumption: { $exists: false } },
],
}
Project: id, number, month, tcConsumption, installationConsumption, lossPercentage
Log every matched TC so we have a record of what was changed.
Step 2 — Bulk update all matched TCs
// Uses native driver (collection.updateMany) to bypass Mongoose timestamps
$set: { auditStatus: "AUDIT_FAILED" }
$unset: { lossPercentage, auditedOn, revenueParams.atc, revenueParams.arr }
Fields touched
| Field | Action | Reason |
|---|---|---|
auditStatus | Set to AUDIT_FAILED | Can't be audited without source data |
lossPercentage | Remove | Computed from missing inputs — invalid |
auditedOn | Remove | Was never validly audited |
revenueParams.atc | Remove | Depends on valid loss computation |
revenueParams.arr | Remove | Depends on valid loss computation |
Fields NOT touched
tcConsumption,meterConstant,installationConsumption— left as-isbillingCount,revenueParams.demand,revenueParams.collection,revenueParams.billingEfficiency,revenueParams.collectionEfficiency— unchangedoverloaded,remark,auditedByAI— unchangedupdatedAt,createdAt— bypassed by using native driver instead of Mongoose
Affected TCs (32)
Executed on: 2026-03-29
| # | id | number | month | tcConsumption | installationConsumption | lossPercentage |
|---|---|---|---|---|---|---|
| 1 | cTNpkNXhpbh4z9eBH0E_P | 11F1005 | 2025-09 | 111111 | MISSING | 1 |
| 2 | X7yWYW4PmEn2R0YVPGQqF | 2118048 | 2025-09 | MISSING | 6556 | -446.3 |
| 3 | _XIsOfz_3rqfWTXPPd9JQ | 2118047 | 2025-09 | MISSING | 7087 | -1376 |
| 4 | FMa6wdAxK9jJk9fJy2cGc | 2118050 | 2025-09 | MISSING | 6373 | -563.9 |
| 5 | CRVtJm-zo0iyR57WAZKbV | 2119011 | 2025-09 | MISSING | 1353 | 9.011 |
| 6 | bEMD85ybhHjzabNTcvXWc | 2119003 | 2025-09 | MISSING | 4145 | -0.2176 |
| 7 | WyhCGCyShx85_pEHbtJyM | 2119055 | 2025-09 | MISSING | 1040 | 12.97 |
| 8 | fEOrYWdEN-sJCLn0m0J98 | 211B038 | 2025-09 | MISSING | 3329 | 21.36 |
| 9 | VJO_9xHE6Ol0F3_LiRa7j | 2118007 | 2025-09 | MISSING | 12382 | 150.5 |
| 10 | -yTHKwAEq_9G9yNPewoA- | 2118064 | 2025-09 | MISSING | 1491 | -0.4717 |
| 11 | LPkeYWzHNhELPOXImckFQ | 2118072 | 2025-09 | MISSING | 744 | 822.3 |
| 12 | Xn3Ip1RioROI3hCsnqvzu | 2118052 | 2025-09 | MISSING | 882 | -9.838 |
| 13 | oWJTIijsXR6jzsgQN42aa | 2118025 | 2025-09 | MISSING | 12520 | -2.346 |
| 14 | gHLgPC2yz2Gq2O6yqGin_ | 2118078 | 2025-09 | MISSING | 1340 | -52.27 |
| 15 | FMRndD5IygBn9y7iYBIVS | 2118070 | 2025-09 | MISSING | 5326 | -31230 |
| 16 | s_xKUVC2gcSDMD44-Sm9K | 2118044 | 2025-09 | MISSING | 28786 | -210.5 |
| 17 | rAbgziafRG9q9RiS4spos | 2118026 | 2025-09 | MISSING | 4669 | -3.114 |
| 18 | LPUqz--3CFa6T8JDQRrbo | 2118028 | 2025-09 | MISSING | 7219 | 99.5 |
| 19 | LWauYLPyxfl2S5VB_oZHU | 2119009 | 2025-09 | MISSING | 1674 | -1.763 |
| 20 | iKp6ae1GO-kqsOc9o3jQ9 | 2119001 | 2025-09 | MISSING | 10364 | -117.5 |
| 21 | w4OwcPDFcUVaAwmRjE1n2 | 2118011 | 2025-09 | MISSING | 23458 | -268.3 |
| 22 | JBXn1iQKsgV6JuGYvoYgH | 2118013 | 2025-09 | MISSING | 16550 | -54.38 |
| 23 | TJPe5QPMXYEbxBEyVtoWk | 2118038 | 2025-09 | MISSING | 28584 | -255.5 |
| 24 | BBh0_D5yQNiX08hfsUjwI | 2118039 | 2025-09 | MISSING | 15943 | -195.2 |
| 25 | NQtwBaz3gT4WKbYd_9ynz | 2118009 | 2025-09 | MISSING | 7745 | 315.9 |
| 26 | 4ROKjDJ98uytALjTwXnpq | 2118018 | 2025-09 | MISSING | 9044 | -2.25 |
| 27 | ETNGqGL94O4uf9h8ILWY0 | 211B006 | 2025-09 | MISSING | 10528 | -10.82 |
| 28 | wT3AxWNU2tBXjNnPyis-G | 444B009 | 2025-09 | MISSING | 1092 | 100 |
| 29 | UUf_jEAe_2R9BaDGtK1bz | 444B047 | 2025-09 | MISSING | 53 | 100 |
| 30 | 6NbaOf8bSn3vp1WOCzl8P | 1483084 | 2025-10 | MISSING | 223 | 73.04 |
| 31 | islYATLasaZ24AiQtIiUo | 1442027 | 2025-10 | MISSING | 3656 | 100.4 |
| 32 | YUL8cD38N12j1Hid9dpsu | 16150 | 2025-11 | MISSING | 4211 | 95.04 |
Summary: 29 in 2025-09, 2 in 2025-10, 1 in 2025-11. 31 missing tcConsumption, 1 missing installationConsumption.
AuditSummary impact
These TCs may affect section/MESCOM-level audit summaries (counts, loss buckets). A separate auditSummary recomputation may be needed after this script runs.