{"id":"e7ab006b-f6b4-4f16-9263-ecb9c0395e60","shortId":"49nN88","kind":"skill","title":"ql-deep-review","tagline":"Multi-perspective post-implementation review aggregator for quantum-loop. Invokes 2-7 reviewer agents in parallel based on risk score, applies actionability filter, dedups, aggregates with evidence requirements. Use AFTER the per-story two-stage review gates pass and before mergi","description":"# ql-deep-review — whole-feature post-implementation review\n\n## Purpose\n\nquantum-loop's built-in two-stage review gate (`ql-review`: spec-compliance → code-quality) operates on ONE story at a time inside ONE worktree. It does not detect:\n\n1. **Cross-story divergence** (e.g., story A uses `'google'` as a secret key while story B uses `'google-api-key'` for the same constant).\n2. **Post-merge regressions** (test that was green in isolation breaks after integration).\n3. **Drift from original user intent** (paraphrase chain from intent → design → PRD → plan → code).\n4. **Low-signal comments** that look like findings but lack evidence (CRA actionability is 0.9-19.2% per Chowdhury 2604.03196; human baseline is ~60%).\n\n`ql-deep-review` closes these gaps with a whole-feature review that runs AFTER all stories in a wave / feature pass the per-story gate.\n\n## When to use\n\n- After `ql-execute` emits `COMPLETE` for a wave and before merging the feature branch to master.\n- After cherry-picking or merging a foreign branch whose conflict-resolution changed semantics.\n- Manually, when suspicion of cross-story drift is high (e.g., follow-on work after a long autonomous run).\n\n## What it does NOT do\n\n- **Does not** replace the per-story two-stage gate. Run `ql-review` per story, then this.\n- **Does not** auto-fix findings. Produces a structured report; user or orchestrator drives action.\n- **Does not** block merge autonomously. Emits a verdict + confidence; user decides.\n\n## Risk scoring (0-100)\n\nRisk factors and weights (inspired by soliton's risk-adaptive dispatch):\n\n| Factor | Weight | Measurement |\n|--------|:------:|-------------|\n| Blast radius | 25 | count of files touched in wave × (max transitive callers of any touched symbol ÷ 100) |\n| Change complexity | 15 | `difftastic` or `cloc` diff line count; tree-sitter function edit count |\n| Sensitive paths | 20 | glob match: `auth/`, `payment/`, `*.env*`, `*secret*`, `*password*`, `*token*` |\n| File size / scope | 10 | total LOC touched / number of files |\n| AI-authored signal | 10 | git commit trailer `Co-Authored-By: Claude`, uniform-style heuristic |\n| Test coverage gap | 10 | production files touched without corresponding test edits |\n| Intent-drift signal | 10 | `ql-intent-check` CRITICAL findings count (optional input) |\n\nScore → dispatch tier:\n- **0-30 LOW**: 2 reviewers (code-reviewer, synthesizer). Target turnaround 2-3 min.\n- **31-60 MEDIUM**: 4 reviewers (+security-reviewer, test-engineer). 4-6 min.\n- **61-80 HIGH**: 6 reviewers (+critic, architect). 6-10 min.\n- **81-100 CRITICAL**: 7 reviewers (+cross-provider critic using codex or gemini via `/ask`). 10-15 min plus manual inspection.\n\n## Reviewer agents (dispatched per tier)\n\nAll agents are invoked via the `Agent` tool in parallel. Each receives:\n- `BASE_SHA..HEAD_SHA` — whole-feature diff scope\n- `PRD_PATH` — path to the feature PRD\n- `STORY_LIST` — JSON list of stories executed with their IDs and status\n- `INTENT_SNAPSHOT` — verbatim user intent (from `quantum.json.userIntent` if present)\n- `CHANGED_FILES` — file-list manifest\n\n### Tier-core reviewers (always dispatched)\n\n- **`oh-my-claudecode:code-reviewer`** — severity-rated findings (CRITICAL / HIGH / MEDIUM / LOW) with line-level evidence.\n- **`soliton:synthesizer`** — risk-adaptive PR-style review; contributes a reviewer-side risk score and a READY_TO_MERGE / NEEDS_REWORK / BLOCKED verdict.\n\n### Tier-MEDIUM additions\n\n- **`oh-my-claudecode:security-reviewer`** — OWASP Top 10 + secret exposure + input validation; hard-dispatched when sensitive-paths factor > 0.\n- **`oh-my-claudecode:test-engineer`** — test-quality audit: AC-to-test mapping, over-mock detection (Hora & Robbes 2026), missing edge cases.\n\n### Tier-HIGH additions\n\n- **`oh-my-claudecode:critic`** — multi-perspective adversarial critique; self-audit + Realist Check.\n- **`oh-my-claudecode:architect`** — architectural review: SOLID, layering, cross-cutting concerns.\n\n### Tier-CRITICAL additions\n\n- **Cross-provider critic** — via `omc ask codex --agent-prompt critic` (Codex reviews Claude's output) OR `omc ask gemini`. Different failure modes → higher catch rate.\n\n## Actionability filter (the Chowdhury 2604.03196 fix)\n\nEvery finding returned by a reviewer MUST include:\n1. `file` (string, path)\n2. `line` or `line_start` + `line_end` (integer)\n3. `evidence_type`: one of `code-reference` / `command-output` / `spec-citation` / `test-failure` / `diff-hunk`\n4. `severity`: `critical` / `high` / `medium` / `low` / `info`\n5. `confidence`: 0-100\n\nFindings missing any required field are moved to a `suppressed[]` array with reason \"no actionable evidence.\" Surface count to the user; do not silently drop.\n\n## Synthesis\n\n### Dedup\n\nGroup findings by `(file, line_start, severity)`; merge identical claims from different reviewers by concatenating `agents` array. Increases confidence when multiple reviewers agree (per MARS 2509.20502).\n\n### Conflict detection\n\nTwo findings on the same `(file, line)` with opposed verdicts (e.g., one says \"introduce abstraction\", another says \"remove abstraction\") are flagged in a `conflicts[]` block for user arbitration.\n\n### Hallucination check\n\nFor every finding that cites a file / symbol / API:\n- Verify the file exists: `[ -f \"$file\" ]`.\n- Verify the symbol is reachable (grep for declaration).\n- Verify commands in `suggested_fix` actually match project toolchain.\nFindings that fail this check move to `suppressed[]` with reason \"reviewer hallucinated target.\"\n\n### Meta-review\n\nThe orchestrator (or this skill's own synthesis step) produces:\n- **Overall verdict**: `APPROVE` / `APPROVE_WITH_COMMENTS` / `REQUEST_CHANGES` / `BLOCKS_MERGE`.\n- **Critical blockers** (severity=critical with confidence ≥80).\n- **High-priority issues** (severity=high with confidence ≥70).\n- **Kudos** (explicitly captured positive signals — what was done well).\n- **Suppressed findings count** (transparency about what was dropped).\n\n## Output format\n\nEmits a single JSON artifact at `quantum.reviews[<feature-id>].deepReview`:\n\n```json\n{\n  \"feature_id\": \"<prd-id or feature-slug>\",\n  \"base_sha\": \"<before-first-story-commit>\",\n  \"head_sha\": \"<after-last-story-commit>\",\n  \"files_changed\": 12,\n  \"stories_included\": [\"US-001\", \"US-002\", ...],\n  \"timestamp\": \"<ISO 8601>\",\n  \"risk_score\": 47,\n  \"tier\": \"MEDIUM\",\n  \"reviewers_dispatched\": [\"code-reviewer\", \"synthesizer\", \"security-reviewer\", \"test-engineer\"],\n  \"findings\": [\n    {\n      \"id\": \"F-001\",\n      \"agents\": [\"code-reviewer\", \"synthesizer\"],\n      \"severity\": \"high\",\n      \"confidence\": 88,\n      \"category\": \"correctness\",\n      \"file\": \"src/auth/session.ts\",\n      \"line_start\": 42, \"line_end\": 48,\n      \"evidence_type\": \"code-reference\",\n      \"description\": \"<what>\",\n      \"suggested_fix\": \"<how>\",\n      \"cites\": [\"PRD AC-3\", \"tests/auth.test.ts:100\"]\n    }\n  ],\n  \"conflicts\": [],\n  \"suppressed\": [{\"agent\": \"architect\", \"reason\": \"no line citation\", \"count\": 2}],\n  \"kudos\": [\"Clean separation of concerns in the new token-refresh flow\"],\n  \"verdict\": \"APPROVE_WITH_COMMENTS\",\n  \"blockers\": [],\n  \"high_priority\": [\"F-001\", \"F-003\"]\n}\n```\n\nAlso emits a human-readable markdown summary to `docs/reviews/<feature-id>-deep-review.md`.\n\n## Anti-rationalization guards\n\n| The agent says… | The truth is… |\n|-----------------|---------------|\n| \"We already did per-story review, this is redundant\" | Per-story review is story-LOCAL. Cross-story + whole-feature review catches different defects. Both are required. |\n| \"Risk score is LOW, skip the deep review\" | Run LOW-tier anyway (2 reviewers, 2-3 min). The cost is a rounding error on a multi-hour autonomous run. |\n| \"Reviewer didn't cite evidence but it's clearly right\" | Without evidence the finding is an opinion. Suppress it. Low-signal findings lower the whole reviewer distribution per Chowdhury 2604.03196. |\n| \"Conflict between two reviewers means one is wrong — pick the stronger\" | No. Log the conflict and let the user arbitrate. Silent pick is a different failure mode. |\n| \"APPROVE_WITH_COMMENTS means done\" | Comments still need addressing before merge unless user explicitly waives them. Treat \"approve with comments\" as \"conditional approve.\" |\n| \"Hallucination check failed on one finding — suppress the whole report\" | Suppress just the hallucinated finding. Rest of the report is valid. |\n\n## How to invoke\n\n```\n/quantum-loop:ql-deep-review\n```\n\nWith optional arguments:\n```\n/quantum-loop:ql-deep-review --tier=CRITICAL          # Force tier escalation\n/quantum-loop:ql-deep-review --exclude=architect      # Skip one reviewer\n/quantum-loop:ql-deep-review --feature=<prd-id>       # Explicit feature scope\n```\n\n## Integration with existing skills\n\n- **`ql-review`** (per-story): runs per story inside each worktree. Different scope.\n- **`ql-verify`** (Iron Law): runs as the last check inside a story's implementer agent. Different granularity.\n- **`ql-execute`**: after emitting `COMPLETE`, should invoke `ql-deep-review` before handing the merged branch back to the user (opt-in via `--deep-review` flag).\n- **`ql-intent-check`**: feeds the \"intent-drift signal\" risk factor. Can be run independently first to pre-populate the signal.\n- **`ql-housekeep`**: pre-flight hygiene check; findings here are inputs to the reviewer dispatch context.\n\n## Known limitations (honest)\n\n- **Latency**: tier HIGH or CRITICAL can take 10-15 min. Acceptable at the end of a multi-hour autonomous run; not suitable for interactive dev loops.\n- **Cost**: seven parallel reviewers × ~10K tokens each ≈ 70K input tokens per CRITICAL review. Budget-aware.\n- **Reviewer drift**: the reviewer agents themselves can hallucinate. The hallucination check catches the coarse cases; subtle hallucinations (e.g., incorrect semantic claims about framework behavior) slip through.\n- **Evidence rubric is language-agnostic**: some languages (Rust, OCaml) have richer evidence channels (borrow-checker output) this rubric doesn't exploit yet.","tags":["deep","review","quantum","loop","andyzengmath","agent-skills","agentskills","claude-code","claude-code-plugin","claude-code-skill","skillsmp"],"capabilities":["skill","source-andyzengmath","skill-ql-deep-review","topic-agent-skills","topic-agentskills","topic-claude-code","topic-claude-code-plugin","topic-claude-code-skill","topic-skillsmp"],"categories":["quantum-loop"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/andyzengmath/quantum-loop/ql-deep-review","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add andyzengmath/quantum-loop","source_repo":"https://github.com/andyzengmath/quantum-loop","install_from":"skills.sh"}},"qualityScore":"0.461","qualityRationale":"deterministic score 0.46 from registry signals: · indexed on github topic:agent-skills · 22 github stars · SKILL.md body (9,962 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T19:05:27.898Z","embedding":null,"createdAt":"2026-04-24T01:02:06.118Z","updatedAt":"2026-05-18T19:05:27.898Z","lastSeenAt":"2026-05-18T19:05:27.898Z","tsv":"'-001':978,1002,1066 '-002':980 '-003':1068 '-10':462 '-100':312,465,768 '-15':480,1410 '-19.2':168 '-3':438,1033,1137 '-30':427 '-6':452 '-60':441 '-7':19 '-80':455 '/ask':478 '/quantum-loop':1257,1265,1275,1285 '0':311,426,622,767 '0.9':167 '1':98,726 '10':374,385,401,413,479,609,1409 '100':344,1035 '10k':1433 '12':974 '15':347 '2':18,124,429,437,730,1045,1134,1136 '20':362 '2026':645 '25':330 '2509.20502':821 '2604.03196':171,716,1182 '3':138,738 '31':440 '4':152,443,451,758 '42':1018 '47':984 '48':1021 '5':765 '6':457,461 '60':175 '61':454 '7':467 '70':937 '70k':1436 '80':928 '81':464 '88':1011 'abstract':838,842 'ac':635,1032 'ac-to-test':634 'accept':1412 'action':29,165,297,712,783 'actual':882 'adapt':323,575 'addit':599,652,684 'address':1218 'adversari':661 'agent':21,486,491,496,694,811,1003,1038,1085,1327,1449 'agent-prompt':693 'aggreg':12,32 'agnost':1476 'agre':818 'ai':382 'ai-author':381 'alreadi':1091 'also':1069 'alway':549 'anoth':839 'anti':1081 'anti-ration':1080 'anyway':1133 'api':118,862 'appli':28 'approv':914,915,1059,1210,1227,1232 'arbitr':851,1202 'architect':460,672,1039,1281 'architectur':673 'argument':1264 'array':779,812 'artifact':961 'ask':691,704 'audit':633,665 'auth':365 'author':383,391 'auto':286 'auto-fix':285 'autonom':257,302,1150,1421 'awar':1444 'b':114 'back':1347 'base':24,502,968 'baselin':173 'behavior':1468 'blast':328 'block':300,594,848,920 'blocker':923,1062 'borrow':1486 'borrow-check':1485 'branch':221,232,1346 'break':135 'budget':1443 'budget-awar':1442 'built':68 'built-in':67 'caller':339 'captur':940 'case':648,1459 'catch':710,1115,1456 'categori':1012 'chain':145 'chang':237,345,539,919,973 'channel':1484 'check':417,667,853,890,1234,1321,1362,1389,1455 'checker':1487 'cherri':226 'cherry-pick':225 'chowdhuri':170,715,1181 'citat':751,1043 'cite':858,1030,1155 'claim':805,1465 'claud':393,699 'claudecod':554,603,626,656,671 'clean':1047 'clear':1160 'cloc':350 'close':180 'co':390 'co-authored-bi':389 'coars':1458 'code':82,151,432,556,744,990,1005,1025 'code-qu':81 'code-refer':743,1024 'code-review':431,555,989,1004 'codex':474,692,697 'command':747,878 'command-output':746 'comment':156,917,1061,1212,1215,1229 'commit':387 'complet':212,1335 'complex':346 'complianc':80 'concaten':810 'concern':680,1050 'condit':1231 'confid':306,766,814,927,936,1010 'conflict':235,822,847,1036,1183,1197 'conflict-resolut':234 'constant':123 'context':1398 'contribut':580 'core':547 'correct':1013 'correspond':406 'cost':1140,1429 'count':331,353,359,420,786,949,1044 'coverag':399 'cra':164 'critic':418,459,466,472,562,657,683,688,696,760,922,925,1271,1406,1440 'critiqu':662 'cross':100,244,470,678,686,1109 'cross-cut':677 'cross-provid':469,685 'cross-stori':99,243,1108 'cut':679 'decid':308 'declar':876 'dedup':31,795 'deep':3,53,178,1127,1260,1268,1278,1288,1340,1356 'deep-review':1355 'deep-review.md':1079 'deepreview':964 'defect':1117 'descript':1027 'design':148 'detect':97,642,823 'dev':1427 'didn':1153 'diff':351,509,756 'diff-hunk':755 'differ':706,807,1116,1207,1310,1328 'difftast':348 'dispatch':324,424,487,550,616,988,1397 'distribut':1179 'diverg':102 'docs/reviews':1078 'doesn':1491 'done':945,1214 'drift':139,246,411,1367,1446 'drive':296 'drop':793,954 'e.g':103,249,834,1462 'edg':647 'edit':358,408 'emit':211,303,957,1070,1334 'end':736,1020,1415 'engin':450,629,998 'env':367 'error':1144 'escal':1274 'everi':718,855 'evid':34,163,570,739,784,1022,1156,1163,1471,1483 'exclud':1280 'execut':210,524,1332 'exist':866,1296 'explicit':939,1223,1291 'exploit':1493 'exposur':611 'f':867,1001,1065,1067 'factor':314,325,621,1370 'fail':888,1235 'failur':707,754,1208 'featur':57,187,197,220,508,516,966,1113,1290,1292 'feed':1363 'field':773 'file':333,371,380,403,540,542,727,799,829,860,865,868,972,1014 'file-list':541 'filter':30,713 'find':160,288,419,561,719,769,797,825,856,886,948,999,1165,1174,1238,1247,1390 'first':1375 'fix':287,717,881,1029 'flag':844,1358 'flight':1387 'flow':1057 'follow':251 'follow-on':250 'forc':1272 'foreign':231 'format':956 'framework':1467 'function':357 'gap':182,400 'gate':46,74,203,274 'gemini':476,705 'git':386 'glob':363 'googl':107,117 'google-api-key':116 'granular':1329 'green':132 'grep':874 'group':796 'guard':1083 'hallucin':852,897,1233,1246,1452,1454,1461 'hand':1343 'hard':615 'hard-dispatch':614 'head':504,970 'heurist':397 'high':248,456,563,651,761,930,934,1009,1063,1404 'high-prior':929 'higher':709 'honest':1401 'hora':643 'hour':1149,1420 'housekeep':1384 'human':172,1073 'human-read':1072 'hunk':757 'hygien':1388 'id':527,967,1000 'ident':804 'implement':10,60,1326 'includ':725,976 'incorrect':1463 'increas':813 'independ':1374 'info':764 'input':422,612,1393,1437 'insid':91,1307,1322 'inspect':484 'inspir':317 'integ':737 'integr':137,1294 'intent':143,147,410,416,530,534,1361,1366 'intent-drift':409,1365 'interact':1426 'introduc':837 'invok':17,493,1256,1337 'iron':1315 'isol':134 'issu':932 'json':520,960,965 'key':111,119 'known':1399 'kudo':938,1046 'lack':162 'languag':1475,1478 'language-agnost':1474 'last':1320 'latenc':1402 'law':1316 'layer':676 'let':1199 'level':569 'like':159 'limit':1400 'line':352,568,731,733,735,800,830,1016,1019,1042 'line-level':567 'list':519,521,543 'loc':376 'local':1107 'log':1195 'long':256 'look':158 'loop':16,65,1428 'low':154,428,565,763,1124,1131,1172 'low-sign':153,1171 'low-tier':1130 'lower':1175 'manifest':544 'manual':239,483 'map':638 'mar':820 'markdown':1075 'master':223 'match':364,883 'max':337 'mean':1187,1213 'measur':327 'medium':442,564,598,762,986 'merg':127,218,229,301,591,803,921,1220,1345 'mergi':50 'meta':900 'meta-review':899 'min':439,453,463,481,1138,1411 'miss':646,770 'mock':641 'mode':708,1209 'move':775,891 'multi':6,659,1148,1419 'multi-hour':1147,1418 'multi-perspect':5,658 'multipl':816 'must':724 'need':592,1217 'new':1053 'number':378 'ocaml':1480 'oh':552,601,624,654,669 'oh-my-claudecod':551,600,623,653,668 'omc':690,703 'one':86,92,741,835,1188,1237,1283 'oper':84 'opinion':1168 'oppos':832 'opt':1352 'opt-in':1351 'option':421,1263 'orchestr':295,903 'origin':141 'output':701,748,955,1488 'over-mock':639 'overal':912 'owasp':607 'parallel':23,499,1431 'paraphras':144 'pass':47,198 'password':369 'path':361,512,513,620,729 'payment':366 'per':40,169,201,269,279,488,819,1094,1101,1180,1302,1305,1439 'per-stori':39,200,268,1093,1100,1301 'perspect':7,660 'pick':227,1191,1204 'plan':150 'plus':482 'popul':1379 'posit':941 'post':9,59,126 'post-implement':8,58 'post-merg':125 'pr':577 'pr-style':576 'prd':149,511,517,1031 'pre':1378,1386 'pre-flight':1385 'pre-popul':1377 'present':538 'prioriti':931,1064 'produc':289,911 'product':402 'project':884 'prompt':695 'provid':471,687 'purpos':62 'ql':2,52,76,177,209,277,415,1259,1267,1277,1287,1299,1313,1331,1339,1360,1383 'ql-deep-review':1,51,176,1258,1266,1276,1286,1338 'ql-execut':208,1330 'ql-housekeep':1382 'ql-intent-check':414,1359 'ql-review':75,276,1298 'ql-verifi':1312 'qualiti':83,632 'quantum':15,64 'quantum-loop':14,63 'quantum.json.userintent':536 'quantum.reviews':963 'radius':329 'rate':560,711 'ration':1082 'reachabl':873 'readabl':1074 'readi':589 'realist':666 'reason':781,895,1040 'receiv':501 'redund':1099 'refer':745,1026 'refresh':1056 'regress':128 'remov':841 'replac':266 'report':292,1242,1251 'request':918 'requir':35,772,1120 'resolut':236 'rest':1248 'return':720 'review':4,11,20,45,54,61,73,77,179,188,278,430,433,444,447,458,468,485,548,557,579,583,606,674,698,723,808,817,896,901,987,991,995,1006,1096,1103,1114,1128,1135,1152,1178,1186,1261,1269,1279,1284,1289,1300,1341,1357,1396,1432,1441,1445,1448 'reviewer-sid':582 'rework':593 'richer':1482 'right':1161 'risk':26,309,313,322,574,585,982,1121,1369 'risk-adapt':321,573 'robb':644 'round':1143 'rubric':1472,1490 'run':190,258,275,1129,1151,1304,1317,1373,1422 'rust':1479 'say':836,840,1086 'scope':373,510,1293,1311 'score':27,310,423,586,983,1122 'secret':110,368,610 'secur':446,605,994 'security-review':445,604,993 'self':664 'self-audit':663 'semant':238,1464 'sensit':360,619 'sensitive-path':618 'separ':1048 'seven':1430 'sever':559,759,802,924,933,1008 'severity-r':558 'sha':503,505,969,971 'side':584 'signal':155,384,412,942,1173,1368,1381 'silent':792,1203 'singl':959 'sitter':356 'size':372 'skill':906,1297 'skill-ql-deep-review' 'skip':1125,1282 'slip':1469 'snapshot':531 'solid':675 'soliton':319,571 'source-andyzengmath' 'spec':79,750 'spec-cit':749 'spec-compli':78 'src/auth/session.ts':1015 'stage':44,72,273 'start':734,801,1017 'status':529 'step':910 'still':1216 'stori':41,87,101,104,113,193,202,245,270,280,518,523,975,1095,1102,1106,1110,1303,1306,1324 'story-loc':1105 'string':728 'stronger':1193 'structur':291 'style':396,578 'subtl':1460 'suggest':880,1028 'suitabl':1424 'summari':1076 'suppress':778,893,947,1037,1169,1239,1243 'surfac':785 'suspicion':241 'symbol':343,861,871 'synthes':434,572,992,1007 'synthesi':794,909 'take':1408 'target':435,898 'test':129,398,407,449,628,631,637,753,997 'test-engin':448,627,996 'test-failur':752 'test-qual':630 'tests/auth.test.ts':1034 'tier':425,489,546,597,650,682,985,1132,1270,1273,1403 'tier-cor':545 'tier-crit':681 'tier-high':649 'tier-medium':596 'time':90 'timestamp':981 'token':370,1055,1434,1438 'token-refresh':1054 'tool':497 'toolchain':885 'top':608 'topic-agent-skills' 'topic-agentskills' 'topic-claude-code' 'topic-claude-code-plugin' 'topic-claude-code-skill' 'topic-skillsmp' 'total':375 'touch':334,342,377,404 'trailer':388 'transit':338 'transpar':950 'treat':1226 'tree':355 'tree-sitt':354 'truth':1088 'turnaround':436 'two':43,71,272,824,1185 'two-stag':42,70,271 'type':740,1023 'uniform':395 'uniform-styl':394 'unless':1221 'us':977,979 'use':36,106,115,206,473 'user':142,293,307,533,789,850,1201,1222,1350 'valid':613,1253 'verbatim':532 'verdict':305,595,833,913,1058 'verifi':863,869,877,1314 'via':477,494,689,1354 'waiv':1224 'wave':196,215,336 'weight':316,326 'well':946 'whole':56,186,507,1112,1177,1241 'whole-featur':55,185,506,1111 'whose':233 'without':405,1162 'work':253 'worktre':93,1309 'wrong':1190 'yet':1494","prices":[{"id":"0a2dceb2-311c-4612-917a-de2534f26b8b","listingId":"e7ab006b-f6b4-4f16-9263-ecb9c0395e60","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"andyzengmath","category":"quantum-loop","install_from":"skills.sh"},"createdAt":"2026-04-24T01:02:06.118Z"}],"sources":[{"listingId":"e7ab006b-f6b4-4f16-9263-ecb9c0395e60","source":"github","sourceId":"andyzengmath/quantum-loop/ql-deep-review","sourceUrl":"https://github.com/andyzengmath/quantum-loop/tree/master/skills/ql-deep-review","isPrimary":false,"firstSeenAt":"2026-04-24T01:02:06.118Z","lastSeenAt":"2026-05-18T19:05:27.898Z"}],"details":{"listingId":"e7ab006b-f6b4-4f16-9263-ecb9c0395e60","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"andyzengmath","slug":"ql-deep-review","github":{"repo":"andyzengmath/quantum-loop","stars":22,"topics":["agent-skills","agentskills","claude-code","claude-code-plugin","claude-code-skill","skillsmp"],"license":"mit","html_url":"https://github.com/andyzengmath/quantum-loop","pushed_at":"2026-05-03T18:23:03Z","description":"Spec-driven autonomous development loop for Claude Code. Combines structured PRD generation, dependency DAG execution, two-stage review gates, and Iron Law verification.","skill_md_sha":"1c24aab3e6ebe132f91f50af4d95827151129c30","skill_md_path":"skills/ql-deep-review/SKILL.md","default_branch":"master","skill_tree_url":"https://github.com/andyzengmath/quantum-loop/tree/master/skills/ql-deep-review"},"layout":"multi","source":"github","category":"quantum-loop","frontmatter":{"name":"ql-deep-review","description":"Multi-perspective post-implementation review aggregator for quantum-loop. Invokes 2-7 reviewer agents in parallel based on risk score, applies actionability filter, dedups, aggregates with evidence requirements. Use AFTER the per-story two-stage review gates pass and before merging a whole-feature PR to master. Complements ql-review (per-story) with whole-feature review."},"skills_sh_url":"https://skills.sh/andyzengmath/quantum-loop/ql-deep-review"},"updatedAt":"2026-05-18T19:05:27.898Z"}}