{"schema_version":"2","scorer_version":"0.1.0","scoring_version":"prov-4+qual-2+sec-2","generated_at":"2026-11-14T00:04:55.619060Z","repo":{"ref":{"host":"github.com","owner":"alexgreensh","name":"token-optimizer"},"default_branch":"main","clone_url":"https://github.com/alexgreensh/token-optimizer.git","html_url":"https://github.com/alexgreensh/token-optimizer","description":"Find the ghost tokens. Fix them. Survive compaction. Avoid context quality decay. ","stars":2972,"forks":235,"is_fork":false,"is_archived":false,"is_private":false,"size_kb":41672,"primary_language":"Python","license_spdx":"NOASSERTION","created_at":"2026-02-26T17:29:10Z","pushed_at":"2026-11-12T20:41:50Z","security_policy_url":"https://github.com/alexgreensh/token-optimizer/security/policy","distribution":{"owner_created_at":"2025-05-03T10:57:56Z","owner_type":"User","release_assets":[{"name":"CHECKSUMS.sha256","size":39615,"download_count":350,"release_tag":"v5.13.71","url":"https://github.com/alexgreensh/token-optimizer/releases/download/v5.13.71/CHECKSUMS.sha256"},{"name":"CHECKSUMS.sha256","size":40126,"download_count":68,"release_tag":"v5.13.70","url":"https://github.com/alexgreensh/token-optimizer/releases/download/v5.13.70/CHECKSUMS.sha256"},{"name":"CHECKSUMS.sha256","size":27711,"download_count":432,"release_tag":"v5.13.69","url":"https://github.com/alexgreensh/token-optimizer/releases/download/v5.13.69/CHECKSUMS.sha256"},{"name":"CHECKSUMS.sha256","size":25688,"download_count":325,"release_tag":"v5.13.68","url":"https://github.com/alexgreensh/token-optimizer/releases/download/v5.13.68/CHECKSUMS.sha256"},{"name":"CHECKSUMS.sha256","size":25021,"download_count":89,"release_tag":"v5.13.67","url":"https://github.com/alexgreensh/token-optimizer/releases/download/v5.13.67/CHECKSUMS.sha256"},{"name":"CHECKSUMS.sha256","size":23882,"download_count":195,"release_tag":"v5.13.66","url":"https://github.com/alexgreensh/token-optimizer/releases/download/v5.13.66/CHECKSUMS.sha256"},{"name":"CHECKSUMS.sha256","size":22113,"download_count":45,"release_tag":"v5.13.65","url":"https://github.com/alexgreensh/token-optimizer/releases/download/v5.13.65/CHECKSUMS.sha256"},{"name":"CHECKSUMS.sha256","size":22113,"download_count":95,"release_tag":"v5.13.64","url":"https://github.com/alexgreensh/token-optimizer/releases/download/v5.13.64/CHECKSUMS.sha256"},{"name":"CHECKSUMS.sha256","size":21764,"download_count":795,"release_tag":"v5.13.63","url":"https://github.com/alexgreensh/token-optimizer/releases/download/v5.13.63/CHECKSUMS.sha256"},{"name":"CHECKSUMS.sha256","size":21643,"download_count":139,"release_tag":"v5.13.62","url":"https://github.com/alexgreensh/token-optimizer/releases/download/v5.13.62/CHECKSUMS.sha256"}]}},"commit_sha":"58ceaf03d12e35229f29d2ad64b5f733b2b2e066","profile":{"lines_by_language":{"Python":671060,"TypeScript":45840,"JavaScript":23419,"Shell":4917},"files_by_category":{"source":992,"test":699,"other":239,"docs":165,"config":88,"vendored":15,"binary":11,"generated":11,"oversized":8},"source_lines":552768,"test_lines":192468},"pillars":{"ai_provenance":{"score":30.1,"confidence":0.95,"coverage":1.0,"label":"explicit","breakdown":{"attributed_share":0.3012,"suspected_share":0.5719,"estimated_share":0.3012,"ai_artifacts":0.0,"flagged_work_units":81.0,"flagged_releases":18.0},"summary":"Explicit AI attribution on 30% of first-party code added; an estimated 30% including velocity signals."},"quality":{"score":53.0,"confidence":0.9,"coverage":1.0,"label":"weak","breakdown":{"complexity":24.6,"duplication":0.4,"lint":76.1,"testing":82.4,"docs":85.0,"type_safety":43.8,"process":null},"summary":"Code quality is weak: test-to-source ratio 0.35, CI runs tests; 47% of function code in complex or long functions; 91% duplicated lines. Weakest area: duplication."},"security":{"score":29.3,"confidence":0.85,"coverage":1.0,"label":"poor","breakdown":{"secrets":25.9,"sast":66.1,"dependencies":13.3,"ci_actions":0.0,"posture":40.0,"scorecard":null},"summary":"Security posture is poor: 1 possible secret(s) in the tree, 2 only in history; 56 known vulnerabilities in 22 dependencies; 520 high-severity SAST findings; 50 high-severity workflow issues. Weakest area: ci actions."}},"analyzer_results":[{"analyzer":"sec-scorecard","pillar":"security","status":"skipped","tool_version":null,"metrics":{},"findings":[],"evidence":[],"data":{},"error":"no published OpenSSF Scorecard result for this repo"},{"analyzer":"sec-registry","pillar":"security","status":"ok","tool_version":null,"metrics":{"declared":13.0,"checked":13.0,"missing":0.0,"recent":0.0,"lookup_errors":0.0},"findings":[],"evidence":[],"data":{"phantom":false},"error":null},{"analyzer":"ai-attribution","pillar":"ai_provenance","status":"ok","tool_version":"signatures-v1","metrics":{"commits":2525.0,"attributed_commits":630.0,"attributed_commit_share":0.2495049504950495,"effective_loc":1046972.0,"attributed_loc":315349.0,"attributed_loc_share":0.3012009872279297,"tools_detected":3.0},"findings":[],"evidence":[{"kind":"attribution-summary","description":"Claude Code: 534 attributed commits, 266,403 lines added","ref":null,"url":null,"weight":1.0},{"kind":"attribution-summary","description":"Devin: 95 attributed commits, 48,903 lines added","ref":null,"url":null,"weight":1.0},{"kind":"attribution-summary","description":"OpenAI Codex: 1 attributed commits, 43 lines added","ref":null,"url":null,"weight":1.0},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"dcdc0a8455b01953505dbfe87f00098ee1dd0e63","url":"https://github.com/alexgreensh/token-optimizer/commit/dcdc0a8455b01953505dbfe87f00098ee1dd0e63","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"a3e8b63ceb17560d6ce2710e6c7a054e96f30df2","url":"https://github.com/alexgreensh/token-optimizer/commit/a3e8b63ceb17560d6ce2710e6c7a054e96f30df2","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"ae91752f494844dc340ecc25cb39c19345abcbca","url":"https://github.com/alexgreensh/token-optimizer/commit/ae91752f494844dc340ecc25cb39c19345abcbca","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"5f44eb6fb151162beadde99b14d786c7edeef2de","url":"https://github.com/alexgreensh/token-optimizer/commit/5f44eb6fb151162beadde99b14d786c7edeef2de","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"1a12848577e7d295d3567861f6da2b7d62b493b0","url":"https://github.com/alexgreensh/token-optimizer/commit/1a12848577e7d295d3567861f6da2b7d62b493b0","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"f8b01870332c77e55e1f4f5766650f1f6e9f7e9e","url":"https://github.com/alexgreensh/token-optimizer/commit/f8b01870332c77e55e1f4f5766650f1f6e9f7e9e","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"fe194fc1e5a30b4f17aaf8b4ec323ee22b284a4f","url":"https://github.com/alexgreensh/token-optimizer/commit/fe194fc1e5a30b4f17aaf8b4ec323ee22b284a4f","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"2da7251f13e6d717ddad88bce64f43fb6c676bcb","url":"https://github.com/alexgreensh/token-optimizer/commit/2da7251f13e6d717ddad88bce64f43fb6c676bcb","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"f447e6449c3f93ea519a0b5458c8ee9a17f37353","url":"https://github.com/alexgreensh/token-optimizer/commit/f447e6449c3f93ea519a0b5458c8ee9a17f37353","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"c0f9e2220d065319ac4f795ad44e2993f617fced","url":"https://github.com/alexgreensh/token-optimizer/commit/c0f9e2220d065319ac4f795ad44e2993f617fced","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"688a19abad79ceb4b31523643098539e660b43c5","url":"https://github.com/alexgreensh/token-optimizer/commit/688a19abad79ceb4b31523643098539e660b43c5","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"abdaa45dad598d9cf3cf868a66193d1a62a3d78a","url":"https://github.com/alexgreensh/token-optimizer/commit/abdaa45dad598d9cf3cf868a66193d1a62a3d78a","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"5cd61f48d75642f6182d771a6c11ad0bc68a91b2","url":"https://github.com/alexgreensh/token-optimizer/commit/5cd61f48d75642f6182d771a6c11ad0bc68a91b2","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"ab901492563f0dbac07f514a0385349ec3318c1d","url":"https://github.com/alexgreensh/token-optimizer/commit/ab901492563f0dbac07f514a0385349ec3318c1d","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"eef380676f3263a6b2e75c155e5640c33ad6ecbd","url":"https://github.com/alexgreensh/token-optimizer/commit/eef380676f3263a6b2e75c155e5640c33ad6ecbd","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"b3f938b586608a8c25f3d98d704d54fbd774b911","url":"https://github.com/alexgreensh/token-optimizer/commit/b3f938b586608a8c25f3d98d704d54fbd774b911","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"e6bd1e5be9cf5ac0b9f16e91e059957bee18fe8e","url":"https://github.com/alexgreensh/token-optimizer/commit/e6bd1e5be9cf5ac0b9f16e91e059957bee18fe8e","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"32916d3a4ddd9f9536129a06356ab145f16264fe","url":"https://github.com/alexgreensh/token-optimizer/commit/32916d3a4ddd9f9536129a06356ab145f16264fe","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"d1692b2ee4b33325f8ddfcc5d2175978824f2c82","url":"https://github.com/alexgreensh/token-optimizer/commit/d1692b2ee4b33325f8ddfcc5d2175978824f2c82","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"607c1f0147abb9ba66fd4377cc2c66ed9af14edf","url":"https://github.com/alexgreensh/token-optimizer/commit/607c1f0147abb9ba66fd4377cc2c66ed9af14edf","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"c3de2aeb2a27901aea41c061a8718d9cfa601d05","url":"https://github.com/alexgreensh/token-optimizer/commit/c3de2aeb2a27901aea41c061a8718d9cfa601d05","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"8eab389a8cd91b28ebff9604636b3861ca899767","url":"https://github.com/alexgreensh/token-optimizer/commit/8eab389a8cd91b28ebff9604636b3861ca899767","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"4227661bc395c5df9ff2f407d6b495242d749a1f","url":"https://github.com/alexgreensh/token-optimizer/commit/4227661bc395c5df9ff2f407d6b495242d749a1f","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"aedcbe529a65096520cdeb0891f396c2b5402112","url":"https://github.com/alexgreensh/token-optimizer/commit/aedcbe529a65096520cdeb0891f396c2b5402112","weight":0.9},{"kind":"attributed-commit","description":"Devin: trailer 'Co-Authored-By: Devin'","ref":"c2e9eb5493a819b70f1f0efcfe26d864fd24d335","url":"https://github.com/alexgreensh/token-optimizer/commit/c2e9eb5493a819b70f1f0efcfe26d864fd24d335","weight":0.9}],"data":{"attributed_loc_by_commit":{"7290ce2be5026bff2ca6f0eef551f6e6fb6390f2":643,"17cde0deddae16c6b7c3a0d1e403006f23a43df4":0,"f05b5cefa9108e403db694103ff33dc6362ea9e6":0,"79f3680c9b4d60c8db8a9c8c47673fb4d7b375ef":0,"265482d9601c19fb391887841be180352ca97347":0,"ee388afec8e3d081a417df500acbd9878ece5aae":281,"f170dca827241bbd121c1749f76d07b03e91f85d":0,"3bbb2a9a8e32ee41e50c3f85b34da99e66109481":0,"1f0a4aea74d553a9c3c9272e977392a136069873":2,"8322772c7d59fd6e6ee373f00b8e958fddc3b18f":0,"966fef33b040e2390c778611ba006dde6d78723e":0,"577e9f72c404d2cac9c6d6d3b34b2b49dda01169":2,"f456f73928148aa02bdc537054dd430f949f191c":1201,"82306cc236ce76adfad40f051e2a2143c8c281fb":25,"a7f952128b9793ccc5a86f368e56558def99127e":0,"0e39166888f634813deb608284d37d2c09e1678e":123,"e58b94c62dde14f60146ca0a4e653a5a55786749":0,"f2a4d386bdfce4fb3ec905f4031edb3d5890103b":0,"db9edfc02cd06806e1c3dd8d97c8ce6cbe62f691":0,"b025bb408e39b3f0a882b5521e2247eb0e7c80ab":0,"55f0ae905c3aa87aa7a3b75c1a4f0df33a9def6c":0,"f51dc75408267e0b72a4bfb655185753fc29081b":0,"7dd909cd7da81c5919d2a3e8e1cdbc2e324fcfdd":1367,"f7ffdbed4327f25e8a05846a9aa7aedb51e1c942":187,"4eb4cf525c1badfde2e618633e1bdddfa753a3e2":0,"a7b7789fc237c20ef09e6f82425ce313925852ff":72,"441fbf5e88d6ba96f9f309e76a128f01fce3d814":0,"c08d64f3de48bcfcadd6965afd0b3ad3782a8d6f":0,"1098ddf90fa8141b6adb9b2b90bbbe56cd2357ee":0,"6e4e70d12af3695ea419cdaa182bd4d0a8eda710":1,"5f3ed3e6bb328385c0a510766f09f0c1debf92ba":0,"87789e9b9c21244a0321e24b9e3e153c6b5fb3b9":604,"134898ac412bc333049fd2db4ec1e8e28fca3439":0,"2688b3d2a487e9ca93a7d4cd79bf80eaae941b4b":234,"984c0d0c0960c0c9e6bf196fd4c73d7f1c01829f":124,"1df4e2bc1f7255859bed6bf7561df28ac949c7a7":360,"212ef37ca0913ab9bf11d6b43877b1cacf5c4d6a":0,"dc071ee0cc4e695f45dc6a6a16aca1f4281dc798":27,"df37fea9355a2bddb4db8f1947512c0c0dc83982":18,"268c29d89a59698dfe74590baf625884529b1b3f":0,"40595260b1dc062a1f33accf11dc2295b4784747":67,"f018b23b35e8109c8d5a064a372870bff315b75c":0,"4cac619cc897bf7eebccec6e8334f64170406308":11,"3b0f2471b2056ca8c8fb9fe55a53f2c5ac72092b":1319,"4f305b8944df3a202ad77b187c7ccf2ed21bc491":0,"b76a8f3d0a8523572ad7beacde8529b8f8a04d07":354,"24c0e71aa4798c5f38dcf22572b9dd7bdc469224":58,"1ef9ebbbff3b78a2a9b2c11496869196e3235235":58,"a7469c985adcc12ff381f4088f887543d14da2bc":0,"eeafbdf8eb085394c64b5fbf04ef3fc240dc081d":39,"a46af0fe75d606b4469446f9627535befdb9511f":13,"db853d46baacdba31369598749fc89d549f345ca":32,"ed9792d0e64a5ec9a78034e75d239e9f9efbe4b6":33,"7d59f2f4cafc59b4faa9eb863c96ae299007a7f6":341,"4332d844a7d320c8a079e3519d66b1cd4efdd341":4,"09ebab5d4145f8d4bb03f3708b53e6d2de781d61":0,"3234f0e2564cd598cafd4cdebcfe63c8c3bdab87":14,"6e3577e7f302156ae8fafd7f62f20b0ab8b5b76d":20,"f6aa22c026a3760de52d57ba21f7b2668494a95a":24,"03fc6dd5041b90765fcdf2cc5b278666ef90dc29":41,"667466da69ce6e56607d2bc150a23a6ca248dc8d":0,"50e3d545addb86deba14044182002c305bd01d9e":0,"8eb158c9064f6f318036b3aa84a49604528a4b81":58,"9ede26c3f188d0b3d7a715744739d992b9f0c4cf":87,"8789b70bdd79cb7f56ca44f755bb62aa8bb0faa2":153,"ba21da5fb4ecc8bd17d18f9639c7f652bde65064":48,"4e7ae2affa9c536186106fc5c3ecdb1695d81212":5,"8c35613bef5252444fe90e4c045548a357693611":0,"d54a52945a99466fb6c0f167989b208e87818a04":768,"31e445018c037a824daf2c8ff5d78179abd71688":0,"6009485a40991d11cd9c92d24b376f05c8fcb8fa":0,"032b328603ecbbdc753c32d53a15ec4fdf84772a":0,"6c2a3e264640f73e92357bfd7f46c29e9fbcfd13":87,"108ea40ccfd6ace4642fea10d86024a58788786a":35,"be705c770f52e9980688bd603c1dae46da47932c":12,"9cd7d797eb66b671c063ac345a7b0f634cf0e16f":0,"4dee243c720c2bfd0199d7eee9c80a136d14d83b":38,"15f62b6a20d692a16ad07262be79195e3ef81f05":0,"b0214b0c228aaeaa20aaad60bb211ca0bb0250a1":45,"2749ea17cfab160255a0dbc9b3476773f5ddcacd":14,"144958b44c72421ff4f02200d6b4f75f5008b8e2":0,"90eeef01a9bb65fc1486e969e70cc06f174dd671":5,"7ef6855cedba0ef37ef63cd2a6c1ace72d8ab6cf":11,"652e83a8e6e7c1a2d7663040d8851524bdfa92ba":4,"d1b0b5307471a73e29a7763b794ec9f7a8d41e61":2,"2e03a81bb15d71dfa0fd110b2e9cd63cdfe374d0":3,"4805e97173a009c1e2a206d3e9cd454d3b57bff6":15,"cc27d58a1306b7598eb8f467c031458eb8668d8d":8,"515a4adab7a2d9538be3d77eb9afebf853a368ed":0,"fbab581dc7e73a8759d0d472725f95e366508a5a":0,"d155f127aa1a0bdde12d0105bb70ebdd44db9d8f":16,"25fde7b27286ef6a1a454976c8a2a4076e31fb1d":1479,"7c200a7be912018a8197d428686ff529641206fb":0,"c508fc7eb8c19101207c1433fed5fb14f3f3b20d":0,"6e52a5ccf36526ffcab71893864916ecbb5dc972":154,"5020664d0fec9ce1b5b84f5e6e7b41b17787ab69":49,"89c131887595e43ec3e0ba01f849e3862ecca919":3400,"95c96b45a573b0e2dffa5e9cc0252ee7f62be2ef":4,"db38c19a648078d17bdc3fead36b556a4dca99bd":42,"d3481f2520f7fe0c547a70ecd9d601b2949ab56d":10,"c73c3e3da00a3c4ed5bf7913b486d4ba851a9800":90,"fa92d46e351f6e5bdd9efb7e1ca6917ffa3c921e":18,"838917eb172827c3669954512840421dee72c1c2":19,"05c7b4ce99fa5161c51764f0a7c535734f7226f2":15,"a48b3bbe4b731db5d1a67d1f1c7460a9c324e677":0,"5cf38f8c960a53d7137fe5ba322b55104799f53a":0,"836e7c94f4a0ba8026086d536240b0a86a1eec91":0,"f0c91ef5b1c8705af844f31c4f8d9b097d352648":0,"4135b6bae85bf4d6de886c83ebb900d29ac78fda":0,"c704140e25153fb900a03b237901a94aefd318e6":33,"a8c67dbc30a5a1c33fed47887dfa8e5c4b378a9d":40,"d1b2ec20a7a4ad79f0372af901551bc7fa585ea9":9,"ae364e88d30363d45c9789edc71983073f6e6859":16,"5b6ec8e2c07a48a8cbec87167b4cd0fd87b5ae8b":24,"b1ec2de93586d5b01f64ed71aa755c657df764f4":11,"55d0f5e16a7a6cf9c0da4ac8ef846de5e0eab2bc":30,"1e2c607ad849505183f5ad5c34d3fee9011a5c7d":684,"d339edca02be913626307f8e63b584f065782878":118,"a7092b7ff3309bec0154c680203a5f51e86676dd":5,"2af74c3a315d04a5294dab5af69df1dd26d50358":0,"40a307df2a7d1e14b8f4c8da81e94a472929a064":0,"4f0ab0c83c00496480b564143467d70cc32d4ee6":2485,"ff1cd90a18bcf367f5c9e520e874727bbfb2ccd6":0,"4de85ab57eba8ca2bea2b7b689bfca390c4921cb":4,"a882b5146d9808bf361ee35a097cee835b53387d":0,"eee6db3092c4545868397daf1cc674a5e341efcc":26,"e515f18613871bfc3ef6c600213f7c8adba3325e":15,"d145051f4358f201aa59cbc9533c525c1c3cb166":18,"4874c99ecd86fb542fc1a0d51e06a83602e05d91":0,"188f68de9882972504b162d095e83b8c2993db2d":0,"d202ffb89d406df76d9021656cc2e67cbe415ab0":20,"20f85c6f66ec00e2b98b1590122dd4f4d9e3e595":6,"eaf5335f59ec34384805295db004a12e16085f08":34,"ca7ffd097e89dfc4d505c387ca2852c25eadd343":0,"f4d7ff7b78365bf5d708a3f7ac5c2887fb0e6a2a":1669,"78cba7979e3ebac3d563944ae73d777d37c27504":0,"5ecd5ca7744b729cb645c1968521dbd075fd1f76":0,"dbc9fbccbc58814cd723103a5de69406a3fa9cf7":0,"be24ad59386e83c1aae7208e8c37b281f65e0d6b":0,"911cd453db7a5b14bfb09192ed5cd3b19287992c":0,"cdcb63f556c2003eb457ac5918c074538e7863ce":5573,"bb4d92b2102dfde4b954b6637a9925262c92a8e4":27,"975f669bd63f7b0d1dd369475cd95c593c5b039d":14,"f922b9ec0affc888f9e07f9025c7019781f2518e":0,"c5fb1ce76482dc89c161a05ebbb921d0b5d50183":22,"d25833bce01aa67bac04dbfed5c7d03d2e8c28b2":1333,"4b96f193dbb1f0d36571d2f7331586e50e6860ed":0,"f032bd2dd505f5b1d63ed9cedfa55ff8a1169bb7":0,"4d91f6f2e2b47f62a9c338cd200ff31cc5390663":35,"322a17d42be0e5b04a76f545dfd2138819807966":233,"f732ee52180bc3a8b5c119b394025e627c6ab75f":354,"cb29a8d46038b99b4fa4d28e5161150eb0d810db":7,"91af711402c519554daee31e518fc19244c37ea3":25,"3ff8f8bc4f921f7a440bcb199a056d418c8a345a":0,"a338b066a072b123f6992dbd66a6ade12e26b45a":0,"075646aa882454d2355045f5dc4ef73aab030de6":481,"e86411f9ecfd3bcba9f7221ad3fa6960e874cc32":0,"9a3235ea2b61c17964cd40f7055a81b9b4f6f06d":0,"b668b75153348ad43d909b0f42fb9c8947e0ca1a":0,"0bed1c8a8d3eac1016571ae9396b1a99cf0f1dd4":188,"2418095e69c8d9715bb007ca67fd9cd866a8f9e2":0,"1de2b164dcda785fa8f73335303e96a8c8824e86":289,"8374926e1d4dc955dc4191994112953e6924a623":5083,"87bdd5c4d63eb1ba17269b7b614d77d1f8780315":0,"e2bfaffe90e1f01acd8e4fe7b0b64471a73d7160":4,"6ec85aad4d6e4bc2003088be2a65fcb4f52d9587":16,"ac884729bd9b4e6e55e594158350e135ad108649":0,"e637bef7a7f65867babc3fe2d145cc2d27b99115":0,"546a30aeb6dd67f0610daeb2fff96e4cb8bf25f8":0,"8ae4ece150fdfb106b87a1e4803d1040419af99d":0,"d27f8e3916c8df9043997d6aa302532bc7cf53ac":0,"40893377ad10b262e0fa5dd9e82ecce804c0f410":0,"6a8952a55db2246885999158349d38c8f2f8c50e":0,"75f5a43d403deed7d1cd9259309acda3056c3b01":19,"40ae2fc6355b188a21a442907f145376a121ccb4":40,"d9ace9e434a983f17bf55c11493c8194c7cfe01f":14,"fde3232e905784d97003daa33260e1a2cb7bdc6e":27,"5c9d514e59c9f7ed0876953e8dd239ed019e886c":27,"4686dcf0ad847efc1cac276fe77f12665bdafb16":6,"3a96e418b3d56ef5834b8f6cbabb16096bca739a":0,"ab22744341e12c0d7851618eb37dcbb4fea9e1f9":0,"3f949de30db1d1462f6ccef31aaaabd4e4fe84b6":0,"9b07c28b8a467055272ab9e349a05070ecb42333":0,"7495ba5511c1238fa9064ad36fac0ace4868ec7c":17,"653b4a209ee75b5c21b9ade711e639e8df502c92":3,"d2f681aa80aea6b14e47ce9fd067e785e2e13ae3":7,"394e90f869f31b74ec007c2a720cbf33bfa63b52":101,"b70c968e2e24fcce60cfcc64c848341e127aaa59":16,"2a512ad96a5f6d879f30a22c54abd0c8863af8de":0,"2a59a4712be0a47e93df9ccbb4d53eb48e8af516":17,"cf4eae4f741aeb193734129aab454df23342a179":9,"55d1787996acf011b2d71f31822ee1e12273ea84":54,"5be7158c16a867192ce1ff1f7b5e0b9075293b7c":71,"cac1ddd848f2390e4d2a3b8f2996279ff4d815d7":140,"cab282f72afaa44a2dfb2b47a1f60b4f2689029d":46,"7fcac2663ea2f719f377ee39c7098af7c9d79fb6":33,"4645629d22d4c756ad7dbd7f5d0a7339dcfd50ed":30,"4acd97d17c3edea46f181327b08bc85fa386a02c":18,"57ddf07868e7560455ad5f0ca6acab320977dc30":29,"cff5bfdbf77400a31829495e1fbf2b64afa74dbb":7,"26a962bd5baa99aa29fe40c0761499d97166a06d":0,"3b2803e45461738a4ad56cfa2779ee3262df965f":1,"03efb13aaa430e860289eadefa0e549665ef6a58":3,"5aee7aba20ae9e7d463cb050014962245dfeef90":719,"ba2a4754b84b578115812f3469d92efa7218ba5c":22,"ca043dafebdcdecd8b86e41493cbd46add1dd1e6":1,"a1c3018b82f1d388067eaf3e1b38f53df8f71ac0":227,"baa8e7de8fc9fdba1cba1c192792bd9e3b0a7aef":142,"26cacc36a5318128d941646a447fab651659daa0":0,"80c092d215dfbceef8f3c91a387b9790acffe8c1":53,"8b8559ba8d17f6f69e16712619a76ca0875167e9":127,"af5468a486a968d870daf284dc779ae5e331d08d":44,"c6220f302d579fbf2e19e7b7410433dbd057830c":0,"cb539427bc8bb4314d562f3038dfb83c19f71576":0,"021eb3185d867e2b8f3674ec347177d2098e12bf":0,"d9e6aa21df2533d198a13669d5da991a25e0550a":14,"cad350446f11bace1ba04a5f82f828e1d5fed2cf":46,"e1aa0b98c886529d6f77d3e4fb4904ce884d4a6d":46,"bc3be273c0116903d38d8924ebedee669a28a203":65,"df1c58c8de2bf3998cf93675fb0357be86299a20":840,"7945a1c235c4260f7059efa8c088c43846cf641e":0,"5bb121a724e90d3c4dde9b4e64750c449f26cf62":0,"c76a9b4c02a54d96ba7121b51e03a05af5aa0f07":0,"25ecc8e2fcfcee600afc31e1b6d7495b41a2be02":0,"07c1f391f4d8b23dc490b54f476ad8711e7035d7":0,"8f6b58014e28082644a4ff7f2079a63c2b75e46c":0,"3f40b5a750c80fefed78a85d701a1005bff287ce":102,"caf3a6e92a2cbaa6ee5771c010e07da386cbca9e":1,"ac44b6162fa0e290a419224038eee832157ed02f":153,"f158107ad7c9b54793d03e898738f3e05fc4926b":37262,"916d0f3a5dfc5332df0a85e3da6234f8d635b874":2,"0d151ac96de442afc9aaa68650a9ccf631110526":0,"017e96a57f2a8368e046da300f533f7e4d3934ac":1408,"299e1cd5f44d6c1e3ef8df152cbbe411612d63da":1803,"1a987bf8a153a230e3bef96e6580020521ed89c9":523,"6b62ab06c01e98a7a3ea687b5d250e479bff9511":974,"ca61010ed483a91e4b18baa682edf7fffa535e5e":218,"d1f69fad3cdfd75af9895f65ab8e6a1a1d9358f9":0,"db678349b49cea9ae16dc8dd3584022a7d3534d6":207,"8f993420cd473f1de150f07307bcb6e88b5b6dc2":1,"b667c3553e1c71f442f87f6eb4a95dae6a44eba0":186,"092beec86e90728899116f9a7b919d5874dd147f":0,"b3b0b1783294b634542c0ab7e96cb7824be5c0d6":9,"eb91b1eff8134f61d902fda7b72b6fd63eb54fea":68,"e822736e2cfe3bd344c70146e0f5533ec58e22a7":0,"dc6218834ead17f449fc0b375b35ea17b463bca2":0,"ee1611d332edc97ab3600ca99994d62c57dc6321":312,"56549d02717d801c2a2f0a91ff6ba71482e94e8b":0,"4ad2353ff8df791f2b2d0ad22925131f99dc1544":43,"9360beaff04da9eb9e3d8ae588a4a2fe6980cce2":43,"5d7cb18e2eabfe7a25c79771ef6b777d43ac5d03":18,"2733b01e226a418f346b4bb258e337e4daf08759":0,"1d68d4b8811ade783d6f6db256fc3a313f706be2":905,"c6317b2c4b64cd71f0812191639e7f7eb99fd257":84,"ba3fe1e67155399a5a3732411ed2fe88539bb289":479,"93f7dacfc202cea71a0416d2d2d455cea209ccb0":285,"79556846d17411e6dba599ee09869f2540ff3fa7":0,"d3cc5fa05ce2e750e3ef1d8fe7c905f3e3d65a37":120,"7f43ca650c8c8d6487ff17905a55a359111d73f4":16,"c3447c1ef2d102a2c849958aaf50278fb9886d5a":0,"1ec8c50132754ecf18bcd22c8ceec99bea5f4256":118,"09fe4106bd51ad27b3982c8c98e2f50acb5a6610":43,"9dc1aab714daf3fedfdb9c544d19b9d72f7f8885":662,"f7319c0278fcec5afb564837af4d0694c1f2b681":482,"8f65051c98826021fc4f689bb322bf979e98b889":174,"aefd84932da9e456096aaf777aef88709e3fe1a9":358,"7b2e9c211fcdfec2b3fcf693dc152eb482ca5ccd":1754,"4778f09fd8903daeef14377ab7c9b83b7b5265c6":290,"a5868a5d3a3ffd3a97d8cb2d15f4cbfdfa3bcd7f":110,"2abfe834ec8e1311bdd9bcd990834958bae75ddb":0,"bb6dd4793934cbd381fd5416b05c9eb859a84200":0,"db5198801b8ccfab901b2fc9ffeb052813142741":668,"6b996d970b48f88407179e35a843ef3514dfb247":0,"5e17261086108f5ca98f5368d63059e30a3eb788":211,"93b5f70253b6d9e1c25a9cbec20e703b0253b612":9,"b36de6da9ec85031d962ea19140f1915130fb57a":0,"9716aaf7cff733da5afb5ca1afd190948a9b1803":0,"b6308bdb52ec4d5cc87a07c7a6521c09336b51cd":56,"3c2242c42846de58b79f98982c1d85ecf8d8437d":88,"6e6c9ad997db5cf708f68f63fecf0dd65ea70d64":0,"8d980daf3ad831381833d397a1f32a1c8bb01ef1":19,"bfbce3637731c71b3d136ae4348a0f83a5418588":242,"ce993acfc62ca96d81c57a6d99d64fdeac80119e":150,"807603fb084276ebd5ba15da31f09c9daea47887":232,"f7f3d6a3afae41bd1f5ebdbe671852251a4817e2":152,"535222b07ec857d1aea9c5974011e4d9786f881b":349,"9c70bb986eff8beec4bb283ca170788e750bbf36":0,"be3e1bb19bb77444aff2a9a7da06cd4ce2105926":89,"4a159f176b53ad4ac998c47f7268a92f70581cc6":0,"57fb7259537a921ebac3aa0ab4ed243978f8808d":261,"4d96d1a7de1958dda0157244fec1ddfd7adcc81e":0,"af7e2660f46f8ac7734667849257c0f9ad52139f":39,"11b49ab281b1b03460d75888453406e68c4ec957":69,"9d7547ae2fe302ed96f90fe9827eb8eb80d963d5":49,"90b1856c244b3a3267e82f36196b2248ed1e4599":0,"2e0be1c981dbf7b7a062084ee8cf28a479f3940d":164,"68460364a1758d7abf91428397f43ede7832e54a":0,"b41277fddd726003f9fb8ff1a582c941533c3610":140,"77f429925e47053521ce1dbb157a1e1350e9793b":193,"716032518ceef5986d0e958450899444d6967338":134,"7e1cdd16f06ccc9c74a1edd1efc0d24a83650af5":325,"d178d3cbd0aba1c5e6140ad1c2abf35af96cc0ee":670,"fcbe373dd8c0fb0e13ddff94fe15d26d968833df":311,"1a50f71aa94c5a0fc14519711bed92e6a9e62375":462,"13d76416211d0207250172540b4b31324a8e0163":539,"eff4ff2edc360d7bce43473ef47df5917e02c7e6":243,"8e970ddd3662e03e011552d98dd3ee22a6275e54":0,"4269e085fad3044e2d20ea28745c32b74939208e":289,"063c0d28a6a4e9842327f1748efb4680a1b4a90e":88,"5d39f45d3335f62828c7e97ee52a0b8a0338ca44":35,"f40b27824ca154062a6225aa11f0df472afb8c9e":592,"18a77fd439e72601723709f5f4e7b3208f1224f5":44,"a199cf709b574f2791b317c9cdc04a2307b3994b":51,"fbb4d3edc24db929ff8f1edf0586d608039e8cd9":0,"9642fba3549ca780e4d6ec0943f3aeca4a52234a":298,"9081beb3d122514ec942f8ffbde966fefd5b7cb1":0,"846fd05225c98d0bbc632387432c8932395e63f6":0,"76d5db54649e108ae2e43cd3e1256d8bcf6ff7e4":0,"001f3e17ecc04c1f15b828174564508a7b51500e":4,"d3a54c768ef078943af8da1e615bcb261e03a26e":1,"6b29b11a3997de1ff31ff2b8843396cc94271b57":0,"5c18f0855009efd9c745a74efa3980c0b1ac3a40":0,"249566d0e52f1f40378792f191b93038fce8ab65":131,"7c1338c694c6435a5274ce1a36dfb42da656526c":176,"aa1e8c37cb4b5ffaac005af6dfba02ea5aab0035":172,"239d45205298110ef47f6ba199a0f22b01591482":449,"d06db328438b6421504a6b3f5365082e496afd69":59,"1d17bd19cf0cc643d89f8e13ea7a8de4b73f4da2":137,"e0643f2431a8051858e250b62dde57feba480e1d":2035,"0d8d438f8bae1ff86b915e026008997bcfb5737c":1397,"e88685187b37de011ea29c1a9140655695236d75":306,"d6ca80a057ab56aa44dad6de95467c7cf904721b":366,"e17712e0179eaa00f4c42e96265e6ba4a7fda967":78,"64ff0e42785449e6a7fedfcd7b6a3297080e18a6":44,"9188f3a9c797cfeb5f03f456bd855249d01a52c9":0,"2138027ada93d67521ddf036069ad9cf0750310e":0,"43698f4b501f0cb46c5dd993293b421b4f195e8c":0,"fab8822e4153f9447602361a2d7af2d3a261bc42":0,"aa4ed40ae20dd15d4fbef05ac3b803b8669ff9a1":0,"a33abe62e4d3368a5468f98905987fe485231b79":168,"004fcc71cbbe1e59e233dfa2e71d7b176371fd25":258,"602497db153dac5954c06b878f2ec50e78a56c51":68,"c1612b07900a8355497c309a560cee607e892621":129,"6d05d45e699d079b62939f10280a7524d4468d3a":182,"3d69cf9724ea9747b7aed0f2e02fbf9034ac72fa":1660,"f8835595dd95dee35722ae77514a23d2a54d7a74":0,"4e26a08a6717ed9e6c93ce19e96947b281e48991":26,"9ee64551de5f02eaed96fc521a067bf74b452452":431,"c020de608bb04a74f7c58c4de728681c59725003":59,"c17440818d1854500c6b58b71880c2b5b96e2680":802,"78fbd82101211fdf0d8de652e8e329786575c4f1":675,"a029aa8326163152fb29a4609bde0aaf4ec0e51b":189,"9c769203bb4c442f41e814834913a7de653ddecd":309,"f6a71cd99a2a948d636f08eb24b4d8c3e9be6ed0":8,"3bc9b94bfa1e38a97433c90a3c58e19ab765df2c":15,"97ac1ecb6aa594c53d00c29f3a397eca9c2d460f":411,"4cd255f1b5bf6095b8d8c91ec6d0c297c60b5c50":528,"25784c13897f15f6b877c05029af23d591f8f2ea":1840,"2fdfcae69ebb7cc9056c62fb0eac91cb2c3730b6":297,"6ca86e6af5add42a891690f65066ab576d8a705b":138,"a50948e0f16ca1b33e948559370c034991646150":2,"859191fd849f6ace8c4209698e8064e55603d8c8":190,"29f68ee6920b7c53ad7f50eb7c7eca540ab6c90a":191,"9669cfd6cc0c55280491697d26b40bab09db4619":50,"1d8d3d7c585594f892dda18cf7b533fdb77fb997":32,"795c1f8ecbcbf31262897061955c0b0464b43711":50,"ed3547ea16753f322315ad3a844b35a1becb4e3d":196,"3dd48fff3c599e405952ca636a49f67c09b03b39":206,"610750391c8047c1e078f79f67bf415a5c72ad88":50,"3822c6131f4de813546ea8a5bdae79660cc26d83":141,"cf592338839a47cbb37aeaf22812cca5ded52dcc":83,"5b9c8293e8c17873f5efac6631328eca06a9f994":58,"7e6184cde93bc9ad8caf3f0b67ce0f08434cfd4e":113,"ff2a7713e0cdd338097312121da4126064295e6e":136,"fad75e7ff653f66db6e1c7acc6d9070f01383b96":99,"1835c2cc7cd4330c83ca53d2a9849b5deec84499":95,"ae4427536ed7d943d3ef7de38d0be7d6597ec570":41,"987c45f13ee13b63d37af9376a669ce392261dfd":130,"469b6951b1c5742155c36cf00d346e0a3850166e":210,"305b9de4ee94771787afc9d2fbbc767e3e21e465":339,"1c3a2e7e37202a054c5c777bc2f9e7fb535673bb":789,"3e242e0d4b6f71254bddb1191b6b12b6217c79e6":1542,"8d66a6748ffe8f4559b73e8aa3ced4b65e5a6833":105,"73d01d29f2b3a84a1a67e80c87e1c2ced6cb5ad6":292,"77f1523ee4a23ddcc25a934f96f12f210108c369":339,"acb421fd1dfa92a0c303a5dc2f9a9028a211c6ca":557,"3d8f100ebb6697bd84597451c873a279526684af":443,"c0396982203909cade064fa5238386705e9e8f18":221,"c4761a0027b80f63826c64198222b26e66dcb9bc":158,"323a09c395a15ee3274bff88532f31d9aa6b5a45":310,"bfeeaa4c681aa71d3ca1f04a10b5da487c899024":265,"5cbb2fb9e2991569ea81fcfa340cbef16d0d2807":66,"6686d263797d7567986631f9c9a95e0f1233fe54":143,"755c27bfa817844e04729bb1561e284d0ef1bb58":78,"d4f49e2cd12dfd8827869fa142edd3f18a8c563c":311,"fc89cab6ac273693471792337226bf53f871f66b":188,"7262b0bde18717c22f1cc4f6826cf32a4911591b":9,"1e5846dd5d8a4bb2642e9cfc9302ea62d83bd696":0,"7c3f4149335da076dee2189930e8059fe9a9ea5f":13,"a0807cdf9d3656bf26f25f45dcc7cc553792b2ff":14,"5ec75f3a92d438a1e06a8169f04cbbe670e6e62f":10,"fb4e8e831770140a1dbf1e45ed1129f83973eace":28,"916aba2e9e05e000bb1883dcfbbcc93fc0684c00":0,"6f39da783d9d8e34ce9f5147cf4a2cd2a9b0c4f0":524,"2600754d3034645e60c1773dbad768d1312cbf60":7839,"fca17dda6e42843f6975617a6d1f891855946ea9":239,"caf215aef43fdd240806c475d1a2ae568fa9b3e3":1420,"c78333a1cbe7ded7c13e186f5780327080bb5a61":107,"6bb51849ff738d5bbc6440592733b40205ccec7d":0,"a1348caa9aa5642f5ca60b128e851212bf2fb242":961,"b0c24d533b8ca63c1c96f09bd05bfeff0551140a":2,"1652f37cbe867a8bc1d35f81ad14386be93d411e":119,"82b2efc26504f7706cf5d936e6e8cb5736665004":0,"51fbc63ddd150f17259bcd85131fba10764b4cd5":441,"5424deffd2430de27e82f456beace4b625c53fec":0,"de5f2050a6ed940458835c9afdffe388e3b2a6f1":3,"8eb06045e4703da113d61e351a8b964bdd8ec364":0,"cd2def682b91cb702c0d3bfd3734f19c864742b7":549,"c690a7eaad5075508631dd23c53a6fd8c8c8c13d":862,"d7cd715fb050bf028f1c83c5f90235f1d37e7aef":86,"e5afe0e1f2e96caaea0b5cecc1810cc1c17ce854":0,"748c91c097121a0275e079c129357d0f05441bf3":0,"84ce83efbd00abc4e1f93969295cec7e26459aae":41,"98be384d8e00249bf18778b3d288c97a8aa2eb4e":0,"f9cbe34ec9929471199bf40ba56fde32c6c54f2f":0,"0c2fef1acfd5842b406bcc6c7eb6cd79917a505a":378,"5aefb51702aa09a8761b2872d12462c605360861":0,"6ca4ee9e3d76b8840ec7b2f82031833afeddb532":349,"1421b6468da44ba75a83df2d54af35c8fdfc5c22":75,"8228870af25ada037b4964c777a1e4535d89668e":973,"38dc6e866bddc2f4d316b4596b911e97ec52e084":174,"29e1a2587c79d9c4f73a80ee0b2f17435d9a4882":30,"d5bd2e5b9824877c0e9ac58c484ae97449e11278":0,"3e36a220b9e9cf9f3f26bec02a17b0b3ed2476c5":0,"6787f50bfee5fe09bc6eea66f2208b015dd7bb87":0,"cc5053a9cea238c46ecc293c5b2fcb0285215c70":727,"e7c7d44c52f4879beaa2dde87790ad1103b232de":33,"f2662cf9e057caf085f53ffb221a04b717235d86":13,"40052811c48059f26e88b5b2c961d4f31e1ef496":45,"ff5dedb1c31141e7191259193f7d722bd34bd090":191,"f30bb906b20e404eac6dc3cf502c2589eb879023":613,"11e59ee8244072b8632777fa6e12df0ad82ae3af":123,"5ebbed86f61ee32bdae6ed127172eda7c671983f":749,"0c4b4cb71ce8cea7d28c4db67eda4b71db7ccd98":1322,"ae4a61eee9a3b20065ec6940ad1444c3b7efc6b8":277,"258ece38f2d2664d018a96e411709a2c191d660a":288,"5921dbac50ea2a9d47ac5e88a09b2d8c9cd9d63a":16,"a05e15efe38352a0e353f320488b61b75f9b0514":0,"a5ee4ab669a32b0efbb80f3c89952748f1f2c6a6":6,"3c528c9d7cd1787b65c042bc7e25f4ad59525240":540,"ede802d7580bc01a0c852ca6765fb181c0cdc5a3":18,"bf9ba55cac11a441f8d9dd0cf2d28ea83819d237":1215,"04248498c851caa2f3a5c2776a2e29057c2e9f14":543,"e04b9ec2ca0bc55a9d73aa10e352c062bf684dde":307,"4237b72db033fc8b52a4e3b78ecdd0a5918d0731":421,"7b01fa3569f193f3be05b9e74dbcfbf1cd3c1fd3":532,"34ea9f6a54ae265c7025436efa81808ec7a5c1c3":190,"9d1bdf60c840070e9c62d0579fb5c7dd6c45be04":222,"7a30f6acbb1f72ba0da83723a76aa7fdcbdcccd6":385,"42531edb7dfaccb82992d12ea42d6b5469a9841d":291,"ee6be191fc76c82738a64b36ced97c918e0b65cf":132,"2af78dd2e42384127355dc823b52536970b5b070":124,"1669301be23c4d8368aae3a6606e3e03b252e584":149,"b26f0b24c78f60e5e59d4cc15929d2ccec25f998":53,"d89ae27ad79fcdb797073c4e7f94559aa5b82177":190,"46460ea3297572f3f1ed17b2b51fcfa9006463de":244,"7b08bccd3728ab2756a83a482750871872f6a9a4":13,"a5e60229d3ece939290382ec1868e269b8d3fe13":50,"83737c8f93fc959056b34dc81fe776ab37772e6d":308,"24aeb380e5ff63ca29186081930873ca5592fc1c":0,"3800529691ccc2a07eedc47567df0ba470008f94":234,"3a50899c383e6b7ec3c5b5be5f452fe6a6dff56f":88,"220213a7a1ab976e915c9d0610619e0f27208504":10,"48a9154c2e838a890ff5635c0dc1fd59cfb7a2ff":83,"d3c44062883393eeccb4f88b2d4d93d86513dfd5":0,"7b8ac1e9d6b1ada4629000ac3ea423a0898ae23a":262,"5184ef6c8b03b6e523913a864e31d5afc5a98c0a":69,"efc66e54a54b7a8ccceba52e058c17ed69f4b4db":246,"61023bb7e8f21d59f1c3e995930d57c6c158005a":227,"c28846e841fde2056993f38d8b433bd98dc2d466":204,"8ea4a6f6cb6079f4e5b0d3f18b6ce377c0f520e5":0,"59b3a03688cf1663e1dd30fd043fc8e942bb74bb":0,"ce64da0993e921c16c7cc16f825cb89ca38eb07e":0,"8b7f5a8d7cce4bdacd28b2c24014dd93795cc856":11,"af7f475da06a49a78d14bd6dc7cf54b56d29cd02":0,"c872506cdb73581fa10ec27e205aded357764edf":230,"f0987810e57e5ccf4d785a8696e2135edb01e5e5":457,"2bd2e60fab6f36e768a5494862966e169cf528c5":4,"e1bff38ab57df56bb648651da03c52fb6501a9de":0,"14c29d1ce4d88fa1bfadc16c76b8d177d5ca9c4d":256,"6ba53f94325351524191f21fc7859fbcbe1f7515":449,"5b1c35027291edb663fd9b710d3478f1f87f398c":14,"f0df796dd53d4e2bf1a5a608778cd9d962302200":321,"1afda29e1a3910579b1dcc8bcec5307f89974dfe":275,"a0b84a9ea498c95341553405210338bc968005ce":92,"2b3f4a50fb9cae54bea311b94ca2b4a892612276":197,"9360b964e33a01c67deeb0576c73f0b694ce9874":0,"67909b95a13bc466116874caac8120793e318eb0":1,"0f0974d70648e869ea17e688c82cb8336b638f7f":400,"2f5aab9b951b44f87ecf5280f51cc01df6696724":75313,"6a5ae6b3a7dd58c7395103b8301d73edd3e5b8c5":0,"a44c265ddcadce566f6e95a7101a7774cff581dd":15,"07d37f844d482901c8479099e2efd7d1ba9e04dc":713,"77178a9d85f3ac5c2652869f667c4db975f2983a":54,"8df6bb73bd280f2e72477f970afdb96249f84e2b":25,"2d4238d05192a6aa396ed2c08a328fd3c6b61368":48,"b3b61f13ae5a638b6862db7860ab26ded9fbf382":0,"a299bf7d5d9d4d610e0c4120e8ec2883305b40f5":1590,"a1d43e86ff37b3d3ae73ee8ba931bc1dce045f5c":833,"075f2bb9ec03725e6ab82492709653562edc0dfd":1027,"f92e6da709340e72106797f8f3dbd115c7df3a7e":141,"450c28c0286938e5c692f6ecec84433cf0c25333":730,"e4b12cd7cbb9e0f161e4e69e600153bd5f8eddc0":18,"0432bdde71d377f7c53de6a5e03eb3f48b05140f":802,"393c664b85633359b5917af2cdebafabce3c7853":6,"58cdbd0848885feef8a86001629e05de00e00268":0,"f987164a22e8c1873fef67f09684ed9f74bd1c9d":1566,"1260c17c9af13051f50448d5def9c542c5c6b677":4,"1a7b78673701459ff82d1604aed4c51f1fd679b6":0,"2332f4e4758b2ed0bc0b0ccfe1c102436e7fc989":1306,"ae8b34f5c3969d873ac5b5880edf1bc178a9ad9b":680,"752ce758f78f75958f1dddb347cda69c0697d906":119,"f69211d2aa4a227a10d41ecaf82ed71b2e5abee0":62,"a2d00a86e5bb264bd6ccf04e928af6b89b0646e3":99,"360f473971ea817172054a854f60fa0ac22cc271":45,"16dc5e1456c8a50d714b7024bb9d7349dd4f2abe":11,"e2a3245f84372ffeef504246d77add80e271b82b":55,"9dedb45086283ca82eb4347c33ab589a500d4091":0,"f489484892d5b6cca634ff0badd24166ceea7889":258,"858824e1507acffe6944037bc8f2f912606f79b6":114,"0c90d7049079968af856bf582161fccb9d5c962f":394,"10a29c60979907f1e33546cec9a4d82f02aa6a95":153,"4d8fbc7f5be9d3e8f6f9998f9e18f0a57efa62aa":0,"7f44e445f19b3da173a654b7a11e975e1f88db3c":66,"659b85361243157049881632fcdbf4ca65b4cfe7":0,"970fbc7f4b3e055dc53e0f8bee4635f3ca050f0c":400,"a6824f87706edc49334aa7018ede8c9f7a2aa424":0,"4e6295cae1cbc655470d1111764db15ff25347c6":228,"20e0c7f15fb7d4abb52cc874d237cec95d71a4dd":365,"038a69910fda275a5b9437f9a71af7c1e1e04acc":33,"09ae6dcc66d1b6e17b771dc1c208a4ea8a24e947":0,"932868eab0b3f9c97392d5533098fbbdef6e1ded":303,"661d13cb75c0ae4453c5c96fefed7c09567f9828":0,"98f1f7d6c344cb186034822b7a4597dab236ea98":105,"54f6f0966f13f08bed47e5e7f9acf697b17cf8cc":0,"0ec73a8bbd93080bdb7f6fead14438b2a138c1ca":55,"816547dc92bb53432a758179da19c9476304f432":0,"f4b21c1bccfe4c56c98758a3acd8cfb1144bd20c":175,"6cf0eb164f846719d0b3655a1ccb5911316851ed":8,"1cbf40a1e46ff22813d9b520a45c383a7ae68878":81,"410793f89b2ec8edd09cb28d478543c6a581c7b4":35,"4ac97642c0bd2c2b018a01fad5ea67b4a5892476":0,"7eea5cebdaff63421dffbd2b3ec9326abb390931":1281,"7c23cece6f778df7384ec42f7634f719399580e3":185,"a166c1b26fa2dd42bff4531d400bf48056803e18":294,"f7dd9999f4a92d62945e3778d5e24cd6d46fedd1":579,"72b2f4149f4d707eadb3b2dd6fe30d2bf59d2878":0,"d4c59e90b61bb41274c67b0a7af58def1a46e853":1,"3d62635ff618dc9a0e5f890bcfc61f8d0d17c873":0,"798985d98b079d0903cd7960e4a30f0e4a2ca8b3":8996,"4de9cfd407599d585229c17194927b7e4795973a":329,"cf0cda7edb937f35a098053ef7d82c2a5fc3697f":1100,"626d4e25ddae3fa00ee355c32fcd1269b39140cd":1304,"a87ce0239f0b544740baafbe1671ea0928887392":0,"f3a082b9b19631f7a99deef34ab939ef5fc47217":518,"00e7bc919277410b9c4a2aa435747734e89b577d":0,"3cc4d477d86bd008d84f0efde774dd3670acd01f":447,"17c3b586e1f10ed1c43706b49e98ffa5fbc28c35":260,"459e43af1cd11d0a1f75a1ccef89e49a06750b37":2903,"82098898aa8430d25add0f2ed0f211bf61ca1671":268,"c93085c23b2403ebf1914f01e52d4081955d3ec4":6,"c7d580ab0f3e3c71be843001d85726b9c6bec59c":1899,"44e0b07258e8c427badc4296b16432e90532533f":748,"4c1b34ab083cd2ec7d3d7118285d01023d34d065":265,"221362fd9d98dec602803800c9b79bd4f494bae7":192,"d4847b82ce0853a57dd45b04269036ed4e86af2b":72,"f10fcb06562a4b20350c02a076ae7166e9c546ff":286,"b6caeee8dd8e427b04ce151e2f89575319db85a0":109,"1332f63573e85256141958cd01479a34756df659":1765,"98ab7ebd62cd78f3413984e6bbf8ec4a9ce8ce11":3,"de4c9a630e9b828b7fab763816c99d0162aaf3d1":6,"a686f5cbbd27489fe0033cac680428071b1e4e84":28774,"87168480f15380591ed235208f54ccc9d1979a36":141,"304d0b9565bb9e8d630e0677f0966292c58283cc":71,"aa9d2636801ca32f2310ef8badf7265396e4d81e":90,"ba99d2809bb99b0870209555b523abb37834b3e3":276,"8bc8766baf489f853117d2aa4a95f57a1bcaf6c8":975,"da696cfffaef93dbf7e4517ee2743606aba6b464":660,"c26296033aa74b2236cc71e65813c3fc50ec370f":867,"8991fe2cce25fc14c78a970aaba3363ac7fe1402":2485,"4f2e9beed595066d2b4762a0cae37543009858d0":255,"7692a842ee0fba70db2fb6409a661be97842a7e4":608,"53d52c78e1c431510b066fb62fb058431f2396db":195,"aa4567d1a72054a7c6544243afe85bc02aa374c3":864,"749dfbd060655b0ee5a1d9618565c33fabc93770":51,"36fa3d0e03b2249eccf00bb8eb971099a97f0397":230,"1105d6ca3f4e05a5b2397cf8f07d1e10cd9278df":0,"37a9546b9fecba2c4e9a02ef4e90855d449bf08f":109,"306928e7725c63f4cb1d6d19961606cce519e62e":73,"da8093f9e92e94e3c486e27912e59eedd3a240c3":202,"6dbaaf437c59ca1d74578044ec39538cc8e61be0":271,"701352b9de20971dafe5de5ea876ad9c14afc268":12,"b547aad1da0d7b9affbc1a4ea1355d026ae8b414":418,"56c9f3a2e5d4876a6d2bdc6a41118d8abe112506":278,"7fbc69df8e991d102935b907bee41e7adf06f5bb":766,"c2e9eb5493a819b70f1f0efcfe26d864fd24d335":842,"aedcbe529a65096520cdeb0891f396c2b5402112":497,"4227661bc395c5df9ff2f407d6b495242d749a1f":255,"8eab389a8cd91b28ebff9604636b3861ca899767":629,"c3de2aeb2a27901aea41c061a8718d9cfa601d05":2348,"607c1f0147abb9ba66fd4377cc2c66ed9af14edf":4224,"d1692b2ee4b33325f8ddfcc5d2175978824f2c82":291,"32916d3a4ddd9f9536129a06356ab145f16264fe":3824,"e6bd1e5be9cf5ac0b9f16e91e059957bee18fe8e":182,"b3f938b586608a8c25f3d98d704d54fbd774b911":699,"eef380676f3263a6b2e75c155e5640c33ad6ecbd":526,"ab901492563f0dbac07f514a0385349ec3318c1d":134,"5cd61f48d75642f6182d771a6c11ad0bc68a91b2":477,"abdaa45dad598d9cf3cf868a66193d1a62a3d78a":236,"c0f9e2220d065319ac4f795ad44e2993f617fced":135,"688a19abad79ceb4b31523643098539e660b43c5":64,"2da7251f13e6d717ddad88bce64f43fb6c676bcb":18,"f447e6449c3f93ea519a0b5458c8ee9a17f37353":0,"f8b01870332c77e55e1f4f5766650f1f6e9f7e9e":1239,"fe194fc1e5a30b4f17aaf8b4ec323ee22b284a4f":1239,"1a12848577e7d295d3567861f6da2b7d62b493b0":368,"5f44eb6fb151162beadde99b14d786c7edeef2de":412,"ae91752f494844dc340ecc25cb39c19345abcbca":1282,"a3e8b63ceb17560d6ce2710e6c7a054e96f30df2":534,"dcdc0a8455b01953505dbfe87f00098ee1dd0e63":20},"tools":{"claude-code":{"name":"Claude Code","commits":534,"loc":266403,"first_seen":1772130250,"last_seen":1788045759},"openai-codex":{"name":"OpenAI Codex","commits":1,"loc":43,"first_seen":1782081973,"last_seen":1782081973},"devin":{"name":"Devin","commits":95,"loc":48903,"first_seen":1784116162,"last_seen":1794438055}},"monthly":{"2026-02":{"loc":2277,"attributed_loc":2277},"2026-03":{"loc":26010,"attributed_loc":25467},"2026-04":{"loc":32920,"attributed_loc":7821},"2026-05":{"loc":11520,"attributed_loc":1096},"2026-06":{"loc":104120,"attributed_loc":44830},"2026-07":{"loc":53131,"attributed_loc":44884},"2026-08":{"loc":165869,"attributed_loc":158602},"2026-09":{"loc":97628,"attributed_loc":7950},"2026-10":{"loc":173510,"attributed_loc":0},"2026-11":{"loc":379987,"attributed_loc":22422}}},"error":null},{"analyzer":"ai-artifacts","pillar":"ai_provenance","status":"ok","tool_version":"signatures-v1","metrics":{"artifacts":0.0,"workflow_agents":0.0,"tools_configured":0.0},"findings":[],"evidence":[],"data":{"artifacts":[],"workflows":[],"tools":[]},"error":null},{"analyzer":"ai-velocity","pillar":"ai_provenance","status":"ok","tool_version":"prov-4","metrics":{"work_units":543.0,"flagged_units":81.0,"pre_ai_era_bursts":0.0,"pre_ai_era_measured_loc":0.0,"pre_ai_era_burst_loc":0.0,"measured_loc":889305.0,"flagged_loc":703771.0,"flagged_loc_share":0.7913719140227481,"max_loc_per_hour":43217.24040791031,"median_loc_per_hour":194.41647597254004,"pr_timed_units":20.0,"excluded_import_loc":157667.0},"findings":[],"evidence":[{"kind":"velocity-burst","description":"213,073 lines of first-party code in ~4.9h (43,217 lines/hour, 38 commit session)","ref":"7796da8b80c0ced374b970c59d7b0e81f2ac650a","url":"https://github.com/alexgreensh/token-optimizer/commit/7796da8b80c0ced374b970c59d7b0e81f2ac650a","weight":0.6},{"kind":"velocity-burst","description":"7,839 lines of first-party code in ~1.5h (5,228 lines/hour, 1 commit session)","ref":"2600754d3034645e60c1773dbad768d1312cbf60","url":"https://github.com/alexgreensh/token-optimizer/commit/2600754d3034645e60c1773dbad768d1312cbf60","weight":0.6},{"kind":"velocity-burst","description":"34,990 lines of first-party code in ~7.9h (4,415 lines/hour, 39 commit session)","ref":"cbf4f3fa89f382fe118c7f729206bbdba1d9e9a8","url":"https://github.com/alexgreensh/token-optimizer/commit/cbf4f3fa89f382fe118c7f729206bbdba1d9e9a8","weight":0.6},{"kind":"velocity-burst","description":"26,139 lines of first-party code in ~6.2h (4,215 lines/hour, 51 commit session)","ref":"792a0ca197edc631dd6fcc7fafdb377d69f768dc","url":"https://github.com/alexgreensh/token-optimizer/commit/792a0ca197edc631dd6fcc7fafdb377d69f768dc","weight":0.6},{"kind":"velocity-burst","description":"19,704 lines of first-party code in ~5.1h (3,892 lines/hour, 19 commit session)","ref":"10712d3cde59a2eeae1ea652778307e833207c64","url":"https://github.com/alexgreensh/token-optimizer/commit/10712d3cde59a2eeae1ea652778307e833207c64","weight":0.6},{"kind":"velocity-burst","description":"20,016 lines of first-party code in ~5.7h (3,497 lines/hour, 24 commit session)","ref":"32e9a7cdbb5a739f7e1fb64a4ebf5c1d5055ba9e","url":"https://github.com/alexgreensh/token-optimizer/commit/32e9a7cdbb5a739f7e1fb64a4ebf5c1d5055ba9e","weight":0.6},{"kind":"velocity-burst","description":"9,820 lines of first-party code in ~2.8h (3,459 lines/hour, 11 commit session)","ref":"1fd0cfbd635baf92e0468e0e31d9920880a247b7","url":"https://github.com/alexgreensh/token-optimizer/commit/1fd0cfbd635baf92e0468e0e31d9920880a247b7","weight":0.6},{"kind":"velocity-burst","description":"21,159 lines of first-party code in ~7.0h (3,003 lines/hour, 110 commit session)","ref":"f14a649a5278ec6305ba08b3275ad8ea4284c837","url":"https://github.com/alexgreensh/token-optimizer/commit/f14a649a5278ec6305ba08b3275ad8ea4284c837","weight":0.6},{"kind":"velocity-burst","description":"21,907 lines of first-party code in ~7.4h (2,946 lines/hour, 34 commit session)","ref":"3139c8f42b1bf2e94507fcde610d7f441244293d","url":"https://github.com/alexgreensh/token-optimizer/commit/3139c8f42b1bf2e94507fcde610d7f441244293d","weight":0.6},{"kind":"velocity-burst","description":"11,729 lines of first-party code in ~4.1h (2,872 lines/hour, 4 commit session)","ref":"626d4e25ddae3fa00ee355c32fcd1269b39140cd","url":"https://github.com/alexgreensh/token-optimizer/commit/626d4e25ddae3fa00ee355c32fcd1269b39140cd","weight":0.6},{"kind":"velocity-burst","description":"1,324 lines of first-party code in ~0.5h (2,648 lines/hour, 1 commit session)","ref":"7c77b1bee0adbb4b92f053791ef24a7b5583d874","url":"https://github.com/alexgreensh/token-optimizer/commit/7c77b1bee0adbb4b92f053791ef24a7b5583d874","weight":0.6},{"kind":"velocity-burst","description":"27,958 lines of first-party code in ~10.8h (2,591 lines/hour, 68 commit session)","ref":"031caab789ea1fb742ae200382c310d4aa32401c","url":"https://github.com/alexgreensh/token-optimizer/commit/031caab789ea1fb742ae200382c310d4aa32401c","weight":0.6},{"kind":"velocity-burst","description":"25,039 lines of first-party code in ~9.8h (2,548 lines/hour, 55 commit session)","ref":"1d9cdaee843050ba9ab34aa4dd4a9d55a688495d","url":"https://github.com/alexgreensh/token-optimizer/commit/1d9cdaee843050ba9ab34aa4dd4a9d55a688495d","weight":0.6},{"kind":"velocity-burst","description":"4,226 lines of first-party code in ~1.7h (2,513 lines/hour, 32 commit session)","ref":"b4a7fde6947ce25f1c3adb9a29aa67a1b816f17b","url":"https://github.com/alexgreensh/token-optimizer/commit/b4a7fde6947ce25f1c3adb9a29aa67a1b816f17b","weight":0.6},{"kind":"velocity-burst","description":"9,530 lines of first-party code in ~4.0h (2,395 lines/hour, 12 commit session)","ref":"d8a78e22f3714b68b301cd8c787cb2f339ec7fb4","url":"https://github.com/alexgreensh/token-optimizer/commit/d8a78e22f3714b68b301cd8c787cb2f339ec7fb4","weight":0.6}],"data":{"flagged_loc_by_commit":{"89c131887595e43ec3e0ba01f849e3862ecca919":3400,"95c96b45a573b0e2dffa5e9cc0252ee7f62be2ef":4,"db38c19a648078d17bdc3fead36b556a4dca99bd":42,"d3481f2520f7fe0c547a70ecd9d601b2949ab56d":10,"c73c3e3da00a3c4ed5bf7913b486d4ba851a9800":90,"fa92d46e351f6e5bdd9efb7e1ca6917ffa3c921e":18,"838917eb172827c3669954512840421dee72c1c2":19,"05c7b4ce99fa5161c51764f0a7c535734f7226f2":15,"c704140e25153fb900a03b237901a94aefd318e6":33,"a8c67dbc30a5a1c33fed47887dfa8e5c4b378a9d":40,"d1b2ec20a7a4ad79f0372af901551bc7fa585ea9":9,"ae364e88d30363d45c9789edc71983073f6e6859":16,"5b6ec8e2c07a48a8cbec87167b4cd0fd87b5ae8b":24,"4f0ab0c83c00496480b564143467d70cc32d4ee6":2485,"cdcb63f556c2003eb457ac5918c074538e7863ce":5573,"4456568d8e73e1c34c5a4be6cb1b65d1aa995e54":3360,"995d264cd725b610a33a4fd78f1b7b32636341c4":4,"1de2b164dcda785fa8f73335303e96a8c8824e86":289,"8374926e1d4dc955dc4191994112953e6924a623":5083,"e2bfaffe90e1f01acd8e4fe7b0b64471a73d7160":4,"6ec85aad4d6e4bc2003088be2a65fcb4f52d9587":16,"d865d78ae52e2761c6e2140923593eb740107324":3315,"3c160514fd93fa0c0fa7750fe7a50a29fbd7fa68":49,"8482466f73df015f7e19f78c1e33c9fc19624428":116,"2e0a22f9abc4629f7c4d475a86543fd324f53b9c":93,"3b721574b48838711aeba8cd01ef7ebc54406719":44,"fad06a59094249d1b40c00ceab9a7367eed45a1d":61,"e3e4d12a77936292973bdf603624837698fcb280":66,"989385681f2b506f12d0b972d93ccc0662f10ea8":60,"40162da82ec757766e7300c1723af8d1ec5c6a1e":69,"026413ee4e3a7c4d8b5ab227e5d05e82e29312ec":52,"ee2ad4af72d063a201b56582011819e9fdd7c3a7":954,"61579cbe8eed2690d8b170de0ce95067f75cf456":502,"df75fd114f5910b5f89d1759144389b6f018cab4":450,"c32b5da35b376b5f349dc4ea441b5a4f36a0d25f":124,"a8bae5fd0542ff495d6e5fe4cceaa35dc019a39f":322,"8c1674c43f5d60af4a60e724106a302308155334":47,"afaacd67c7fd08f4566699c013ecba1e35b3f17f":94,"0779599850afcb5ec3ec7157e859e14f061d1852":200,"fc918f6685956c6964cb2e85dce2a3f1e99a9d68":227,"7be99ffe132c9e7b875352b39865fb9255973da7":367,"2d8b3c591ed210b9e1936ab304781fa1bb64487b":173,"f7eb1c8649b2213f1d8d44781199999abe923e35":276,"c82d9ed871d540799bfed78f92234613f70bdae4":2537,"de61e2bccdb1b9fe2393dc41ecff57d4303cf152":158,"c50989d81fa11fb5f55f7a1f20337aad4c649558":76,"7cf1d132d1c045c29ccf065c14d4ce98157a288f":99,"efadcf9108efeef467e6db19567e0753b3985083":76,"e02ce20317a3c17e74f1fad0e89ce38ad2684b26":127,"7b198299a5cd9ce27dfe23b7b7f6c14f6b1595f6":71,"51b6626f09ee8b93dcb41f73ebd61004bd29da4c":1381,"bce75ca78effd856c814dff5355521999288d741":56,"8e59603d3e2fcf08c20be177b606a247e9efddea":89,"6885076e87fcacf0320d73afdbbdefdea4ca35ef":2486,"81d34b473f5537dbb5e2bc452c0f7d156bfea577":150,"b5e2feff6271f980aa55e265da4e26e5b0cfdcb5":2,"f83fb627e5335b3cb77824e9f09646267fa43563":4353,"475a9c8fcb8ff93d098b95e55732905d779d3bef":1546,"628b9a82c665ff4ceb12ecbcfdf9cbd797e58149":20,"0b54b42fc69049067020e85b44834e8b1f780953":50,"30f4fcdd802a898056e62fbe9a8b5009ae5e22b2":2295,"a9285b00a7481432e3c88f001ad12c33d2c758f1":2618,"bdf0368a72029eb5b76f7a35baafc67c380ced70":2704,"28c06303ade4594ad0371cfda22959a002a11974":7489,"fe398e30ab0bece201c9476dd3fbc9dd14e354fb":1064,"09236442da2f34190db94ad55481d849a685d10b":3176,"99804d29a0723a2ad2552df417e06b77f550e858":403,"dca7f05d43858dac4d898eedca7f8523b76ba5f5":8822,"b9bf0313925da5015820f2c3a58c470854491b8a":2,"2330ad39f914d9ad3aea7df338890ed32f95d8e2":5365,"a13d3a3248051c6e2b0ea0d7fd7ba0b19bd3ee20":220,"0ba545b56d017ae45878327fe9ed02d66bd56d02":161,"77f429925e47053521ce1dbb157a1e1350e9793b":193,"716032518ceef5986d0e958450899444d6967338":134,"3c4bccadafca08511d80445ce836490b5b9319e0":182,"7e1cdd16f06ccc9c74a1edd1efc0d24a83650af5":325,"d178d3cbd0aba1c5e6140ad1c2abf35af96cc0ee":670,"3dd47fc638d1427aebaa68ec78ea5a8c65dfc40b":333,"fcbe373dd8c0fb0e13ddff94fe15d26d968833df":311,"1a50f71aa94c5a0fc14519711bed92e6a9e62375":462,"d9c0d681ac0506856e178cdfd74d2b9b2c06df8f":102,"e0643f2431a8051858e250b62dde57feba480e1d":2035,"0d8d438f8bae1ff86b915e026008997bcfb5737c":1397,"e88685187b37de011ea29c1a9140655695236d75":306,"c1612b07900a8355497c309a560cee607e892621":129,"6d05d45e699d079b62939f10280a7524d4468d3a":182,"3d69cf9724ea9747b7aed0f2e02fbf9034ac72fa":1660,"4e26a08a6717ed9e6c93ce19e96947b281e48991":26,"9ee64551de5f02eaed96fc521a067bf74b452452":431,"97ac1ecb6aa594c53d00c29f3a397eca9c2d460f":411,"4cd255f1b5bf6095b8d8c91ec6d0c297c60b5c50":528,"25784c13897f15f6b877c05029af23d591f8f2ea":1840,"2fdfcae69ebb7cc9056c62fb0eac91cb2c3730b6":297,"6ca86e6af5add42a891690f65066ab576d8a705b":138,"a50948e0f16ca1b33e948559370c034991646150":2,"859191fd849f6ace8c4209698e8064e55603d8c8":190,"29f68ee6920b7c53ad7f50eb7c7eca540ab6c90a":191,"9669cfd6cc0c55280491697d26b40bab09db4619":50,"1d8d3d7c585594f892dda18cf7b533fdb77fb997":32,"795c1f8ecbcbf31262897061955c0b0464b43711":50,"ed3547ea16753f322315ad3a844b35a1becb4e3d":196,"3dd48fff3c599e405952ca636a49f67c09b03b39":206,"610750391c8047c1e078f79f67bf415a5c72ad88":50,"3822c6131f4de813546ea8a5bdae79660cc26d83":141,"cf592338839a47cbb37aeaf22812cca5ded52dcc":83,"5b9c8293e8c17873f5efac6631328eca06a9f994":58,"7e6184cde93bc9ad8caf3f0b67ce0f08434cfd4e":113,"ff2a7713e0cdd338097312121da4126064295e6e":136,"fad75e7ff653f66db6e1c7acc6d9070f01383b96":99,"1835c2cc7cd4330c83ca53d2a9849b5deec84499":95,"ae4427536ed7d943d3ef7de38d0be7d6597ec570":41,"987c45f13ee13b63d37af9376a669ce392261dfd":130,"469b6951b1c5742155c36cf00d346e0a3850166e":210,"305b9de4ee94771787afc9d2fbbc767e3e21e465":339,"1c3a2e7e37202a054c5c777bc2f9e7fb535673bb":789,"3e242e0d4b6f71254bddb1191b6b12b6217c79e6":1542,"8d66a6748ffe8f4559b73e8aa3ced4b65e5a6833":105,"73d01d29f2b3a84a1a67e80c87e1c2ced6cb5ad6":292,"77f1523ee4a23ddcc25a934f96f12f210108c369":339,"acb421fd1dfa92a0c303a5dc2f9a9028a211c6ca":557,"3d8f100ebb6697bd84597451c873a279526684af":443,"c0396982203909cade064fa5238386705e9e8f18":221,"c4761a0027b80f63826c64198222b26e66dcb9bc":158,"323a09c395a15ee3274bff88532f31d9aa6b5a45":310,"bfeeaa4c681aa71d3ca1f04a10b5da487c899024":265,"5cbb2fb9e2991569ea81fcfa340cbef16d0d2807":66,"6686d263797d7567986631f9c9a95e0f1233fe54":143,"755c27bfa817844e04729bb1561e284d0ef1bb58":78,"d4f49e2cd12dfd8827869fa142edd3f18a8c563c":311,"fc89cab6ac273693471792337226bf53f871f66b":188,"7262b0bde18717c22f1cc4f6826cf32a4911591b":9,"7c3f4149335da076dee2189930e8059fe9a9ea5f":13,"a0807cdf9d3656bf26f25f45dcc7cc553792b2ff":14,"5ec75f3a92d438a1e06a8169f04cbbe670e6e62f":10,"fb4e8e831770140a1dbf1e45ed1129f83973eace":28,"2600754d3034645e60c1773dbad768d1312cbf60":7839,"8228870af25ada037b4964c777a1e4535d89668e":973,"38dc6e866bddc2f4d316b4596b911e97ec52e084":174,"29e1a2587c79d9c4f73a80ee0b2f17435d9a4882":30,"04248498c851caa2f3a5c2776a2e29057c2e9f14":543,"e04b9ec2ca0bc55a9d73aa10e352c062bf684dde":307,"4237b72db033fc8b52a4e3b78ecdd0a5918d0731":421,"7b01fa3569f193f3be05b9e74dbcfbf1cd3c1fd3":532,"34ea9f6a54ae265c7025436efa81808ec7a5c1c3":190,"9d1bdf60c840070e9c62d0579fb5c7dd6c45be04":222,"7a30f6acbb1f72ba0da83723a76aa7fdcbdcccd6":385,"c872506cdb73581fa10ec27e205aded357764edf":230,"f0987810e57e5ccf4d785a8696e2135edb01e5e5":457,"2bd2e60fab6f36e768a5494862966e169cf528c5":4,"24d2a5d3fcbe5e8a4e4c92a7391153bc12c714b1":271,"14c29d1ce4d88fa1bfadc16c76b8d177d5ca9c4d":256,"6ba53f94325351524191f21fc7859fbcbe1f7515":449,"5b1c35027291edb663fd9b710d3478f1f87f398c":14,"f0df796dd53d4e2bf1a5a608778cd9d962302200":321,"1afda29e1a3910579b1dcc8bcec5307f89974dfe":275,"a0b84a9ea498c95341553405210338bc968005ce":92,"2b3f4a50fb9cae54bea311b94ca2b4a892612276":197,"075f2bb9ec03725e6ab82492709653562edc0dfd":1027,"f92e6da709340e72106797f8f3dbd115c7df3a7e":141,"450c28c0286938e5c692f6ecec84433cf0c25333":730,"f987164a22e8c1873fef67f09684ed9f74bd1c9d":1566,"1260c17c9af13051f50448d5def9c542c5c6b677":4,"2332f4e4758b2ed0bc0b0ccfe1c102436e7fc989":1306,"ae8b34f5c3969d873ac5b5880edf1bc178a9ad9b":680,"752ce758f78f75958f1dddb347cda69c0697d906":119,"f69211d2aa4a227a10d41ecaf82ed71b2e5abee0":62,"a2d00a86e5bb264bd6ccf04e928af6b89b0646e3":99,"798985d98b079d0903cd7960e4a30f0e4a2ca8b3":8996,"4de9cfd407599d585229c17194927b7e4795973a":329,"cf0cda7edb937f35a098053ef7d82c2a5fc3697f":1100,"626d4e25ddae3fa00ee355c32fcd1269b39140cd":1304,"3cc4d477d86bd008d84f0efde774dd3670acd01f":447,"17c3b586e1f10ed1c43706b49e98ffa5fbc28c35":260,"459e43af1cd11d0a1f75a1ccef89e49a06750b37":2903,"82098898aa8430d25add0f2ed0f211bf61ca1671":268,"c93085c23b2403ebf1914f01e52d4081955d3ec4":6,"7e6b43a98dd3340b7ac65fed3c5718a1c6020b72":124,"c7d580ab0f3e3c71be843001d85726b9c6bec59c":1899,"44e0b07258e8c427badc4296b16432e90532533f":748,"2a82c41d7702e0ec71fb268bdce25dd27dde864e":45,"63e5c54ae09d31bf43d1da9e9a211aafc22853ed":30,"1332f63573e85256141958cd01479a34756df659":1765,"a3386ed80c0b0db707e8953a7f59df49f4363c98":3789,"93ee26665057c39a757c0a316da6e2b692b43068":155,"32c388abc53e901b6b72c2fa19b0c5a1eea483e7":602,"1a7875a51b1a624c1aa0ddb1d436a6a0d0e2aa5c":708,"b85f3f21b22ef19bf908f263e300485866d4bba9":429,"f9ac93e9add646ce4f18114dbe2c4d880c662175":290,"872c06ad810c81b900bf0a5c4d35cc64ce881738":921,"06dc3d8fea7865f5fc5eb50ff34f74135fc7b2c6":911,"580854f04f27a26527fd6466b35a005aaccce14a":1092,"a2943c1fffb78b76939b5e09b873c9066636fdf5":534,"e700274d63e8c2161a935e9030678690c69e2721":580,"7974a93197abb6635c645fd9430ffac340e7f05b":7,"2153786f35afffe74f1fd64e421d596c0660ec73":161,"84bec830df66b305eb9ae516992b8dfc6e6639c8":165,"cdd4c6e40236a5e345c95b2bfb43471b7c4b1fe4":59,"bcb36afcc3d1180f9df1a01a96bb4b4aa288f534":110,"f4c9a8c94336fca891ade316cfe8738150ed9975":3,"9828e4fded0ced563b0253c9c1567ba64f76d9b9":7,"ebd4fcf6ec05ce7d56155164fbd1f0613f8824fa":5554,"57c4155a4007438c7bff45fbf4cab1ced023d260":499,"671fd9d9e0325a8c81048d716d9f9e9a086d4542":778,"0e169aa36e38f4933e32a77be7dde1fe3eeac8ce":4006,"0aa42ff531d0214da1761e6195979d6600a97f8e":712,"f5634290cb2b1ee88c4fd30588470b6d20bc4fe3":860,"412715d0d4d874b45ba45e5c0f1c81b64f9f2f22":362,"b7a274410f014bd1c94fea491e1aa49d0e69d9d6":402,"37f29a19cd007200ca72e7743e8e58f56b2ec5b8":19,"8ab41000796e3c072f70beee424d64c326241d80":756,"730c17277754a618d483c48cd91363ba196e98bc":1427,"766cc9aa77c54174fd83d5420ac8f873ffd4f4b8":20,"a117f50fd9a545b70741e4734e83ddb36fc6008f":166,"46ac2a45b80d1028c241253dfe480bdcedbe20b5":173,"b05507b13b4d3f24c5ec589e4a76bfb9c66aa302":200,"0d0be1027362b5d22e3e52656a4f014fd4d95bf5":45,"4817ecb266da8747c960a7fe50be1641ff2e7d42":46,"2e5f471fe1d3774fdc1f67944d26edad6865ce9b":26,"27c9232fcde590210a4adde8ebf64c21c5637fa6":53,"6db2be17ef4cb07a0b5f61b0b5f8adab89984298":80,"e0ae657dbe165fa8120b2d2011218bd16f6ed6dd":166,"4d3124fa2026486151010b99ab182e7506cf43dd":127,"74c94f82a7e79da846974e5ff8f7a3ccd933ee6b":26,"3ed22f30610d212518633c2ca9f158a55d166f79":31,"daf5b3b49e0492510dc1305b0eb04272eec33d1e":40,"178f6d79276b063625644e5a7fc748e73d27332a":36,"6840f96982056a1ab6f4c1b1aaf66a195d7b600a":69,"939354a21f46735a0f97e8156d46167615768f74":60,"a7472ffcb00fca24c8ecf5a4a3edc0cd8f28b1aa":27,"1fd46869387d7860120762e87e7fd95259da7e45":39,"388978e47f08dabcb52a2235c1821888252636eb":21,"98a62d6ac74322ff8719e0db24f244d0cddfa95d":25,"396abcaa1020a92455c41fd3ec1318fda6b9835a":350,"e00f825820bca3a3e465632170761b9261495d58":350,"2594a093b33c41a58cc8db9be44a68099cb6c3c7":115,"f4615882e29588a0812df584377511b11fcfee80":364,"6b9cde9e57d4f8d6d003ff1c63fd61266995d98e":86,"ab021884ccc268cbbbaeff7a8ae0e5e565c4697f":12,"d0eb075de64950cd1b365e8459555c80123454e9":288,"377067edcfb825f973137ac5ce4bd45bab728ec4":1030,"d3441ba1065876c1e1ac9d1de8c9194bed7072eb":6,"daa409ad2fc4da4e0eda966797a74172731f44f8":713,"34e8d14bc7a326118ea91111252527a5e993c093":205,"18c2a155cd09e30cb2f51d0d84fb74e321180ef0":18,"f0b227b1f74b1759b8030c881e5280326f2b548b":132,"067362ce2fc18d6bf6977c2e0bff7a80ed1225dd":174,"3694f3ac7b9aaa4c849d604c90af5e30a8bf71da":79,"1f56af748f6867a9a9a366384f02745e14d6dec0":20,"2af117c8c22fe7a7cb04216762da40dfd13dddfb":214,"bcbe48e8e4d2e9adeb54071d6652363bf18260b8":180,"031caab789ea1fb742ae200382c310d4aa32401c":37,"b82c74fd1d67c40926871fc22b71a85dbdbd2775":250,"bcd60b24efa94dc0339505075ceeea6368348fe5":550,"c49aaf353ae91e5dfbb60dd15e9dfce54b28c6c7":258,"cc226fef10d1055b6df754414ca38d9ca879a1b8":179,"8e835b4fe420d8eb67e8aee3c23eadd13d5fa7c4":34,"15dd2983e6355da5a83e622614804cd2700e3f33":601,"b87c4e49364b3b0c7c3805fa5ab3be5404de9530":478,"da28fc2846362c8a68303e88ca0056474eb2b71d":126,"576ecd4275e7e3bd5b514ea4a2ce4391cfd9df20":62,"67039448aae943e8878b2c4c360343dc561c6ce9":8696,"8e97c99c483dc6936c979d8ba0c5759e27eccb99":132,"9eecdc901c4c7675e3df63ce69523100440f6243":75,"651fbef63ecc5db1c5fe1d791223037057583f44":58,"e839b0521e14cf96ec7f64faa03d25fdb56eeb78":266,"71775e683d70e36fcb420e550b3f4109e000bce6":17,"275bafed73f997c22693e254243a868c0a091736":33,"b940b9e03be67465b2ccd33cb5d6cfe69feb6046":241,"1fd0cfbd635baf92e0468e0e31d9920880a247b7":114,"b07dde60401eadfaab03a0a135c7d9b1ae4bb8b1":308,"6859a7c6ae85beb787bf870c60db1e7372119e23":17,"f9fa3069b5b9b3251220f65a71a7edd86bbb407d":9,"303f61037c8fd259609d96a6ec9185b04e792c92":7,"b60e983a3fe4d8e5fac597c28bdd2f05a2c05dc9":8,"ce9a68b43da4a0ae243b75a45f5967320213cc6f":900,"f586ff64e772a47c1205fc682ae75b6245ca8e74":458,"b3c575ce24fceaf60c9ee0db43f601bf447e1590":113,"b77b15c14cb6acf7cfeeac44e73b77a2accfa174":44,"555348d9106fb4fa0112f4febfe2370672c7c9c7":71,"b373a044b917f4f06086c6cd5d769b5d117f9047":149,"45eab740b9dd9a9cd7db8f2db67b768f56bcf060":75,"d6ac91e39c3f5423cb3702f0426eb3010d2d9fe1":270,"cbdfef8ef8d1eeb42c8da552058aca3224d4316d":24,"08cfe99053f9b39613592524ffa336afae68f924":284,"92a34b15d04fcaaada5038339f343bec3f644829":38,"abe8f73e27ac007ce929f56825d24de07efe5458":2835,"6caa2615093154f8f81fe57d779dc3bc8bc82b4a":186,"74d4e804941e5aa5d690ef634c61bc0a68add030":1349,"f0f2e5091946cedd8c91334151671e433a778397":11,"cae17c53d6b4b534b6c04d8e51fd96f5e7f6cab2":172,"29c9581bf608d763b584899297231f08dd622865":158,"f8627ce64525edec1222db60237ca1d6923bd09e":312,"ad02c38a5a241923a890a17036432fc3ca4d727b":24,"73bbd2648e60321c0054dc265a885ad744d97e2c":23,"b548e8aedf522f6e8890d26f50cc87b1e6f66364":816,"bea3f524f1be343c32a56fe9a5f57017f2c7ff17":10,"35c05b1f7916cc3b679ce05c685bfaf2acb62e2e":25,"87168480f15380591ed235208f54ccc9d1979a36":141,"304d0b9565bb9e8d630e0677f0966292c58283cc":71,"aa9d2636801ca32f2310ef8badf7265396e4d81e":90,"ba99d2809bb99b0870209555b523abb37834b3e3":276,"a1334f75f4d8c07924d26958229d49fe1a2cc5f9":116,"b6e01b9462103c9eddb1f9aa51362a8db9b14fbb":1579,"3c1a520c52425001c713f4104823a59224ce6d39":402,"8bc8766baf489f853117d2aa4a95f57a1bcaf6c8":975,"f76613f81d2389844bfecd3351f91c12ab104d04":514,"da696cfffaef93dbf7e4517ee2743606aba6b464":660,"c26296033aa74b2236cc71e65813c3fc50ec370f":867,"280d06932e4fec54c2a1e50f34820c2c49a09a69":970,"888252e221c0dc705ad856721ebb0adf85b3e0cf":114,"b5c24b329bb7327c0912f13fc3a925ed1dc4b9f4":32,"f2a5a7aec0d9f3f32c845a3331089455ddf11bec":13,"8991fe2cce25fc14c78a970aaba3363ac7fe1402":2485,"15d781ee98efd9a0fc877b6860438574a4dc0bdb":2494,"d8a78e22f3714b68b301cd8c787cb2f339ec7fb4":4,"4f2e9beed595066d2b4762a0cae37543009858d0":255,"7692a842ee0fba70db2fb6409a661be97842a7e4":608,"53d52c78e1c431510b066fb62fb058431f2396db":195,"aa4567d1a72054a7c6544243afe85bc02aa374c3":864,"749dfbd060655b0ee5a1d9618565c33fabc93770":51,"debbfb7532c15eb55bf4b3138b5ad85501bd5c46":2922,"39311d0924b7ba51dc0248b79ae9506b724ed6d0":3,"63caf9960deb4a69d9a7031ceaf02cc7a4e59ad5":182,"4ddecc2b941c6dbdae58fbdb01ce951e5e7696e2":83,"295d6d39e294c92394ec5790473265c328ed1662":318,"3c72860a4fc58dcd3fdc4d0624eeb9074b507d68":2392,"f13d8d411c4a16ba4b92c72bc4375c259805b1c6":906,"78fd23a20351cbd6ccf69252c3888e966ada05f4":955,"c416260fbb7e95de6131c531085328fde8082e1a":1117,"1ff7c8d2659faa27d7e55554bafcfc5ef65ad048":1,"cb609c9d6c2f5bdcbc5de0f6253499425f54bc98":2083,"ca464b7dafcf3c20901d64637dbd4540b743c128":8,"ac1e4c67ef52fe5e114749e5d6b160aa9a596765":445,"3953e69faecd9b0bb649840c1ccd71ea50ced66e":632,"d8eba3dd120811aa21fb9f4edab8a7cc81ff0a7d":253,"ef2aab41522af92dec2d1cf14894df871b6cb5d4":145,"ca1a95b2531ffe39afc2ba419381f7117258e7fb":294,"942082976bc6312505595229285b0f596cebfb62":289,"772cab3f0179b7e588b3e1ec6c58f814a358836d":503,"c5a958667b633e7bb10e712e8a4c5f979d28f3b1":2,"dd2c53238ac93e3036a976c385c2daead46aeb35":59,"01a8913467dcbf2262e1a8216e0fad2296548f3e":208,"e4afbaa08065940492b4a8be068f866bf3cdee9f":1947,"99a1d76989000d7738cfcc87995a901b960cd062":1354,"11b700528012c72f7080dfd27729ae6bc2d3eff7":17,"c4377f156cc5a5a81c9bb7d867d61dd5f6800dca":3460,"d43ebe5bfbe94a42d52fbdce7803006a9aa3625e":7,"9f146e0b2dde5570d600534fcf7005af11b6b56b":7,"36bdf3cfe93f8bd9fa51bf0e1d3484262bb2ebf6":1100,"cbcce1786c317cbe84bc04ee59368230a6044b8e":2427,"4d6c608aa098d047f3ad13415a3b1680ce1ab235":4675,"c7b28051eecaf5eff2398a488df2cc918aa4c061":829,"0141970564ec929620671a5dc9419641720d18f6":4,"4162c4159f161e5be8863475d399fa499e78a3d0":703,"8e9e4d5814117db54b9471aa6d63d4f33fb6db74":4985,"6372b8b325a95944d703e7fe24efadd2cba882cc":1089,"5d5253d93e50f7c8f6f60d5a67841c224bae8fb6":88,"cc13653f6fde090a476a44af1e9bd99979d7725d":1770,"6fb6476713be32915c9cd1fa412ce0d36ef456f9":6,"d712279f025bce381dc2811e157d1f439890c102":1286,"1c2ec7e13c1a2da6598eb2b8f72c9fcf2f7eea04":14,"57cd400bc8787d4ec577e390582bbbdccb9e0f73":4,"de9769680323f9559f090cc769acffc5b844b418":1982,"cc8f50fde2cde90dbb79a68ae4becbaa4d14d86b":2557,"ffe12592357ae0cc937bcae7b95e3012fff08392":110,"213c3f4eb029e66683cedeedde4f54c600775114":683,"e7769aa5ef9118256ea513ce1a85325eab23bc11":973,"17cfd5134bd112260f8060f391d49915835d1c2e":170,"6fdee8c523921e449105b5580c6254ea3ca5ec71":404,"b8b23e561093c352daa0d44240fbe05f4a2386ba":261,"ad20d83629a3417ca1e6e1aa5f35f17e0aaadb95":8,"f62ef40d5f4929b37d9e6f7a4098b31a4b9b7872":131,"6478eaf0e3c39857fe96fa93ab5b6ea7dcae0338":308,"77d0a481922ab44e0f69b9400e4c8a17b8a92544":125,"6cf1399e5782d065cfed22198d992f4c02a0f1b0":363,"7ebb42b66833766b05650c8da771467b963b128e":363,"cbf4f3fa89f382fe118c7f729206bbdba1d9e9a8":8,"d86aacb14adaf97a7d688e2a397dd405d1fc6573":1446,"faf210d82538906e2cac45d6210cf326183b111c":1134,"dbe2b69c9f300b11d2eb602a3672378551918d40":138,"b1f8ab97bbd0e676b1b207724ee34bc7d213dbc7":964,"128755a531a70c13e5f7875887961d8da1a6e71a":777,"f756a67a87a47e3965029a63d9456936d26878f1":1554,"0150810ddfde192ab10b418ddb34813c7202a840":53,"618d472229bff2374871905ed56674fcd4405856":12,"ca1a0db8824fe2a792eeff9d6e932b4c2a4149fa":68,"2ca44869028746f9867d3c796a51187083493f4b":114,"d86aa573dad28a640b16004b8e5234a9d6fb2d0b":581,"8e83a7ba19646f5f716f0875784a4c979d673e94":105,"e6e6dac87fbc7e4fc057bbc257feb5eba9302829":145,"27f5da39d83b5f8a616849919efe34f33575e539":20,"7af9038db81e36e79118d62a8aef4597959763ea":70,"976aee47791e4a34b5c9a2d08b6c0c5727b8fad9":60,"25652e3807a241116091156c29aa7fce5918c542":21,"399a296bc62d3a50ea50cac8f15531f0bac9e4cf":41,"1c32f585545239f6c5889cffb42ce82d064c38b8":20,"0ee549b8584f2d531762e98c39f3433325330b4f":51,"8e01a91b18946092f1bc4e8f997479a8326c3682":52,"1255fbcc8d2a3a1f988cd1e9273f4ed57e20c128":169,"7ea2a3a5037f64d87c647ab22b094c9fb674643d":22,"6c6045ed7d2c73fd9f8bb39e8216cd898ccbac29":242,"3281b4adbd401c61cacbd0ba95f2b4937749ca06":391,"76eee941d8333582d04de48be1a88e8171390e4b":391,"3afee2be3454e7300ee0c45861208389710a85e1":385,"c10da1ac5c797e6011f3e58037d2de467eec9ab7":143,"8e503e3d44ee220835600e8024d4824cbd080d38":12,"916465a45338b280b33ee73b6378acc4a0b2b63a":8,"f7438b49bc853b57099634ed58ac4e0a8a34f63d":104,"0f05d36ea542cf9098a388a7753f08f63b0bd1dd":32,"91f9979f47a27a5b312db2e8910c35a0de7306e9":1,"2d1a1f1130bf6577a684383204c20d9838907f3a":14,"80c9c10b8f8e958669a92e98bd4c973cdb8e45dd":7,"087b38ce2e50b15688665b0fa58070f13b2199ca":971,"3bdfbbd1ed5d9374d02ef1059d6538c352a9758e":84,"c1785beecb621758f5bee511766efb24c84d0496":71,"85cf3d46bbe410a6a9ba76d4b8fb8b79de17d17c":15,"4739eb9893f37d7c5de6acd7fc78db4fa1a7ba47":288,"25ce4594cb290110d45d0c7f39213e1596a0b2b6":258,"927c0b3877155dc03f974fb2fe003900097bc082":126,"464790c2470be6f69c269ec42c0c4de208abdac5":59,"ca1ae4c4e1f9df3a902acd2a6d42cd601cfdba97":28,"9dca625d634b055791f5fa781392ddb8bee460e4":101,"db462bcaf4eda5ec3ee5cca89e9aacf14177c09c":177,"51deb7bc5061c4311d0cebf71f9e7ade255cf5be":264,"c815d7258d9f64d312407cb52c9a163227643186":193,"f5081f6c4b04356168b581b3446e2df86f2a26e5":224,"31d548e1b59673ed7709e1ac81ea287b3403f7d4":7,"b2521cfa1194aa590718a14a49e1423b17ef805c":32,"cd4abf1e7888654e74a6226df680c933c0ed3e7e":16,"1d370590834896c513088bf1ba7853dc5645284a":165,"000310377ed3e8fdc699ccb9ecea7b78f6da5d56":16,"39d65ce4164da96d62f6cdf68c8729e225ce8ef0":137,"94ded6f7d80f170e2997490f15fcffff79aef510":14,"7fc125e6a4b45ff3bde390ec3c5fe0a17133ba51":306,"f2b9c7a73949dbb2dc71055db6a4d3cea998ab28":29,"7ecf6fe7d72a339a777e0a164e522070e7c9788c":15,"4811daf02376d21c2c803e42c13803f0638114fc":32,"17e7459ab80c61a0b583e0f4b6e4bcf4fd6a3864":46,"1b69464ee3a65a5a5dd3b6b6e160f6235a025fba":30,"2cf42042652353318204ddeaaf74ff701ae9298e":909,"27eac89888093dfdb4c7b2fcf7b5c23737ebdcfc":41,"8518b4dcfff957cd177cb2f0feaa0bade2e7a8e8":38,"7e7e880b26c2c464e838e0d3b9cc4bb294bbfaca":220,"fb26f484ab361240a31c157aa3b2c321257734af":225,"2214e3bcf06f4a9bde00738159cb46451574e504":78,"e658df5541c0851633250546806adf60d91760fc":75,"c255528d5c04be63c1d29f387718f6128a4e7ec9":37,"cc7cdaaf4bfa476c2019cd0e8ef5e3b40af6e1e5":240,"903546b283143e505901255193c1a7aa43d7b047":512,"3b362998b9d11f83a7530ece391d17a098860be3":55,"b64dac32ef476905613723df126d85b500c1eab2":114,"44672951616afade7d3644d3c9e8509b8ebb5d59":38,"225fa75bedc969f84914142508488daa159ba578":6,"e9ec5e97f7d39fe5b7a5d4bf3c7943019c103a94":237,"5fdaedde6a5f062df0c0c12dd1aef613cb8e1323":293,"13cbb9a062c28b4e58f3b56ae682ea2bc1b5021f":293,"c276758593c2aae87edbbaac3b5645043d2db0a5":192,"c1139563320a29d7576386ffbf4913158ee188f0":25,"790293b740e431e8e3013764e7bc0f7aaf6d5a28":81,"f3aacdcb489b5e07d6fb27e026ff9476caca0fea":53,"5f5b1e4b0cba73866ee4c3f7f8af5e457f86b74c":38,"e87205750e7ad9ddd274126dbdd1196779dd678f":135,"24f4bbb76ccea44232d933eab26cb3b8ad7ef3ee":174,"ed3ca5a0f2c3fde9fc0aef932052a590ebbc19ff":4,"1f4a540cf5db5d46e3f68cbb1a101ce7bde6fc1b":8,"6288c99a1736ea414d8c57afa67c92a265719f78":12,"29af631f2406a55f66b6e633654e25341b8624a8":126,"8a18efe78fdb5af000d5d19b20f520bc58123af2":126,"978342792edf7afa6535e03ce4400685b30dcaca":100,"98a303753604a6db64aa1f74d5f723bdfca13342":477,"f53d081a1517d1a067ec602e49ec0a2596067a44":436,"e5935ff027e8e3db7155295f5872c1ec499088a0":436,"0c58de43eb59c4ab5df0083bc944dc6ed30d681a":118,"540b201dec7a1e25d4eec68c669cccc283ca60b4":43,"1f1756eb616024e939f2278ee5528228492bed01":790,"a894100b13977536735ad0d507607d2527de02d6":9,"5dec4d4677d102b04753519d2c0cfeab93a699dc":14,"c6ca6ce92c58e2323c6eb89c2659ceb9d7cf960d":664,"706a05f749189d44fd65acde5b844023598ab8b1":1,"f15386a8beae7af341b551a7b9b173281f2383b4":11,"14cd521a0173926ac01fed9f3c2479cca62432ff":282,"64b2eb4ba1d241db58525d13933539d2833916cf":282,"8a626b2a6e4572b659426147690913dc7128813a":2,"fd66b3802371fdf8ce89a10b90fa5b3554634a97":24,"73be4b9d9eeca2b1ccdfee0e2ef464dbcf25809b":29,"23bc37d6a79530dd52b5e043dae68a9a153dd476":2,"f14a649a5278ec6305ba08b3275ad8ea4284c837":3,"edba7eff2874d780ddb51dba5c97612045c26586":6829,"7ecbeaffe60669bcf5048582f43988dd2cc8e6b2":72,"85bceb645358d7ac04625017336dee84ad94a3df":41,"cd582c565d512587c060f2f1546bd90c5a0b1db7":249,"77504ba5a79a937350f09fa1418f50a6848879ba":48,"d4ecaba411cef7a2ca72e00a16999d727bb829ce":3,"2d28beb8a583be2945cc74318c23a7f424cffee1":3971,"e05dfab50f322f3d4fafe32398e6b418aa4409bf":10,"b40289a23ee3b1209047d5084a3d7d09ec4ffe29":911,"6cb6e3706926fb38aadb4d4fafb51364774194c6":50,"b47a2ade8bdd9cb3adcc01a4cf5e1f955090c1c4":6,"fb6ce0061521b4f110f15953f6d0a4bcde2b6cf2":539,"aee0a3b0545b651e6edebc43a39493f69d5b1f32":266,"d02797f000670d35abc92eb7e3bc094700e046ce":1149,"d0ef961a7ba2134aad7dd915b05a17fc5dbcdc27":160,"b3a83aa53cea3b9aa0b4fe2de7738eb4d539d48c":4,"3643680d76c62b369cec02db7d7479b49057ff92":2088,"00112618a4e554a0aef53c584e9f4ff0004dcf14":124,"15dbd926e44679ace0ea8cd7972b77323345de06":557,"c16ac12abd6326fc8b443fcb6cbcf650d245b823":1,"327c383ed168f1925f6d6be55d0d294357b18dec":3,"140b1420b5afb1a0ef7c478f63ba9ac32b6bc67c":265,"b721afbafbe4d44d014da9c0a3e779b49ef57af7":143,"dfba0f202cd5322d4358575c94ee0b0f9b0a9221":44,"723780d18a01dc889cf5fa3dadd5f2b564522ac0":117,"9cc082496d79587550cc17384be00bfeb0dd8f71":4,"bf3224e157237e45c11118e7f5330f1d18bbf7c5":145,"888355c47acd9a64330eb00a5297c1252ff330f0":835,"db5c64503d878601b1c04b45d3c32a4f183d52d6":205,"24000bb72f00499fe803ddc7209ab4e8ff39ec09":1682,"9117ecc32ecd268cffce7b899c55058ef2067196":38,"9955e15b55ad35804f71e5dbad68e89d8731b054":163,"3b788d3fa7e4b55b7a90e93b507342ffd2ee7e98":202,"5fe952ff475f721102a213e1a3e51d204ac94fa1":114,"7fe1b481fac28ba82617a998b4938c1ffa54c1bc":37,"0fa9a165a4d3bed1d42ed3f8b76f202cff764379":91,"921728f052604ca5ec31a15eed3b049ab19d8213":416,"bdbb60be37ebfd491a06e9da071428fc18b8dc45":58,"2e71be094ea1f42660ed78e70f3d35d475fff732":143,"57c5978ac617dbb2069e7c469a12925643e8843f":63,"978009ecadcc4558be2393e0edae097f4c8841c4":54,"dc8f563f7670bc354a9deffdfc63a477a1bb5c2b":29,"502d344a8fd257e8e80462df2b44c8d8fb99d25f":247,"99645e379679c41dcd177280c19e9bc4c7540d3f":5,"d82f069b9e8ed85aa4f2aa81a56fd8c1bca6650e":326,"003ee588d5aaf0a307620506eb7b67fa43602bb4":881,"31ebbee682a7eef3e411ca49d021e1f1dd4e17e7":881,"7414acaa9739fb8e1cc6bbf6bddb741e84c1a114":4,"f2e92b8a11be7a32501ab9912760d39127dae56a":32,"776f7dae6b16faffafcee80fc08b3d465b616df8":55,"8fb3b189c7b9203e785bebd574c917279db251b2":137,"66f2a64bccba7e2d0008f41662c5598eda01cf75":86,"0f82af0af547557b3aa66ec5fbc325e833635a7d":86,"7504dc47cac240ee58c4c2ebcbe8f2eecb6f4f87":20,"55be24a710a5c62c44c7679ad569febe2afdac4a":37,"41759b8e048fd4ffaaea9ea2ea4e17a8ad4c4e5c":3,"78670f91a33881c965f02fb10a324177e175de24":14,"fb2dadee13583ecc5653c8d6769be82325c6e04f":6,"0c878249befcef7f29417b13e66408446b7a6e05":26,"4e0c4b373c748abfe374ddace2b3999682252c4d":51,"30dfe497c8b6ecb41b655fa7c679dbf418322e5e":58,"143f9841a03ff2473a24ceb19320108f64ee7d64":109,"e77fcc9f8d5b72c7a283b42ac4581647967e7757":238,"6ff5d57c9deffd9de75e0fdfe67e7d142113cbd6":3,"ab5b07514ec2ab2d9bdd0ca35b25bf8dec5b4704":428,"33fafbaefbb61041ffb71fcbb995e675a5d8d585":109,"7cd2b5de4daefcd1697f3afd6df95283a8c5fe64":606,"5bffcc72cdc57e79ad3ef7de8ed73e83d292cdcf":396,"f22a9b79e5fde74e9573d0d3ec9666ff1de2f436":66,"b82db9b9364e1061864dcd78d8f17f5ad32a01f3":85,"cb027e8d738d7f832993de3f66b7bee4ada79007":236,"2b886cf058a90790325c44790a99b848cb27c864":16,"8d3619ca7528ffbf18a25260f6c1af80f2cd4de1":470,"4f841e3ce48c63c0ca407f39ab0e88e73276ad5b":162,"3b364cb5949115407cff2a15923fa7fef9c7e5c1":18,"2632e67f510ee633766c762dbba09dc2d55ed421":68,"3d58a62a5dd06a5e59c2e81f7d2f38f7fc4e0885":1207,"683bfaf420ecd211cb9e3a0c7e3e0dd0f70ad7fa":9,"169e05483501860891b2fc92e59ce376a7be43b1":21,"38a636b4a9498ed0aa1d3c67360b1e38fc4bfe1e":60,"da67e0135c6da86b2bbac81f4aa2cb09b2b0ce23":90,"761bf09b96ce8b2315b1af10e88a6c106963988f":7,"dbf78a9ff6c34751f7ddc1216379094713facfae":12,"3cda0d4de49b13523daf92948ac9bd384cd21e9c":1225,"a1a1108372defaa071fe5c7939ca1127257084cf":182,"8e0f536d3c6e28324912fcfd3a86da7b5d5980da":113,"692bb03a89014251780f08607e50cb80219cc340":513,"5e18db585d3409051d0f4122610bac961af24e4e":514,"9c25a2fd2850113a1c27297810aeb7a0cc3a564d":37,"70e17c3091f98505eedc8792de26c6b2c27b022f":8,"f9ce73ba9f0cfd3d1bf1ec39483ed9b83e2e5e5a":101,"794e3bb5ea0cedc23ada1e4abaed9023af33a9d4":2507,"fa24b85839d1b8e353897ae33077e19315266dd5":40,"243f946f154753fdea0fcb0810226b6c2c9ca2f7":201,"a99e4fdd21e5f1d671ae7569e34c9ef1a3c1a3e5":2,"49e2750d473a695a23365372a80fea09e10fba66":1353,"0b430deccde888063c5d2d2b6988eb2f751ff3de":30,"3c6ad851084caea76f4bf49928b4e1e4a6125a2b":3,"fb74fe83e7343b6ad67a79df22b4323a5f7f07a5":5,"5be58f0375317b6c817eb574eed8e9cc8a5d9587":13,"0cd909d73fc3e3a473f85d5d2e12a8146a03a1ff":7,"e1142cb3d23301af2ec802061aadcd1e218291e1":214,"e3a52bd70250031ba69cbacd75bdb415c0a3cf57":57,"61f3b946218d6910f6424a48a657aacfb2ef302a":249,"87dbebbacc196da6a7f66c3f70a99fc14172ce77":385,"0f7a52a27a4abb957ca599d63833d2a2bc835ffd":196,"2237ff91552377030553636162887633dbc3e3d7":1480,"3854e0a0e3d17f779767c5900cad28a69f49aec7":101,"4e3b1014f411ebf1abc04808aebda9a15eb5d334":1014,"87530e75ee74ee77c6f3157c930cb3be70c6d97d":889,"c2b4f16af91a145c30ebf411704f5dcc54866c0c":228,"9b819afd11b32a72b4319d51f6f6369e0133fd86":7,"adc5d223d0ad2c5f9718aacbb1ece104b13f3615":218,"c229fb713de86aca8224ae2709e4bfa38f40d7a0":219,"8b42414e3d805fc754c58c63bf73252e33fad6e1":41,"77f52ff70e22d65e2f0ece0dcf89c5f8cbb35fdd":890,"9cc5244fb562d794bd18257c19189d113111a27c":60,"a02341cb68ad548fecfad288fb2ea628bbb5d99d":351,"6fedf178ea14863efb49af743b2e29125fb3e227":266,"7d0f550f6f1d0446134cee90d2f4344d48cc6d22":126,"be5800a2820b4b895a38a32fa43eec32a35f3023":159,"3a866f3b558f68a23ce7e05a81c91d249360d3c1":23,"041be8c7499d877e92cd647cfd97a57537884a44":1244,"a3da7e9f64a1fae1854b2774d975da7788e5b4fe":1244,"59e22e9956ff397a600a9b3dd798d2747a596a13":60,"8e8160c750ad4d5f2517972935ada5fd936a0541":36,"543e62679cdaaae9e3fb312f0207f6eb155241d5":36,"2d26708bd60649b8a5a4c75ce44f3661eec347b1":27,"bad72ef4cfb368018c5fa9ac043a59c6f977923e":333,"ce0ad5739d4df015c11e6ee8f120854e7f55998d":61,"b443ec24ad74dae6ec38751a9b32ee41c2d18e53":65,"872d9b5c097a79afd95693b9deb691ffc5b87524":61,"512dff8954fabb8d546c69c3412e1cebb54d20d8":32,"84575a7191a4123e5c073ae8f49d57437fbfda48":1,"bf433c8183f32853a3f6c29b3667cb05e1ef293b":1,"879b6b494fa0332ea812607c3f724a90ee81227f":1,"c73dad24356ee52b8708e43052a5ab784e41eba0":155,"3b0eaf7b2d1f2132e55e7458e87e7e5d7fb76aee":34,"58f6225c2618d5706e5290e72d99e95ff093cc90":271,"86fbc0477420451a3c47261b6dd7455e0f79b426":75,"bdee351014bd3bbd09ce879ee023fe1579fc52d5":163,"d4057dc488c21382f71ca0ee48c21bb3713d02c3":57,"e556805d6190f305e2bedcba4113604215a143e3":349,"1511a6cca295cffcf8e2685ae02fa85faa323688":63,"41c1beaaea59eb2e61e72a64b1d9fbe038cc61c1":63,"e0c905eb0f34c7b6b30c6b26d79dbaf07c8b821b":16,"d05992484503ac60270bf6727a56d2abd3644ccd":113,"4f99abcc4add4918cd27c9210f77d0313b3a2266":16,"63518cad419ee9cd110300df1c32542c4eaa5a19":22,"d482343b44d377996cfa66e3ea3cad5c36d5c3cb":86,"7a5c330b4ed303faeea4a9a442987815d5d939cf":145,"9360b8fc2460f48d4a69fdad6290c7672c34c9f2":63,"39dc34428959e8f20e32beb38a693e5f4165badd":63,"cff72adefa6d38fd0d79f95cdc84cb337c2954b6":117,"6ed35e02cb1364a3f94d1e3b6176e206bed58916":561,"11142cc20496e0f004758dc16de36d525c3a9d73":195,"bfa96122f3e57dd893a3fdf4b5c6ec7a4bc00ae1":30,"c387a5fe435dc34220836275b17848cc13dcd5ee":210,"c41787cbf68d5fa60aa46e07b2a863ea5fd8612e":128,"bd0ab240e1cccede3f3acf291a4163bcf9e879c2":128,"d5e3ce45380bed53ecde104e73b373304ed1b27c":3,"6fe7506de630c9ff22142d6b0ebd973a04d5830b":5,"4ca2e2da0cc155b99d9142b88f0b2698907fcf7d":33,"99093777081c4ec55a99c4b6d35939b42abfcd98":22,"5ad91c793aaa0b97438a284b87f25e1a2e273131":33,"9be01207fbb78b68ced75456a14d3facc31fcae2":22,"ac69ae8ab09f17ee094453ab828c8e6d8cc7277d":56,"5b51c887361f7d07b9d1df1872d07310c347f7ec":28,"c769d8e76517d9c3576d99ed05e6919b0e6aad52":21,"942b9ef8a4e96a51605f30c61a4a0d2a9b002f43":687,"ff47894550ec0a42021249fb661e2638e21f34f5":186,"230a3468bb4440dceaeacd119a3ca598d53828c5":13,"333bd290f842474c3213cf9d7ac3878e645d0f19":3,"3423d9d38c7a33c99e2f3c2fe6a2a44375322805":713,"bf3fd4d9e179c0e0108b6a8fdf597ca5a76ff2ed":25,"4ac872cd99f22c963d8de8b993039e41572e8a46":136,"39bbc508257dcc221be165eda6ef079f301900a6":54,"e6056047ac441a21f0b8e3b15370832e88ae27a7":46,"cbe54827836442326d85655efe232b5f1a18e261":234,"b67819ef5dddc92f65ffbb9878ab5a3c0f0615ed":24,"456452b8093278e842bd770da6e6e71b014eb01a":479,"7007189a8059bf07c39b017e74b01cd185abf054":63,"fc6a8b1570361e61dfa9179599b1d43fc83b4f8b":96,"026773c8b4ee457a15bd4fdacde58c2d228df3f2":13,"391e74dbbbd75f1082839925740eef6b013a72b5":139,"1858562240ea3d635406390d3774f725d4d43474":56,"11ffb2f097773260f5b427956e1fb65f768cf5f9":68,"ffd6aa87f7ab1196f3863cfe71727ba7af07b915":188,"85271d34bed064c1e8bb4e58cc394187956aae9a":16,"c451698db11dfd91cc2c1dfe073333dc038743d4":43,"246ade0e830f807c7a2f2754c7af8ee41c93fba4":44,"e2853f00fbe586fe2055aa96891619c0670b3b68":322,"9f2bfccff048657785dbaf1b87be992a3faa5506":16,"d445c7d3569f04c8583ec670290a470fdf2d5b5c":31,"ab72332c1210eadb16d5e2341e63f4143776ee0e":134,"5a0f69d3a5388c9c3cdb8865ab8ea6368e0ba9b2":218,"7f8c3038975cdce8d2941862355f21cb01384986":4,"dfb019d1810823a8e21ec76a4398ef01dceedc61":22,"e955152866547f54271f7d98b9c19bf7f5c2e8bc":171,"8b71d83b57bd78de98ac7db1a4171c5107dbb5c6":17,"52184f5e27b73900e9309e628ce67aa00d76470b":451,"afed926fe6d9db62e739a42f0d8f7792fc3ee186":93,"6f15cbbea5d24f17ea58120bc0ec7402653bc1e0":74,"04e42933a8d3309ea7697c1d71b3a1b6a114ae4a":85,"b4a7fde6947ce25f1c3adb9a29aa67a1b816f17b":151,"68ff678fe0ed636cfe5dc2663f11707699f3bad6":149,"e12e3d324be46ddde7d536c4f72789853fad93e5":67,"3db3e75b5f79b97347c77afcce6a4621c2d250b2":35,"fe1863d539fc5a1997fe90f32c1c995bf13cff7b":280,"1b7483587c2f0042595b5c3286fae8ce308bce70":380,"03843f62d245b139c5d5e124990f4928757cd672":74,"e5d81e551328ee4a3d51ccdd2d6c696a0dad92e8":31,"fec471ffac9d3919fc93f13923a72e039c871d78":282,"7e81b077d422cea7a19ba34ef9375017a3293822":56,"59527885f11ab466505d07dae511df316eeaa5a7":786,"0c8214bfc58c1e9b959e520d681f62c44e300c99":65,"d21e9a771529e797adb4ef86d3afc28bc06b450a":106,"5bf98c88965fc802ae6949842dae062968b46025":4960,"74d89554f81c009086ae47b1a44d822d55b3e93c":60,"2eca0a033faf055c672b182ba9d14a83d7cd57b0":144,"8f4fad3fd2bc893eb9a9e1c0c7e5d30376208486":150,"3b55dc3bc2fac3e0ac572b52057fa97151607d1a":2,"f1bf455cf892988fc9491d55882dc1fff5dd76f1":6,"b99c18b51798aa22b3378fea174df98f121d742a":130,"014091eb7b4c31795884481972f5403bede1a282":159,"c0bd2546d28bcf5a6b6d5f6457b898a7b4be9f16":240,"41c560edec4f38a2fa6fdc7e8db6134bf8b3f28f":180,"e9174b950925de597f22286a42544a3e605c8e3a":97,"4abe58083cf098e97d78360edea9df411cf72ffd":222,"2621d983b18e4466c39a8806ed80c2c366f0edd1":170,"ccaeef1f3179d2e785631844e498d1a603c17a04":410,"6151a1e6c45f8c845212b10a5b88ad9bbb71e4ab":238,"75d044d17d41eaae7285a63e7ead4d035aec196e":58,"546c949d91a2dabf2088a6eba872f46c1c860f99":480,"dcfd1a1a9778b154f97dc56e4169d2dc494f8c29":688,"950dac7a7ebea2f3b7ab80af69ae096be18feded":57,"fb3a15df6d2147283d3a46513e0773353d28498e":26,"4d2c55111f77d4a2b3b83e5802882a45dc7b10ef":37,"d1ad36a8ffc88971bedebbacc650827e3672f143":132,"da6d0c6c80842d47c214796d44123dd2e6bbd48d":115,"770622d5911df1393d33524c891a26d78a480108":178,"51af0dd4ba0b8105897e7ff88e4b6767514a9539":13,"75ff99ff178e4755d369f432892586606a39cfdd":215,"ca5a93cdb7c387bb0db867355adf3ac9c8915241":87,"2dc41f117449bfa9f12ba737d7bfc16d21de2469":67,"8ba18b2d84443111e8446add69b9be72992bb068":23,"fad46fbec8cc7083ee13567a95360b2cf58621fd":452,"d4eb6e68e6b297a6627f77b84e3bf76c2042a030":121,"e3aac09ae8bd7bcc005d2fe960b793420136996f":141,"ef232d926d9f428ca82320fe2cc9479419f0592b":75,"b7dcca5b4646a354e99e1c01d0ac636f39d7d848":112,"99b4898c6f025e2fd960af7269b09c3afca6caf1":8,"2dbf3a1af58883d727dd8eac32bf8a4212eb982b":727,"e548d7dcf3ec86a531d0869ee0b7b272b38ea4bd":275,"e42e8a12d202ee00a9316d88a486301c8ff013c6":35,"1a351cbfcf761c291c94737835331f6f61719f7e":55,"603f771a24ad5d4d9f0b749f7239c27242673535":46,"78c6931d10324d13ed19b5b43e33a4a0deeb059a":54,"f30c82d6fc1a4f5ec6ea92c07d0a3f8250ce1a73":5,"640913adf41cf1543351bad31e8e48a966f6d72f":21,"5ee3351e3736285285e35c653fff8d1ef917e382":125,"f576f9c6931d3d9e43c3308ed8153ca4c12a6789":830,"b593b04aba931466a3eb1d0ba5390dbcfab4855e":928,"7db65a27fb42eb5471f7d5a41625efbf6aee86a0":1927,"99225733c88b1b6f0b727044144637a1f7e54268":178,"45a2c7874af052621cce5d6b879bf6778bbaafda":554,"b547aad1da0d7b9affbc1a4ea1355d026ae8b414":418,"56c9f3a2e5d4876a6d2bdc6a41118d8abe112506":278,"7fbc69df8e991d102935b907bee41e7adf06f5bb":766,"c2e9eb5493a819b70f1f0efcfe26d864fd24d335":842,"aedcbe529a65096520cdeb0891f396c2b5402112":497,"4227661bc395c5df9ff2f407d6b495242d749a1f":255,"8eab389a8cd91b28ebff9604636b3861ca899767":629,"c3de2aeb2a27901aea41c061a8718d9cfa601d05":2348,"607c1f0147abb9ba66fd4377cc2c66ed9af14edf":4224,"b120b2ddc9159c512bf1463b908cac60ad23d40d":3,"66bfc8bde9464941c9febbc333c742ade5a21341":3,"69a402aa429b620c8666e22c6b58cd584e6cbc74":375,"d1692b2ee4b33325f8ddfcc5d2175978824f2c82":291,"32916d3a4ddd9f9536129a06356ab145f16264fe":3824,"e6bd1e5be9cf5ac0b9f16e91e059957bee18fe8e":182,"e946a89a68c93b908dd17adcdfd328cb6928d77f":38,"4f5cb252577dc86626c3873edc0c69eb397f0267":541,"b3f938b586608a8c25f3d98d704d54fbd774b911":699,"e567e41373be62661aab76f0f70bd997c96e4b56":614,"eef380676f3263a6b2e75c155e5640c33ad6ecbd":526,"32e9a7cdbb5a739f7e1fb64a4ebf5c1d5055ba9e":4,"9aa47fad0a1535d806505d6e8a9ba6d62f694db4":294,"a8f4729ec8007f8b6e7ce9a1b9392b34fea58af6":72,"3dc8cd7b9d8dd48a5a641bfc1fc7cadb964a1e75":1114,"0abb0d65f69c3185e8594a78aabbb1a742947a33":281,"057b40c22cafe75f698eac22a75d8325c11c48c9":103,"97798675732b0bf34eab7d894643e9be0f200694":53,"f9de2cd146d52e3695c606ef7e6d77d40a4292a3":679,"42f52c96aa5de2a7a4ab87607ad8a03f7f3eb022":397,"e930ed54bf1d9d03be1cf8b7ab7e1a9e0d10cd47":1068,"9bc19b45849e96870fc157ff5e55bc060f113da1":746,"d9b9dc135cdc2e6da3d7d476e4cf464805d34272":46,"f48e396e47a4614ea8522af8f0bce34a0abd89dd":20,"0d7406b7f445bcf2a288a50f0336fd24c4a10cdb":12,"ada15719b65080d092f40a26a531aa8fd0150750":6,"993a462ac587328eae52ffe447796b03c3ea8d49":39,"248c2feae8b07cabdd39bb147666846017a4933d":282,"d7ecafc64745fc4e6a6fb6698ac5e625c867cb44":10,"33ff3f798e79e446329f6b8195057e041eecf7dc":6,"c5c3931b3f6ca53114d8da052e9fb6d943a86cec":32,"bd2c3feeac2f4fdc693e48d2bb7bc5bbcd946286":51,"53c658c2cabd5d712cd4d3f953fa0aa470bccc4a":27,"f5fac8b2a432239f27b153db72469eb1b7d08e70":32,"ba6286adac9fc184519530da5c9772118708d3fd":27,"2c27a2e938f51ab7d89e8edb661bb40a1854fe74":29,"b87ec9b1b599215030918d63edb44644509968d4":32,"457a0ad0c3a6c25a6f7196db8269f26993a31224":5,"aa356ec654a1f6fa2e736f1269a412ef5422069b":35,"5d6861862d50b0b38b7de61fd937f524e32907f4":145,"cb7912e068028bab77dadb9ca36f150e669463b7":1216,"cef11fc1c16fd1afafd56cfe923cd7a4664acd8a":69,"89242685e2b568b64ad3bbeb0443039050b96e83":5845,"39cb7c9120910a680220d862b3c8b984d702b16a":1313,"a132489a53736a6db4c7b54b02643dab48fd2fe6":3,"954cb694213cf4a559fbc6edb7217128de748b52":7607,"35c99af00bc7ff951abc38f02c49db0183098df3":1352,"e2fcca10a98f61e900878317857cf8eda0d72663":7879,"a481f06567851123750e27ab89dc286565fa6836":1857,"8c67ba0a0206b543bb41ab2649884a861332fa28":7201,"eef0d85f2ab5c0bf7ca010f75a3fc4f26577ad1b":2056,"dd829eda14852bc9928126c59e0ff9dff5e4425b":7098,"5858b36ba456da73d45f6639a591dc96c1d8b50b":1333,"4cd899d7a6e7bd8e034ec055bcf4baebbef43964":12430,"2d34d9f36ca1e073719233771f02cfd1d115cef1":1876,"490395ac3921a56847c862ca886c26e10eb1e575":1081,"c9abc4f934cf2adba0233aa24b725489fa69a7c1":7028,"7d6eb47f7032e8aa3b95519d2b0deaeb5583a011":10681,"b6dbda728da1d8eb6195cd8a132a5d98d537629e":2,"22db21b93e8d90830bb7cfe1b7aa46155c8fc37d":168,"21ab53c7eba39055e344be4c3cf4058564180cee":3,"799a20de33f2a993ba8867ff908eecd122244140":131976,"424fac9327c9bc8a61ed9c4aa8fa5e8fc7170a6f":2153,"7796da8b80c0ced374b970c59d7b0e81f2ac650a":94,"ecd246a51120e70bfc12e3fa61894597ba080f5a":283,"df7dcbd82d3fcdd3780285c821928cae47c95675":655,"f8b01870332c77e55e1f4f5766650f1f6e9f7e9e":1239,"fe194fc1e5a30b4f17aaf8b4ec323ee22b284a4f":1239,"995fcd3e731644ffc8596b20b770b67e247051c5":1776,"765c1fe1c1d8a3540501f1a2d1e2ee833b84fcb0":593,"277da06ab1f6988bfbcff0fab4225642385924ee":1284,"fb77f81c972bc2239d4ce827e65a1ce537eb61e9":1391,"61b01cbda6bf915bc02af8693f7a056c5326b7a4":1195,"aed0f923950e9553f6e4f0b28f4062c66faa998b":853,"56f9298c98d117ab6ae2b02871a1efa87b87c235":2,"e002bcb48720058ab6daa0077aa63371c2f0e09e":3,"85da7668fcb03c8bf599c38c25d24fff5e7e131a":256,"1a12848577e7d295d3567861f6da2b7d62b493b0":368,"c2bfee4eeba0295bc7b021724558f14fdc459ccb":2386,"d92d374676a96c397f0407feb5dda3dbbc09e4d6":404,"2702ebc06f020b1f013038dbdcdd8f5c104a0d17":404,"6d6ac5bf31bae29d7e2ec5ddd5ac5e2290462ef3":3948,"10712d3cde59a2eeae1ea652778307e833207c64":1425,"c237b8482ee2915fc077de091185cfc061301e07":55,"5d1dcb309035651fd7729ca416af880f1b43e3c3":2,"efcb64fee9c00ff2352a5f64e10ca2f1c1e9050b":163,"cf8a3e44567a4fec84cd4007d336cb256c1680fc":7,"e11fcad774d4cbefbe1f18360f5784246fe2cf9d":11,"3c2bd22a15e0d00cfb404f25544b13c6180a3ac9":3,"2f077684e09efbd4e75736997a6743687ed70194":12,"136039f6bfdd93bf208d3a8c6805a15c1879c7d1":327,"44e51afb65f7bbc73f365d01fdbb5946d026f9fc":52,"fe44f26ba5ebbce6413f8d65a905637250fcf584":593,"28e0bdf06aab2af70f7b413cf58e06adaafd3d57":3,"0bcebf1148bf131c95a51f94aac4fd24617a88f1":17,"987f0671f4e2a36b12e8926f020cd31e708da3ab":56,"0f51cd7f30c1d4bdee665d85b7ffec15c2e7b3a4":160,"d5c38fbb5e6dcae9fec35bbd6aa6e98374f33fef":32,"829c955e663499d9f47c895cd83a1ddb7709226c":201,"8be5845456162e49418dbf26d2124e397e462238":23,"3072922b5117c21bc3c8eae13e27f6cb277c4fb8":98,"dd153bdc5ef5e6d569a322e5d6bc3a258569bab0":15,"3dca9f47dda76722b03c11b97666dfa81193473f":20,"7509cc98d6a89d836b351dad2aee930b06b9b456":873,"488c0612f2b125007fc38bcb4f81dcc7f503349d":399,"7e04fd7ef4d37b06fd558bddf70e3ee05a6794e7":209,"1f4ffa2cca4de87918d5a5ca69e78a777610a63e":2525,"7936ea789effd2b14f2f3080bc3ef2ad00d129d1":255,"fdbfb86b08674a0f7040d15116c8da85a2d54137":92,"43aaf3bc3090ddfdfb60063dbf821f55bf8107f7":10,"e6b81f0d271edc7df25c6c32b13bc912a817124e":31,"c9aebdca37aa223b04216b6acb90d55a65b847fa":51,"b0c8d9a99bdd0ea94f706a7d1b5355f69010c8a6":1870,"d839b3e1b56ce2c6f41e50989949fece115f158e":729,"6fa699dce4b322e4f025c0f73eee485e9fe244ee":2203,"2f6b7708dcd7f855b014b4cc0d552ff88bf1bacd":22,"fad45d1bb71de38cbf1bf5e2bc4585a872606fbe":360,"e076ee3ca4bc549c0b96bb4f3fb23fa9e6e4d0a3":201,"00c993e88d0cea6f8fbc47b8a2640dab974a8e7d":24,"feb9e61c23307e0f3ae92ecf50447fe6980f33f0":41,"a62e82b31f4bc27b5682000ff75d4361e236b22b":58,"32a144332d0e41646387b5fba7d4c17fa4bfe970":79,"ecb05f30fd3a92f235ceaf9d8ee0927c1ef6535a":538,"8fb30b4efae1aacfc2cbaf9f8b5c52d5020cd15a":18,"a02d8ef79acad0283e644cea05726bb15915c7f1":33,"ecb7c45a7b8c061d930171a099cfcc45aa3ed40c":10,"5c242c1c3b5b26de62a19213b12ad047517d86fe":195,"3c735a6390303a709ee6ee8045a3ec146b1e1b8b":13,"08b0ca853461f905823345b3dc8a64bfb01c768a":66,"7e6e941fc914c85541572c5f9b96720a824c28d4":20,"3c36a0d1856dad6eebb02672f8841bb253837e5d":22,"09c34dacca05de67aa1956f8bd5c59b4b683c4ce":24,"bebe102832c6538deac0b7ad2f1269ecf14faef0":859,"aeb180413f1a113947f6c573efd901a781a93fcd":899,"230648f89493a0b55b21562ce19b9dd7d2e5ce1f":157,"431b714f89ee91e50ba24402dcf911449d29b762":2050,"f3fe1aa14f78864ab070763fb9ba77a8a80bfb3d":729,"46230adc4053f0c898880fb1ea9d6d271a907c15":642,"299d40aaad15dc8c978435e946af8ec76a43e915":173,"cf5bcd006202b861688a128306ca01de768f763c":892,"d08c7896b23a15bdb0c543b8b9bef6b82a4739c1":2333,"7d57cd7dae6a8b089bb28a805f3a90046f5b6504":673,"add5b003886e30309fadf0559f25d800d2645b10":1,"c879889cc45ec80cfbcf1af94c68819d5307767a":11,"f71db5415f93945ee88e2f60933ba6a86c138a2c":201,"48f0893919abdda79e00409c27d45f33de6f73d0":41,"a7260891f7764e6666d98baabcc0b2e21489d94e":20,"2a0652974ce1d50f695a0d447ace3444bdd60629":74,"dd0c32e47d9f43d3953ffbbabdeadd0e45204e4f":98,"aef12d84b06ae21daa560ecece7e3f130171ae0f":188,"a23e21830720771a16c7cd029f46ef1d3ecee265":266,"8003c54631d084676b15f61593963d7dab867b48":135,"aadfb52ac864e52db502a69ec3a2388207469877":2101,"231575d1b7c2ac7a8413a2c84162690656c77123":955,"189da5e563f26ee1ffdb8f5bf1195a2e5c2c5e4a":2482,"fd2abb8bbb19156e17841cf0f53ad7c816e1c0c4":7,"fab6a55b467599b4f6431684717c371d90abb610":447,"d4a5517449b90446508499c4f1dd24531ac79c1a":57,"c1c0a6594de8fbd903363f0fb92240d442263b7d":1955,"1d950c35a5bd531a1c51ccf838e0d657f1225478":12,"49add4fc871be1f1c9e7fd5263d9c6cb5ba0e47e":950,"17ae0028f37e600fe857cf72e8fa6302ac1aaef4":131,"792a0ca197edc631dd6fcc7fafdb377d69f768dc":74,"fb35fe68850afa695de3f857952542db4ead500e":817,"45dcc74fe689a2c99ba5629ea244ce8bab86ca87":86,"fd1af4e2f60bded6b2fb8fccce4ac4c2d1d1f8ea":4,"349e2409cca20b21413a0eadfca2806951cb9f98":1324,"8b1083114ce76195cb17fa8a8d799e1ee659490d":42,"ecd35a3887a4260ed51c519e878008b1d2ee215a":159,"b90ff3626d988023d4956c513295e896a6dc6e7f":141,"291b624762c13a9966b87f2d36a75d3c9b70c3e3":2487,"e749045aebd5f6c17e02d460239ec9a58ca7dfb7":245,"ffcaf0b2bf054b74807b3406df7aedd6fd6c73c0":109,"2c1938b4335745251c453c0a5732f9c2d9639aa0":323,"865ed9158f14374111e611fce0d1ea7ee6f58233":40,"f04279df2b5763ccc88b7adeaddb44ae79212e55":38,"68016810e5973c53fd6ee49ea9fa4d9943a89fe1":95,"039726116724e560869984a348b5dc777f1f2586":1620,"5f91fe01a91961410ed17ba5538e8844f94b688c":37,"bbec205623dfcdc39bdcd80150e204170774570c":3,"c791c8c8954febbf3630c6ca5a086117eafb1fe1":290,"783c4aef29d4858c329a9d18f3df1cddd4102e5b":226,"ba7700cd261eecdfe5eeae92fd1cb9dcc35c5066":65,"33a14f6b4ef40ba0b2f96f86433d311d881a23de":18,"1ee5c5edaa424607f4da2ae35aac148c0424d9d4":23,"7041e5cb828b9ad09fd359c9cc674d4860bcd25a":423,"1f00db952fa7a751c9152f3ebfd6c4fcce139d73":57,"c4cefd907f722017bb3ce58069e5c415c8c432bc":10,"e21d97d4ab286ce573605656ea4f34f4b7f907bd":1036,"f094ba6284b4325e9303cd054333f3e60681195d":20,"f93e4b2973a27feaa62f0f7334beb2427ef69838":7,"0cfc9940588328d81cd5ce9a53883a93100756c2":490,"8c6ab4b4b1001e5c1b4d0246aea819e66d45716c":221,"69336c4419aea9570d74b88fb44fa38adeb264aa":149,"43efb11df2c2effe2838460a702d96a5445debe0":534,"94cad2acf6f8db0f436606c3f3af69bdf3320747":119,"eeb974a3ce4a3c96dd245d1a309da22cc89558c7":78,"cc11d8720db52a4454a983992d8703e27e547f9d":32,"0b2bb716890c91b347b90b9af00ed5334c5582ee":44,"aec1186f89e1ef7451e2c2ca0d0752ec277be314":2176,"2325aeedb01bf8dd94f742451dffcb70946df9cc":21,"f40bc45f20e4aaf77a60a10aba298517ffff3a57":61,"cd15d61d5db0827098459beb5efdeeec6662fd26":66,"509d0ed415976a6947be9c39f2fb24851cfd3939":81,"921143850345702b2de12068bf40117c18285cbe":2066,"5bcd6342f18c99dccd9bcd1922b7b2a6cdb9452f":611,"0baf7be165ce21679faf8ff01c90825ef7c4ef2d":82,"8f531ed07fd7100882ff8b8fcba81eac52ae2ea1":505,"35af89803de133c45dedebc26d0bb72bf3cc97a9":113,"2b550132063a7aedfb9729cfc1f8066d1c434272":148,"ef5c9ab17a56f37fff69ae59373993df7a66c075":15,"aab9db4a2bbaf32ca866070061c17fb6f4961df7":1474,"9634bf071b05b7bb7690be7e9e48d8e84b45b1a7":1876,"a257d0bdca8e4c8aa7a437ec855ba0ec83f074cb":12,"e9b765ac839937102d2b3bb6c2421b1a7cdc7c09":108,"b561a6e5917759a8a0d8fdcd13f8021c4e43af2e":11,"ca60a946ded9a90c713a1ed0bae5e39115680c03":3147,"6572e81376d184ab551dad376c69a4b1a99b01ec":2525,"2e0fb1674d3db7d48a459ea98032a4e543d0d626":11,"3808280bc5c131de588327b913a92434f9548f27":306,"7c6516700c607f9109773752257b898c8a19c38b":1,"f0a03b79bc744a54e7d7a77758c6c034dc87d234":31,"6e605578d373a7428c9c67fb8f376a2215744055":1354,"f6c00730f736132cc67be18887ca293c2662340d":6,"e8ab42ee09863474f4563a4a829a2fc0c7f48118":1877,"1d9cdaee843050ba9ab34aa4dd4a9d55a688495d":3,"1aba45c11d46baeada2b8fa9c6926ed5c693c3ee":3,"5f44eb6fb151162beadde99b14d786c7edeef2de":412,"717bab2100804262570ba675d886610f596055d2":145,"ae91752f494844dc340ecc25cb39c19345abcbca":1282,"a3e8b63ceb17560d6ce2710e6c7a054e96f30df2":534,"2de295b0d1cad747fef3f9a3a49900da54169690":9,"dcdc0a8455b01953505dbfe87f00098ee1dd0e63":20,"1773fc190f53111632c6043fcb57a829633cded3":18,"892c31babfef0b248e0cf5128cdda4682a89b115":18,"d40705b8255fc81dfbde83c06b5dbee4a192313c":1,"9fc995ed108459947be6fbeb937cc5fb1fa1591e":3,"9da1f6c485b87569d193c4dab1e11a3e30200aa5":29,"25f9ca6764f3d3e50976bdb4476fa209809a44e2":7,"46f9f0c505466d94002daad5d817aa04cb838265":4,"7c77b1bee0adbb4b92f053791ef24a7b5583d874":1324,"03695ccc35509f35b0787ec6a2d3678de12f7631":2157,"d5e808104af6be447b333fab607b7b0acfe15941":3311,"a78de1afd13bc12eeaa7939c371d1c31a891e00a":162,"310e82d4f862c4b7c846b2aea407ca35d49487b1":2040,"9e661e9c3a976c3d09c15541b54eecc876141b1d":244,"fa5822356990f92c6683f9ff39db4f6b16b4b1bc":1146,"94728a4ba943c57f0477d9527bb4505f2c8816fd":43,"8b370c6640250ef29577d2315045877d9b07e1da":93,"796d2f44066f63289d920a3b777665a8e990bb5a":27,"4e2bd11b46d061c270c20f5a440166509e8d786b":109,"c1e1eb64209ff475e31c5bd3f04bbf9201f51615":270,"0b54e90b60948de695d522bce14fe56e12f9c85e":33,"e77235e4c8388f5e62604588b477bb8c166e04ec":38,"3f8cc8c9e572a29ca066ac7551bea816625dd557":123,"05a3c6debac404ff1fbeb87dc514254c6994fe87":523,"2f6675620530f78d24e8cc5714fd71e9a7de3e18":327,"2a549a169541eb51e50092e41b5160a07cf08806":92,"b4b317fd361fd32f6b64052f07042d86d2903263":91,"d374bbe6ba5bf12e2a1b4f37d80964d1b07f525b":531,"0cff347094dc60da710c993d2877a508aba5aeef":41,"c26c9caf4a971852045ad0acbfb9ef539e8294bd":403,"28f5c68c19d9b7da9f1be5503f0a99338f3c0aed":5,"7104a3345e98f82c38548bf11c4717b86058a0a7":33,"c4d9758e1e388d97ee9fe1a6c09f34500d369343":32,"05bc0a32ae08b4c4f7d26bba647bfd293ec654cd":45,"9a6abdbd03157fa00a042a38204aa74b49311ddf":45,"441fdb801c8e0433a734bad9bd67b31b59ac7bea":45,"f7fb2fb353fdc47d3de783adf4eda16ff302c497":102,"6fbec4f1edf484e773c9804960d221185f4a210f":15,"bfa98de9b4c263463ba8c742adca9f273eb503a8":15,"0d3c27528daeb3de0a41b37abf21f0f9d06b12f5":15,"55cae3219032491f4692b5fcc7ff4bfabc3c94c3":736,"1dcf477b11cc176173f5fcee146f324da5a33d5b":102,"16b4526d4e401b1cc720005708d9c6288c06f64b":802,"054a9afb1f934a81651b8755496c7c5eab75afea":108,"f8f029b32b5394df9d5f1edc6e0a6241ea3da03f":108,"24011f20b1b64c2ede9396938e8003de7b28dee5":108,"8ad8ecc28a51be4b5ccc341faa96740719c0a650":142,"0b7a01b65c2f3c66dfc76069cd12527feed4ada1":49,"29652413fda1507572d78e38ee826c5ddf5afa94":19,"9646b3ef27142cdab67432e7a676cee0a420331f":45,"72844a9aa03f4444ecd754bb6d25cfbebc0f900c":494,"b5f695a32bcd7744d15f599218e7185a8c38bfbf":8,"a254aad0d71d6c13f2e12f3b3f2280e8c86aeb08":424,"f5f0b985fe4221a1657a5e6a67fada332721f552":403,"9cd039a3cb92450bc2168090933a9f5c7ec7e9d6":1215,"e230d70822b2042c7d345e644f1649048b739905":10,"817e2f5022a7cace8ec0835df995879e8cd8cf60":1785,"444134de2baa3406c8ea09c7be6eff89e5a66134":851,"b1f297f06b7327af73bf77ed8e182251b66a18c7":353,"667d94cb41b2099b34b8caf3d619a9c990ddbfbf":250,"a4492d3012defdc9e371603be9f57c36e0767fca":457,"65b673120c4fed0a393a05a24b2eb190ab6f85c2":147,"c90f4a633aaeaa6839052e4fa01518508b2932ad":325,"feaab1de68671aa1f44d8b324f8004024741e71a":245,"6151609d799d04e767f2ad60ed2efe9838fb9227":758,"0f00f2ef2e9045b73c5059663e4ed0d5661ac679":57,"3e8690ba9421b58e000a4d28d167e97e1b81edf1":1817,"4dc6b0d2d5ec19d853439dc665a4fe8e382683c8":2225,"75f5b3808039936ae60dd026bc5e65539dc789c8":1984,"cd041b263d81c07ccf2e49eb1e2c4113b09f543f":1655,"2726a00b672cd87e2d99fb19e2e16dc1081f0c20":6,"425933f5e03f4d36be17e521987f47660dc8609a":122,"17f6a0ce253e26cb389c3b1b1612772e1685303b":711,"76940033e51903d33fd0a941147802bcc0a7d4cf":443,"b1440b84de48c329fe7feeb5724078e746c4e41b":264,"deaad1a45a4c0364898ceecb43fea67e1034110d":30,"ae7efc304f69d25a98d7fec083075088b951de06":18,"675b56bf3a18c8797e6cd3d770075ce31d6000eb":16,"0011b3db68dc6589b5df1e6e53e09ea336c665cb":9,"c4517c73f053af59a7171bb8489f21dd600fc44c":2209,"fc90be2c53540cfd998157b047ce72926a6152b6":21,"5bae9a625ed019edf83bffacc5c46ac66ed5b26c":51,"c9bffe959f7aa93a4bb9311f2352921afc9a5bb5":254,"6e46d38db7495e8cd3b8a9ff7ede06ac479b30c1":1650,"a19cb585507b4a3320dd03b2dc2d9fac10637cd2":1374,"b4f1eacef80854cb84191d64f8974efe78ef915e":63,"3139c8f42b1bf2e94507fcde610d7f441244293d":129},"excluded_import_commits":["2f5aab9b951b44f87ecf5280f51cc01df6696724","6128eae56005a6c096414cdff834bdd1a3aec7c9","86e2daa524def9613199a1291c3c81a94adaa0bb","a686f5cbbd27489fe0033cac680428071b1e4e84","f158107ad7c9b54793d03e898738f3e05fc4926b"]},"error":null},{"analyzer":"ai-release-velocity","pillar":"ai_provenance","status":"ok","tool_version":"prov-4","metrics":{"releases":99.0,"flagged_releases":18.0,"max_loc_per_day":1417585.9},"findings":[],"evidence":[{"kind":"release-burst","description":"v5.11.108 → v5.12.0: 11,730 lines in 1.68 days (6,978.6 lines/day)","ref":"v5.11.108...v5.12.0","url":"https://github.com/alexgreensh/token-optimizer/compare/v5.11.108...v5.12.0","weight":0.4},{"kind":"release-burst","description":"v5.12.4 → v5.13.0: 9,428 lines in 3.08 days (3,056.3 lines/day)","ref":"v5.12.4...v5.13.0","url":"https://github.com/alexgreensh/token-optimizer/compare/v5.12.4...v5.13.0","weight":0.4},{"kind":"release-burst","description":"v5.13.4 → v5.13.5: 51,118 lines in 2.92 days (17,503.6 lines/day)","ref":"v5.13.4...v5.13.5","url":"https://github.com/alexgreensh/token-optimizer/compare/v5.13.4...v5.13.5","weight":0.4},{"kind":"release-burst","description":"v5.13.12 → v5.13.13: 12,472 lines in 1.76 days (7,097.5 lines/day)","ref":"v5.13.12...v5.13.13","url":"https://github.com/alexgreensh/token-optimizer/compare/v5.13.12...v5.13.13","weight":0.4},{"kind":"release-burst","description":"v5.13.17 → v5.13.18: 6,365 lines in 0.66 days (9,623.2 lines/day)","ref":"v5.13.17...v5.13.18","url":"https://github.com/alexgreensh/token-optimizer/compare/v5.13.17...v5.13.18","weight":0.4},{"kind":"release-burst","description":"v5.13.28 → v5.13.29: 13,806 lines in 3.47 days (3,982.2 lines/day)","ref":"v5.13.28...v5.13.29","url":"https://github.com/alexgreensh/token-optimizer/compare/v5.13.28...v5.13.29","weight":0.4},{"kind":"release-burst","description":"v5.13.36 → v5.13.37: 59,630 lines in 2.35 days (25,361.0 lines/day)","ref":"v5.13.36...v5.13.37","url":"https://github.com/alexgreensh/token-optimizer/compare/v5.13.36...v5.13.37","weight":0.4},{"kind":"release-burst","description":"v5.13.38 → v5.13.39: 7,620 lines in 0.17 days (44,218.4 lines/day)","ref":"v5.13.38...v5.13.39","url":"https://github.com/alexgreensh/token-optimizer/compare/v5.13.38...v5.13.39","weight":0.4},{"kind":"release-burst","description":"v5.13.39 → v5.13.40: 10,865 lines in 0.56 days (19,505.0 lines/day)","ref":"v5.13.39...v5.13.40","url":"https://github.com/alexgreensh/token-optimizer/compare/v5.13.39...v5.13.40","weight":0.4},{"kind":"release-burst","description":"v5.13.49 → v5.13.50: 10,421 lines in 2.58 days (4,031.6 lines/day)","ref":"v5.13.49...v5.13.50","url":"https://github.com/alexgreensh/token-optimizer/compare/v5.13.49...v5.13.50","weight":0.4},{"kind":"release-burst","description":"v5.13.50 → v5.13.51: 12,254 lines in 1.11 days (11,047.8 lines/day)","ref":"v5.13.50...v5.13.51","url":"https://github.com/alexgreensh/token-optimizer/compare/v5.13.50...v5.13.51","weight":0.4},{"kind":"release-burst","description":"v5.13.58 → v5.13.59: 17,853 lines in 0.81 days (22,106.8 lines/day)","ref":"v5.13.58...v5.13.59","url":"https://github.com/alexgreensh/token-optimizer/compare/v5.13.58...v5.13.59","weight":0.4},{"kind":"release-burst","description":"v5.13.62 → v5.13.63: 25,312 lines in 0.67 days (38,004.9 lines/day)","ref":"v5.13.62...v5.13.63","url":"https://github.com/alexgreensh/token-optimizer/compare/v5.13.62...v5.13.63","weight":0.4},{"kind":"release-burst","description":"v5.13.63 → v5.13.64: 22,229 lines in 3.82 days (5,825.3 lines/day)","ref":"v5.13.63...v5.13.64","url":"https://github.com/alexgreensh/token-optimizer/compare/v5.13.63...v5.13.64","weight":0.4},{"kind":"release-burst","description":"v5.13.65 → v5.13.66: 220,136 lines in 0.16 days (1,417,585.9 lines/day)","ref":"v5.13.65...v5.13.66","url":"https://github.com/alexgreensh/token-optimizer/compare/v5.13.65...v5.13.66","weight":0.4},{"kind":"release-burst","description":"v5.13.66 → v5.13.67: 8,693 lines in 0.84 days (10,312.6 lines/day)","ref":"v5.13.66...v5.13.67","url":"https://github.com/alexgreensh/token-optimizer/compare/v5.13.66...v5.13.67","weight":0.4},{"kind":"release-burst","description":"v5.13.68 → v5.13.69: 26,386 lines in 1.83 days (14,446.1 lines/day)","ref":"v5.13.68...v5.13.69","url":"https://github.com/alexgreensh/token-optimizer/compare/v5.13.68...v5.13.69","weight":0.4},{"kind":"release-burst","description":"v5.13.69 → v5.13.70: 84,575 lines in 2.08 days (40,675.5 lines/day)","ref":"v5.13.69...v5.13.70","url":"https://github.com/alexgreensh/token-optimizer/compare/v5.13.69...v5.13.70","weight":0.4}],"data":{"releases":[{"from":"v5.11.85","to":"v5.11.86","loc":1215,"days":0.52,"loc_per_day":2322.5,"flagged":false},{"from":"v5.11.86","to":"v5.11.87","loc":4569,"days":1.34,"loc_per_day":3421.8,"flagged":false},{"from":"v5.11.87","to":"v5.11.88","loc":262,"days":1.11,"loc_per_day":235.7,"flagged":false},{"from":"v5.11.88","to":"v5.11.89","loc":987,"days":0.27,"loc_per_day":3619.4,"flagged":false},{"from":"v5.11.89","to":"v5.11.90","loc":14,"days":0.04,"loc_per_day":336.0,"flagged":false},{"from":"v5.11.90","to":"v5.11.91","loc":2323,"days":0.17,"loc_per_day":14036.5,"flagged":false},{"from":"v5.11.91","to":"v5.11.92","loc":415,"days":0.04,"loc_per_day":9960.0,"flagged":false},{"from":"v5.11.92","to":"v5.11.93","loc":840,"days":0.09,"loc_per_day":9803.6,"flagged":false},{"from":"v5.11.93","to":"v5.11.94","loc":5147,"days":2.78,"loc_per_day":1851.4,"flagged":false},{"from":"v5.11.94","to":"v5.11.95","loc":3947,"days":0.6,"loc_per_day":6622.3,"flagged":false},{"from":"v5.11.95","to":"v5.11.96","loc":258,"days":0.13,"loc_per_day":1971.8,"flagged":false},{"from":"v5.11.96","to":"v5.11.97","loc":661,"days":0.28,"loc_per_day":2369.2,"flagged":false},{"from":"v5.11.97","to":"v5.11.98","loc":66,"days":0.04,"loc_per_day":1584.0,"flagged":false},{"from":"v5.11.98","to":"v5.11.99","loc":400,"days":1.18,"loc_per_day":339.3,"flagged":false},{"from":"v5.11.99","to":"v5.11.100","loc":626,"days":0.56,"loc_per_day":1109.4,"flagged":false},{"from":"v5.11.100","to":"v5.11.101","loc":303,"days":0.06,"loc_per_day":5136.2,"flagged":false},{"from":"v5.11.101","to":"v5.11.102","loc":105,"days":0.04,"loc_per_day":2520.0,"flagged":false},{"from":"v5.11.102","to":"v5.11.103","loc":55,"days":0.1,"loc_per_day":578.3,"flagged":false},{"from":"v5.11.103","to":"v5.11.104","loc":299,"days":0.07,"loc_per_day":4062.5,"flagged":false},{"from":"v5.11.104","to":"v5.11.105","loc":1281,"days":1.76,"loc_per_day":728.3,"flagged":false},{"from":"v5.11.105","to":"v5.11.106","loc":185,"days":2.96,"loc_per_day":62.4,"flagged":false},{"from":"v5.11.106","to":"v5.11.107","loc":294,"days":0.14,"loc_per_day":2089.8,"flagged":false},{"from":"v5.11.107","to":"v5.11.108","loc":579,"days":0.04,"loc_per_day":13896.0,"flagged":false},{"from":"v5.11.108","to":"v5.12.0","loc":11730,"days":1.68,"loc_per_day":6978.6,"flagged":true},{"from":"v5.12.0","to":"v5.12.1","loc":191,"days":0.13,"loc_per_day":1475.8,"flagged":false},{"from":"v5.12.1","to":"v5.12.3","loc":133,"days":0.07,"loc_per_day":1969.0,"flagged":false},{"from":"v5.12.3","to":"v5.12.4","loc":518,"days":0.32,"loc_per_day":1612.9,"flagged":false},{"from":"v5.12.4","to":"v5.13.0","loc":9428,"days":3.08,"loc_per_day":3056.3,"flagged":true},{"from":"v5.13.0","to":"v5.13.1","loc":3789,"days":0.94,"loc_per_day":4035.6,"flagged":false},{"from":"v5.13.1","to":"v5.13.2","loc":1094,"days":0.6,"loc_per_day":1812.5,"flagged":false},{"from":"v5.13.2","to":"v5.13.3","loc":168,"days":0.26,"loc_per_day":650.6,"flagged":false},{"from":"v5.13.3","to":"v5.13.4","loc":245,"days":0.1,"loc_per_day":2572.7,"flagged":false},{"from":"v5.13.4","to":"v5.13.5","loc":51118,"days":2.92,"loc_per_day":17503.6,"flagged":true},{"from":"v5.13.5","to":"v5.13.6","loc":5389,"days":1.88,"loc_per_day":2869.6,"flagged":false},{"from":"v5.13.6","to":"v5.13.7","loc":1005,"days":0.18,"loc_per_day":5533.9,"flagged":false},{"from":"v5.13.7","to":"v5.13.8","loc":2416,"days":0.35,"loc_per_day":6826.6,"flagged":false},{"from":"v5.13.8","to":"v5.13.9","loc":1037,"days":2.09,"loc_per_day":495.1,"flagged":false},{"from":"v5.13.9","to":"v5.13.10","loc":2619,"days":0.51,"loc_per_day":5182.7,"flagged":false},{"from":"v5.13.10","to":"v5.13.11","loc":110,"days":1.07,"loc_per_day":102.6,"flagged":false},{"from":"v5.13.11","to":"v5.13.12","loc":670,"days":3.01,"loc_per_day":222.5,"flagged":false},{"from":"v5.13.12","to":"v5.13.13","loc":12472,"days":1.76,"loc_per_day":7097.5,"flagged":true},{"from":"v5.13.13","to":"v5.13.14","loc":339,"days":0.12,"loc_per_day":2928.1,"flagged":false},{"from":"v5.13.14","to":"v5.13.15","loc":1410,"days":1.73,"loc_per_day":814.8,"flagged":false},{"from":"v5.13.15","to":"v5.13.16","loc":1353,"days":1.35,"loc_per_day":1003.1,"flagged":false},{"from":"v5.13.16","to":"v5.13.17","loc":2,"days":5.11,"loc_per_day":0.4,"flagged":false},{"from":"v5.13.17","to":"v5.13.18","loc":6365,"days":0.66,"loc_per_day":9623.2,"flagged":true},{"from":"v5.13.18","to":"v5.13.19","loc":294,"days":0.1,"loc_per_day":3035.6,"flagged":false},{"from":"v5.13.19","to":"v5.13.20","loc":477,"days":0.14,"loc_per_day":3349.8,"flagged":false},{"from":"v5.13.20","to":"v5.13.21","loc":849,"days":0.07,"loc_per_day":11915.8,"flagged":false},{"from":"v5.13.21","to":"v5.13.22","loc":0,"days":1.04,"loc_per_day":0.0,"flagged":false},{"from":"v5.13.22","to":"v5.13.23","loc":714,"days":0.27,"loc_per_day":2612.1,"flagged":false},{"from":"v5.13.23","to":"v5.13.24","loc":837,"days":0.07,"loc_per_day":11180.7,"flagged":false},{"from":"v5.13.24","to":"v5.13.25","loc":1960,"days":1.99,"loc_per_day":985.5,"flagged":false},{"from":"v5.13.25","to":"v5.13.26","loc":652,"days":0.15,"loc_per_day":4392.8,"flagged":false},{"from":"v5.13.26","to":"v5.13.27","loc":3,"days":1.84,"loc_per_day":1.6,"flagged":false},{"from":"v5.13.27","to":"v5.13.28","loc":3,"days":1.0,"loc_per_day":3.0,"flagged":false},{"from":"v5.13.28","to":"v5.13.29","loc":13806,"days":3.47,"loc_per_day":3982.2,"flagged":true},{"from":"v5.13.29","to":"v5.13.30","loc":171,"days":0.12,"loc_per_day":1390.1,"flagged":false},{"from":"v5.13.30","to":"v5.13.31","loc":74,"days":0.06,"loc_per_day":1186.0,"flagged":false},{"from":"v5.13.31","to":"v5.13.32","loc":557,"days":0.37,"loc_per_day":1513.2,"flagged":false},{"from":"v5.13.32","to":"v5.13.33","loc":176,"days":0.49,"loc_per_day":355.8,"flagged":false},{"from":"v5.13.33","to":"v5.13.34","loc":491,"days":0.08,"loc_per_day":6308.2,"flagged":false},{"from":"v5.13.34","to":"v5.13.35","loc":1186,"days":0.7,"loc_per_day":1692.1,"flagged":false},{"from":"v5.13.35","to":"v5.13.36","loc":3,"days":2.99,"loc_per_day":1.0,"flagged":false},{"from":"v5.13.36","to":"v5.13.37","loc":59630,"days":2.35,"loc_per_day":25361.0,"flagged":true},{"from":"v5.13.37","to":"v5.13.38","loc":399,"days":1.95,"loc_per_day":204.8,"flagged":false},{"from":"v5.13.38","to":"v5.13.39","loc":7620,"days":0.17,"loc_per_day":44218.4,"flagged":true},{"from":"v5.13.39","to":"v5.13.40","loc":10865,"days":0.56,"loc_per_day":19505.0,"flagged":true},{"from":"v5.13.40","to":"v5.13.41","loc":412,"days":0.06,"loc_per_day":7065.7,"flagged":false},{"from":"v5.13.41","to":"v5.13.42","loc":28,"days":0.19,"loc_per_day":149.8,"flagged":false},{"from":"v5.13.42","to":"v5.13.43","loc":3337,"days":0.11,"loc_per_day":30799.8,"flagged":false},{"from":"v5.13.43","to":"v5.13.44","loc":3,"days":0.55,"loc_per_day":5.4,"flagged":false},{"from":"v5.13.44","to":"v5.13.45","loc":4082,"days":0.93,"loc_per_day":4411.4,"flagged":false},{"from":"v5.13.45","to":"v5.13.46","loc":3085,"days":0.13,"loc_per_day":23965.5,"flagged":false},{"from":"v5.13.46","to":"v5.13.47","loc":479,"days":0.93,"loc_per_day":517.3,"flagged":false},{"from":"v5.13.47","to":"v5.13.48","loc":647,"days":0.18,"loc_per_day":3607.7,"flagged":false},{"from":"v5.13.48","to":"v5.13.49","loc":437,"days":0.28,"loc_per_day":1543.9,"flagged":false},{"from":"v5.13.49","to":"v5.13.50","loc":10421,"days":2.58,"loc_per_day":4031.6,"flagged":true},{"from":"v5.13.50","to":"v5.13.51","loc":12254,"days":1.11,"loc_per_day":11047.8,"flagged":true},{"from":"v5.13.51","to":"v5.13.52","loc":394,"days":0.14,"loc_per_day":2755.7,"flagged":false},{"from":"v5.13.52","to":"v5.13.53","loc":397,"days":0.06,"loc_per_day":7162.4,"flagged":false},{"from":"v5.13.53","to":"v5.13.54","loc":706,"days":0.59,"loc_per_day":1189.0,"flagged":false},{"from":"v5.13.54","to":"v5.13.55","loc":389,"days":0.29,"loc_per_day":1345.1,"flagged":false},{"from":"v5.13.55","to":"v5.13.56","loc":179,"days":0.15,"loc_per_day":1195.7,"flagged":false},{"from":"v5.13.56","to":"v5.13.57","loc":1529,"days":0.4,"loc_per_day":3826.6,"flagged":false},{"from":"v5.13.57","to":"v5.13.58","loc":3,"days":5.02,"loc_per_day":0.6,"flagged":false},{"from":"v5.13.58","to":"v5.13.59","loc":17853,"days":0.81,"loc_per_day":22106.8,"flagged":true},{"from":"v5.13.59","to":"v5.13.60","loc":889,"days":0.04,"loc_per_day":21336.0,"flagged":false},{"from":"v5.13.60","to":"v5.13.61","loc":3,"days":3.16,"loc_per_day":0.9,"flagged":false},{"from":"v5.13.61","to":"v5.13.62","loc":3,"days":1.0,"loc_per_day":3.0,"flagged":false},{"from":"v5.13.62","to":"v5.13.63","loc":25312,"days":0.67,"loc_per_day":38004.9,"flagged":true},{"from":"v5.13.63","to":"v5.13.64","loc":22229,"days":3.82,"loc_per_day":5825.3,"flagged":true},{"from":"v5.13.64","to":"v5.13.65","loc":94,"days":0.6,"loc_per_day":157.8,"flagged":false},{"from":"v5.13.65","to":"v5.13.66","loc":220136,"days":0.16,"loc_per_day":1417585.9,"flagged":true},{"from":"v5.13.66","to":"v5.13.67","loc":8693,"days":0.84,"loc_per_day":10312.6,"flagged":true},{"from":"v5.13.67","to":"v5.13.68","loc":56,"days":0.51,"loc_per_day":109.8,"flagged":false},{"from":"v5.13.68","to":"v5.13.69","loc":26386,"days":1.83,"loc_per_day":14446.1,"flagged":true},{"from":"v5.13.69","to":"v5.13.70","loc":84575,"days":2.08,"loc_per_day":40675.5,"flagged":true},{"from":"v5.13.70","to":"v5.13.71","loc":2724,"days":0.45,"loc_per_day":6073.6,"flagged":false}]},"error":null},{"analyzer":"ai-stylometry","pillar":"ai_provenance","status":"ok","tool_version":null,"metrics":{"lines_scanned":531087.0,"index":0.06,"count:narrated_steps":18.0,"per_kloc:narrated_steps":0.034,"files:narrated_steps":12.0,"count:placeholder":3.0,"per_kloc:placeholder":0.006,"files:placeholder":3.0,"count:emoji_in_code":16.0,"per_kloc:emoji_in_code":0.03,"files:emoji_in_code":8.0,"count:assistant_voice":0.0,"per_kloc:assistant_voice":0.0,"files:assistant_voice":0.0},"findings":[],"evidence":[{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: # Step 2: the gate, BEFORE any filesystem/daemon/settings work.","ref":"cowork/token-optimizer/hooks/posttooluse_runner.py:907","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/cowork/token-optimizer/hooks/posttooluse_runner.py#L907","weight":0.0},{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: # First, ensure we have data","ref":"cowork/token-optimizer/skills/fleet-auditor/scripts/fleet.py:2220","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/cowork/token-optimizer/skills/fleet-auditor/scripts/fleet.py#L2220","weight":0.0},{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: # Step 1: collect user-scope plugin keys.","ref":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/lifecycle.py:4541","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/cowork/token-optimizer/skills/token-optimizer/scripts/_measure/lifecycle.py#L4541","weight":0.0},{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: # Step 2: scan transcripts for evidence of actual use.","ref":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/lifecycle.py:4551","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/cowork/token-optimizer/skills/token-optimizer/scripts/_measure/lifecycle.py#L4551","weight":0.0},{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: # Step 3: intersect -- only plugins that are both installed (user","ref":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/lifecycle.py:4554","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/cowork/token-optimizer/skills/token-optimizer/scripts/_measure/lifecycle.py#L4554","weight":0.0},{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: # first, then the settings.json \"env\" block, like the other TOKEN_OPTIMIZER_*","ref":"cowork/token-optimizer/skills/token-optimizer/scripts/credential_patterns.py:223","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/cowork/token-optimizer/skills/token-optimizer/scripts/credential_patterns.py#L223","weight":0.0},{"kind":"stylometry:placeholder","description":"placeholder or demo-only phrasing: # measured categories. Phase 2 will replace with actual measurement.","ref":"cowork/token-optimizer/skills/token-optimizer/scripts/measure.py:6779","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/cowork/token-optimizer/skills/token-optimizer/scripts/measure.py#L6779","weight":0.0},{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: # Step 2: the gate, BEFORE any filesystem/daemon/settings work.","ref":"hooks/posttooluse_runner.py:907","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/hooks/posttooluse_runner.py#L907","weight":0.0}],"data":{},"error":null},{"analyzer":"sec-secrets","pillar":"security","status":"ok","tool_version":"gitleaks 8.30.1","metrics":{"secrets_current":1.0,"secrets_history":2.0,"secrets_nonprod":15.0,"secrets_low_confidence":3.0},"findings":[{"rule_id":"gitleaks/jwt","severity":"low","message":"Possible jwt secret in the current tree (test/docs/example file)","path":"pi/test/archive.test.mjs","line":23,"fingerprint":"pi/test/archive.test.mjs:jwt:23"},{"rule_id":"gitleaks/generic-api-key","severity":"low","message":"Possible generic-api-key secret in the current tree (test/docs/example file)","path":"pi/test/archive.test.mjs","line":9,"fingerprint":"pi/test/archive.test.mjs:generic-api-key:9"},{"rule_id":"gitleaks/generic-api-key","severity":"low","message":"Possible generic-api-key secret in the current tree (test/docs/example file)","path":"pi/test/checkpoint.test.mjs","line":18,"fingerprint":"pi/test/checkpoint.test.mjs:generic-api-key:18"},{"rule_id":"gitleaks/generic-api-key","severity":"low","message":"Possible generic-api-key secret in the current tree (test/docs/example file)","path":"tests/fixtures/post_run_classify/make_fixture.py","line":252,"fingerprint":"tests/fixtures/post_run_classify/make_fixture.py:generic-api-key:252"},{"rule_id":"gitleaks/generic-api-key","severity":"low","message":"Possible generic-api-key secret in the current tree (test/docs/example file)","path":"tests/fixtures/redaction_vectors.json","line":49,"fingerprint":"tests/fixtures/redaction_vectors.json:generic-api-key:49"},{"rule_id":"gitleaks/private-key","severity":"low","message":"Possible private-key secret in the current tree (test/docs/example file)","path":"tests/fixtures/redaction_vectors.json","line":6,"fingerprint":"tests/fixtures/redaction_vectors.json:private-key:6"},{"rule_id":"gitleaks/generic-api-key","severity":"low","message":"Possible generic-api-key secret in the current tree (test/docs/example file)","path":"tests/test_cursor_security_g1.py","line":236,"fingerprint":"tests/test_cursor_security_g1.py:generic-api-key:236"},{"rule_id":"gitleaks/generic-api-key","severity":"low","message":"Possible generic-api-key secret in the current tree (test/docs/example file)","path":"tests/test_credential_redaction_gating.py","line":75,"fingerprint":"tests/test_credential_redaction_gating.py:generic-api-key:75"},{"rule_id":"gitleaks/jwt","severity":"high","message":"Possible jwt secret in the current tree","path":"skills/token-optimizer/scripts/benchmark.py","line":889,"fingerprint":"skills/token-optimizer/scripts/benchmark.py:jwt:889"},{"rule_id":"gitleaks/generic-api-key","severity":"low","message":"Possible generic-api-key secret in the current tree","path":"skills/token-optimizer/scripts/benchmark.py","line":902,"fingerprint":"skills/token-optimizer/scripts/benchmark.py:generic-api-key:902"},{"rule_id":"gitleaks/generic-api-key","severity":"low","message":"Possible generic-api-key secret in the current tree (test/docs/example file)","path":"tests/test_posttooluse_bash_compress_hook.py","line":476,"fingerprint":"tests/test_posttooluse_bash_compress_hook.py:generic-api-key:476"},{"rule_id":"gitleaks/curl-auth-user","severity":"low","message":"Possible curl-auth-user secret in the current tree (test/docs/example file)","path":"tests/test_deterministic_candidates.py","line":990,"fingerprint":"tests/test_deterministic_candidates.py:curl-auth-user:990"},{"rule_id":"gitleaks/generic-api-key","severity":"low","message":"Possible generic-api-key secret in the current tree (test/docs/example file)","path":"tests/test_settings_backup.py","line":33,"fingerprint":"tests/test_settings_backup.py:generic-api-key:33"},{"rule_id":"gitleaks/generic-api-key","severity":"low","message":"Possible generic-api-key secret in the current tree (test/docs/example file)","path":"tests/test_transcript_backfill.py","line":27,"fingerprint":"tests/test_transcript_backfill.py:generic-api-key:27"},{"rule_id":"gitleaks/aws-access-token","severity":"low","message":"Possible aws-access-token secret in history (commit c1c0a6594d); removed from the current tree but still retrievable","path":"tests/fixtures/post_run_classify/make_fixture.py","line":249,"fingerprint":"c1c0a6594de8fbd903363f0fb92240d442263b7d:tests/fixtures/post_run_classify/make_fixture.py:aws-access-token:249"},{"rule_id":"gitleaks/slack-bot-token","severity":"low","message":"Possible slack-bot-token secret in history (commit 000310377e); removed from the current tree but still retrievable","path":"tests/fixtures/redaction_vectors.json","line":198,"fingerprint":"000310377ed3e8fdc699ccb9ecea7b78f6da5d56:tests/fixtures/redaction_vectors.json:slack-bot-token:198"},{"rule_id":"gitleaks/aws-access-token","severity":"low","message":"Possible aws-access-token secret in history (commit 4d6c608aa0); removed from the current tree but still retrievable","path":"tests/test_deterministic_candidates.py","line":373,"fingerprint":"4d6c608aa098d047f3ad13415a3b1680ce1ab235:tests/test_deterministic_candidates.py:aws-access-token:373"},{"rule_id":"gitleaks/jwt","severity":"medium","message":"Possible jwt secret in history (commit 1332f63573); removed from the current tree but still retrievable","path":"plugins/token-optimizer/skills/token-optimizer/scripts/benchmark.py","line":889,"fingerprint":"1332f63573e85256141958cd01479a34756df659:plugins/token-optimizer/skills/token-optimizer/scripts/benchmark.py:jwt:889"},{"rule_id":"gitleaks/generic-api-key","severity":"low","message":"Possible generic-api-key secret in history (commit 1332f63573); removed from the current tree but still retrievable","path":"plugins/token-optimizer/skills/token-optimizer/scripts/benchmark.py","line":902,"fingerprint":"1332f63573e85256141958cd01479a34756df659:plugins/token-optimizer/skills/token-optimizer/scripts/benchmark.py:generic-api-key:902"},{"rule_id":"gitleaks/jwt","severity":"medium","message":"Possible jwt secret in history (commit 2f5aab9b95); removed from the current tree but still retrievable","path":"cowork/token-optimizer/skills/token-optimizer/scripts/benchmark.py","line":889,"fingerprint":"2f5aab9b951b44f87ecf5280f51cc01df6696724:cowork/token-optimizer/skills/token-optimizer/scripts/benchmark.py:jwt:889"},{"rule_id":"gitleaks/generic-api-key","severity":"low","message":"Possible generic-api-key secret in history (commit 2f5aab9b95); removed from the current tree but still retrievable","path":"cowork/token-optimizer/skills/token-optimizer/scripts/benchmark.py","line":902,"fingerprint":"2f5aab9b951b44f87ecf5280f51cc01df6696724:cowork/token-optimizer/skills/token-optimizer/scripts/benchmark.py:generic-api-key:902"}],"evidence":[],"data":{},"error":null},{"analyzer":"sec-sast","pillar":"security","status":"ok","tool_version":"opengrep 1.33.1; rules f1d2b562b414","metrics":{"findings":1368.0,"findings_high":520.0,"findings_medium":848.0,"findings_low":0.0,"weighted_findings":653.8,"scanned_lines":552768.0,"parse_errors":12.0},"findings":[{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'Popen' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/hooks/run.py","line":724,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/hooks/run.py:724"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-tainted-env-args","severity":"high","message":"Detected subprocess function 'Popen' with user controlled data. A malicious actor could leverage this to perform command injection. You may consider using 'shlex.quote()'. [confidence medium]","path":"cowork/token-optimizer/hooks/run.py","line":724,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-tainted-env-args:cowork/token-optimizer/hooks/run.py:724"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/fleet-auditor/scripts/fleet.py","line":1331,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/fleet-auditor/scripts/fleet.py:1331"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/fleet-auditor/scripts/fleet.py","line":2388,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/fleet-auditor/scripts/fleet.py:2388"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-spawn-process-audit","severity":"high","message":"Found dynamic content when spawning a process. This is dangerous if external data can reach this function call because it allows a malicious actor to execute commands. Ensure no external data reaches here. [confidence low]","path":"cowork/token-optimizer/skills/fleet-auditor/scripts/fleet.py","line":3499,"fingerprint":"python.lang.security.audit.dangerous-spawn-process-audit:cowork/token-optimizer/skills/fleet-auditor/scripts/fleet.py:3499"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/fleet-auditor/scripts/shared.py","line":297,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/fleet-auditor/scripts/shared.py:297"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/fleet-auditor/scripts/shared.py","line":300,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/fleet-auditor/scripts/shared.py:300"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/archive_void_codex.py","line":82,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/archive_void_codex.py:82"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/archive_void_evidence.py","line":94,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/archive_void_evidence.py:94"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/archive_void_evidence.py","line":116,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/archive_void_evidence.py:116"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/archive_void_evidence.py","line":143,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/archive_void_evidence.py:143"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/archive_void_evidence.py","line":165,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/archive_void_evidence.py:165"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/audit.py","line":3176,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/audit.py:3176"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/baseline_provenance.py","line":57,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/baseline_provenance.py:57"},{"rule_id":"opengrep/python.lang.security.use-defused-xml","severity":"high","message":"The Python documentation recommends using `defusedxml` instead of `xml` because the native Python `xml` library is vulnerable to XML External Entity (XXE) attacks. These attacks can leak confidential data and \"XML bombs\" can cause denial of service. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cache_policy.py","line":1519,"fingerprint":"python.lang.security.use-defused-xml:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cache_policy.py:1519"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/compression_fixture_void.py","line":24,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/compression_fixture_void.py:24"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/compression_fixture_void.py","line":29,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/compression_fixture_void.py:29"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/compression_fixture_void.py","line":138,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/compression_fixture_void.py:138"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/counted_orphans.py","line":18,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/counted_orphans.py:18"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/counted_pricing_v5.py","line":176,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/counted_pricing_v5.py:176"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/counted_subagents.py","line":239,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/counted_subagents.py:239"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/counted_subagents.py","line":245,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/counted_subagents.py:245"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/counted_subagents.py","line":251,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/counted_subagents.py:251"},{"rule_id":"opengrep/python.lang.security.use-defused-xml","severity":"high","message":"The Python documentation recommends using `defusedxml` instead of `xml` because the native Python `xml` library is vulnerable to XML External Entity (XXE) attacks. These attacks can leak confidential data and \"XML bombs\" can cause denial of service. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/daemon.py","line":3421,"fingerprint":"python.lang.security.use-defused-xml:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/daemon.py:3421"},{"rule_id":"opengrep/python.lang.security.use-defused-xml","severity":"high","message":"The Python documentation recommends using `defusedxml` instead of `xml` because the native Python `xml` library is vulnerable to XML External Entity (XXE) attacks. These attacks can leak confidential data and \"XML bombs\" can cause denial of service. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/daemon.py","line":4443,"fingerprint":"python.lang.security.use-defused-xml:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/daemon.py:4443"},{"rule_id":"opengrep/python.lang.security.use-defused-xml","severity":"high","message":"The Python documentation recommends using `defusedxml` instead of `xml` because the native Python `xml` library is vulnerable to XML External Entity (XXE) attacks. These attacks can leak confidential data and \"XML bombs\" can cause denial of service. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/daemon.py","line":6125,"fingerprint":"python.lang.security.use-defused-xml:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/daemon.py:6125"},{"rule_id":"opengrep/python.lang.security.use-defused-xml","severity":"high","message":"The Python documentation recommends using `defusedxml` instead of `xml` because the native Python `xml` library is vulnerable to XML External Entity (XXE) attacks. These attacks can leak confidential data and \"XML bombs\" can cause denial of service. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/daemon.py","line":6225,"fingerprint":"python.lang.security.use-defused-xml:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/daemon.py:6225"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py","line":2900,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py:2900"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py","line":2979,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py:2979"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py","line":3281,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py:3281"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py","line":3576,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py:3576"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py","line":3630,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py:3630"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard_history.py","line":54,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard_history.py:54"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard_history.py","line":64,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard_history.py:64"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/feature_health.py","line":117,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/feature_health.py:117"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/feature_health.py","line":229,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/feature_health.py:229"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/headline.py","line":55,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/headline.py:55"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/keepwarm_safety.py","line":107,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/keepwarm_safety.py:107"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/lean_resume_receivers.py","line":47,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/lean_resume_receivers.py:47"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/mod_compaction_booking.py","line":223,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/mod_compaction_booking.py:223"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/mod_compaction_booking.py","line":272,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/mod_compaction_booking.py:272"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/pricing.py","line":1564,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/pricing.py:1564"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/pricing.py","line":1624,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/pricing.py:1624"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":399,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:399"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":696,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:696"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":1362,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:1362"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":1363,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:1363"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":1803,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:1803"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":2206,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:2206"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":2218,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:2218"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":3423,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:3423"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":4375,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:4375"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":4496,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:4496"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":4503,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:4503"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":4509,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:4509"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":5192,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:5192"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":5926,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:5926"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":5932,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:5932"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/session_effect.py","line":318,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/session_effect.py:318"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/session_effect.py","line":327,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/session_effect.py:327"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/session_effect.py","line":328,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/session_effect.py:328"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/session_effect.py","line":336,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/session_effect.py:336"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/sessions.py","line":3378,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/sessions.py:3378"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/sessions.py","line":3418,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/sessions.py:3418"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/structural_value.py","line":48,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/structural_value.py:48"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/structural_value.py","line":49,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/structural_value.py:49"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py","line":167,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py:167"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py","line":169,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py:169"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py","line":171,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py:171"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py","line":172,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py:172"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py","line":180,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py:180"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py","line":183,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py:183"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py","line":286,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py:286"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":438,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:438"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":665,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:665"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":676,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:676"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":677,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:677"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":749,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:749"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":750,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:750"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":753,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:753"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":757,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:757"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":759,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:759"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":879,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:879"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":886,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:886"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":888,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:888"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":955,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:955"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":973,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:973"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":981,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:981"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":999,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:999"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":1498,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:1498"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":1582,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:1582"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":1665,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:1665"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":1747,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:1747"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":1883,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:1883"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/upgrade_drain_control.py","line":227,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/upgrade_drain_control.py:227"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/antigravity_doctor.py","line":98,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/antigravity_doctor.py:98"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-tainted-env-args","severity":"high","message":"Detected subprocess function 'run' with user controlled data. A malicious actor could leverage this to perform command injection. You may consider using 'shlex.quote()'. [confidence medium]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/antigravity_doctor.py","line":99,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-tainted-env-args:cowork/token-optimizer/skills/token-optimizer/scripts/antigravity_doctor.py:99"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'Popen' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/antigravity_doctor.py","line":464,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/antigravity_doctor.py:464"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/antigravity_state.py","line":196,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/antigravity_state.py:196"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/archive_result.py","line":638,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/archive_result.py:638"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/archive_verify.py","line":34,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/archive_verify.py:34"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/archive_verify.py","line":35,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/archive_verify.py:35"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/archive_verify.py","line":48,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/archive_verify.py:48"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/archive_verify.py","line":103,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/archive_verify.py:103"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/archive_verify.py","line":114,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/archive_verify.py:114"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/archive_verify.py","line":131,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/archive_verify.py:131"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/bash_compress.py","line":2233,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/bash_compress.py:2233"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/bash_compress.py","line":2288,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/bash_compress.py:2288"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codemap_index.py","line":410,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/codemap_index.py:410"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codemap_index.py","line":442,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/codemap_index.py:442"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codemap_index.py","line":576,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/codemap_index.py:576"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codemap_index.py","line":582,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/codemap_index.py:582"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codemap_index.py","line":629,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/codemap_index.py:629"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codex_command_compress.py","line":339,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/codex_command_compress.py:339"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'list2cmdline' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codex_install.py","line":84,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/codex_install.py:84"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'list2cmdline' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codex_install.py","line":388,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/codex_install.py:388"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codex_state.py","line":133,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/codex_state.py:133"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codex_state.py","line":149,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/codex_state.py:149"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codex_state.py","line":214,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/codex_state.py:214"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codex_state.py","line":380,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/codex_state.py:380"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codex_state.py","line":504,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/codex_state.py:504"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codex_state.py","line":597,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/codex_state.py:597"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/compression_log.py","line":187,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/compression_log.py:187"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/compression_log.py","line":212,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/compression_log.py:212"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'Popen' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/copilot_hook_bridge.py","line":81,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/copilot_hook_bridge.py:81"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/copilot_hook_bridge.py","line":253,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/copilot_hook_bridge.py:253"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-tainted-env-args","severity":"high","message":"Detected subprocess function 'run' with user controlled data. A malicious actor could leverage this to perform command injection. You may consider using 'shlex.quote()'. [confidence medium]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/copilot_hook_bridge.py","line":254,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-tainted-env-args:cowork/token-optimizer/skills/token-optimizer/scripts/copilot_hook_bridge.py:254"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/coverage_funnel.py","line":237,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/coverage_funnel.py:237"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/credential_patterns.py","line":774,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/credential_patterns.py:774"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/cursor_coach.py","line":165,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/cursor_coach.py:165"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/cursor_coach.py","line":169,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/cursor_coach.py:169"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/cursor_doctor.py","line":560,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/cursor_doctor.py:560"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'Popen' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/cursor_hook_bridge.py","line":86,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/cursor_hook_bridge.py:86"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-os-exec-audit","severity":"high","message":"Found dynamic content when spawning a process. This is dangerous if external data can reach this function call because it allows a malicious actor to execute commands. Ensure no external data reaches here. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/devin_compress.py","line":520,"fingerprint":"python.lang.security.audit.dangerous-os-exec-audit:cowork/token-optimizer/skills/token-optimizer/scripts/devin_compress.py:520"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'Popen' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/devin_compress.py","line":651,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/devin_compress.py:651"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/devin_doctor.py","line":176,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/devin_doctor.py:176"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/devin_doctor.py","line":270,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/devin_doctor.py:270"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/devin_doctor.py","line":271,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/devin_doctor.py:271"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/devin_doctor.py","line":302,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/devin_doctor.py:302"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/grok_doctor.py","line":446,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/grok_doctor.py:446"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'Popen' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/grok_hook_bridge.py","line":86,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/grok_hook_bridge.py:86"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/hermes_doctor.py","line":311,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/hermes_doctor.py:311"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/hermes_doctor.py","line":451,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/hermes_doctor.py:451"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/hermes_hook_bridge.py","line":173,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/hermes_hook_bridge.py:173"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/hermes_hook_bridge.py","line":336,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/hermes_hook_bridge.py:336"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/hermes_state.py","line":263,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/hermes_state.py:263"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/hermes_state.py","line":331,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/hermes_state.py:331"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/hermes_state.py","line":368,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/hermes_state.py:368"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'list2cmdline' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py","line":43,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py:43"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/session_activity.py","line":30,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/session_activity.py:30"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/session_activity.py","line":47,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/session_activity.py:47"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/session_activity.py","line":115,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/session_activity.py:115"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/session_activity.py","line":144,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/session_activity.py:144"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/session_store.py","line":230,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/session_store.py:230"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/session_store.py","line":316,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/session_store.py:316"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/session_store.py","line":370,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:cowork/token-optimizer/skills/token-optimizer/scripts/session_store.py:370"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'Popen' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/spawn_utils.py","line":98,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/spawn_utils.py:98"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'Popen' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/spawn_utils.py","line":112,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/spawn_utils.py:112"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'Popen' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/utf8_io.py","line":168,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:cowork/token-optimizer/skills/token-optimizer/scripts/utf8_io.py:168"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-tainted-env-args","severity":"high","message":"Detected subprocess function 'Popen' with user controlled data. A malicious actor could leverage this to perform command injection. You may consider using 'shlex.quote()'. [confidence medium]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/utf8_io.py","line":168,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-tainted-env-args:cowork/token-optimizer/skills/token-optimizer/scripts/utf8_io.py:168"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-os-exec-audit","severity":"high","message":"Found dynamic content when spawning a process. This is dangerous if external data can reach this function call because it allows a malicious actor to execute commands. Ensure no external data reaches here. [confidence low]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/utf8_io.py","line":185,"fingerprint":"python.lang.security.audit.dangerous-os-exec-audit:cowork/token-optimizer/skills/token-optimizer/scripts/utf8_io.py:185"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-os-exec-tainted-env-args","severity":"high","message":"Found user controlled content when spawning a process. This is dangerous because it allows a malicious actor to execute commands. [confidence medium]","path":"cowork/token-optimizer/skills/token-optimizer/scripts/utf8_io.py","line":185,"fingerprint":"python.lang.security.audit.dangerous-os-exec-tainted-env-args:cowork/token-optimizer/skills/token-optimizer/scripts/utf8_io.py:185"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'Popen' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"hooks/run.py","line":724,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:hooks/run.py:724"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-tainted-env-args","severity":"high","message":"Detected subprocess function 'Popen' with user controlled data. A malicious actor could leverage this to perform command injection. You may consider using 'shlex.quote()'. [confidence medium]","path":"hooks/run.py","line":724,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-tainted-env-args:hooks/run.py:724"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"packaging/npm/build.py","line":62,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:packaging/npm/build.py:62"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"packaging/npm/build.py","line":103,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:packaging/npm/build.py:103"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'Popen' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"plugins/token-optimizer/hooks/run.py","line":724,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:plugins/token-optimizer/hooks/run.py:724"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-tainted-env-args","severity":"high","message":"Detected subprocess function 'Popen' with user controlled data. A malicious actor could leverage this to perform command injection. You may consider using 'shlex.quote()'. [confidence medium]","path":"plugins/token-optimizer/hooks/run.py","line":724,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-tainted-env-args:plugins/token-optimizer/hooks/run.py:724"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/fleet-auditor/scripts/fleet.py","line":1331,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/fleet-auditor/scripts/fleet.py:1331"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/fleet-auditor/scripts/fleet.py","line":2388,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/fleet-auditor/scripts/fleet.py:2388"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-spawn-process-audit","severity":"high","message":"Found dynamic content when spawning a process. This is dangerous if external data can reach this function call because it allows a malicious actor to execute commands. Ensure no external data reaches here. [confidence low]","path":"plugins/token-optimizer/skills/fleet-auditor/scripts/fleet.py","line":3499,"fingerprint":"python.lang.security.audit.dangerous-spawn-process-audit:plugins/token-optimizer/skills/fleet-auditor/scripts/fleet.py:3499"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/fleet-auditor/scripts/shared.py","line":297,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/fleet-auditor/scripts/shared.py:297"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/fleet-auditor/scripts/shared.py","line":300,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/fleet-auditor/scripts/shared.py:300"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/archive_void_codex.py","line":82,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/archive_void_codex.py:82"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/archive_void_evidence.py","line":94,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/archive_void_evidence.py:94"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/archive_void_evidence.py","line":116,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/archive_void_evidence.py:116"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/archive_void_evidence.py","line":143,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/archive_void_evidence.py:143"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/archive_void_evidence.py","line":165,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/archive_void_evidence.py:165"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/audit.py","line":3176,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/audit.py:3176"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/baseline_provenance.py","line":57,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/baseline_provenance.py:57"},{"rule_id":"opengrep/python.lang.security.use-defused-xml","severity":"high","message":"The Python documentation recommends using `defusedxml` instead of `xml` because the native Python `xml` library is vulnerable to XML External Entity (XXE) attacks. These attacks can leak confidential data and \"XML bombs\" can cause denial of service. [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cache_policy.py","line":1519,"fingerprint":"python.lang.security.use-defused-xml:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cache_policy.py:1519"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/compression_fixture_void.py","line":24,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/compression_fixture_void.py:24"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/compression_fixture_void.py","line":29,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/compression_fixture_void.py:29"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/compression_fixture_void.py","line":138,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/compression_fixture_void.py:138"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/counted_orphans.py","line":18,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/counted_orphans.py:18"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/counted_pricing_v5.py","line":176,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/counted_pricing_v5.py:176"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/counted_subagents.py","line":239,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/counted_subagents.py:239"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/counted_subagents.py","line":245,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/counted_subagents.py:245"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/counted_subagents.py","line":251,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/counted_subagents.py:251"},{"rule_id":"opengrep/python.lang.security.use-defused-xml","severity":"high","message":"The Python documentation recommends using `defusedxml` instead of `xml` because the native Python `xml` library is vulnerable to XML External Entity (XXE) attacks. These attacks can leak confidential data and \"XML bombs\" can cause denial of service. [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/daemon.py","line":3421,"fingerprint":"python.lang.security.use-defused-xml:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/daemon.py:3421"},{"rule_id":"opengrep/python.lang.security.use-defused-xml","severity":"high","message":"The Python documentation recommends using `defusedxml` instead of `xml` because the native Python `xml` library is vulnerable to XML External Entity (XXE) attacks. These attacks can leak confidential data and \"XML bombs\" can cause denial of service. [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/daemon.py","line":4443,"fingerprint":"python.lang.security.use-defused-xml:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/daemon.py:4443"},{"rule_id":"opengrep/python.lang.security.use-defused-xml","severity":"high","message":"The Python documentation recommends using `defusedxml` instead of `xml` because the native Python `xml` library is vulnerable to XML External Entity (XXE) attacks. These attacks can leak confidential data and \"XML bombs\" can cause denial of service. [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/daemon.py","line":6125,"fingerprint":"python.lang.security.use-defused-xml:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/daemon.py:6125"},{"rule_id":"opengrep/python.lang.security.use-defused-xml","severity":"high","message":"The Python documentation recommends using `defusedxml` instead of `xml` because the native Python `xml` library is vulnerable to XML External Entity (XXE) attacks. These attacks can leak confidential data and \"XML bombs\" can cause denial of service. [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/daemon.py","line":6225,"fingerprint":"python.lang.security.use-defused-xml:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/daemon.py:6225"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py","line":2900,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py:2900"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py","line":2979,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py:2979"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py","line":3281,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py:3281"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py","line":3576,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py:3576"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py","line":3630,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py:3630"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard_history.py","line":54,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard_history.py:54"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard_history.py","line":64,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard_history.py:64"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/feature_health.py","line":117,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/feature_health.py:117"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/feature_health.py","line":229,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/feature_health.py:229"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/headline.py","line":55,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/headline.py:55"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/keepwarm_safety.py","line":107,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/keepwarm_safety.py:107"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/lean_resume_receivers.py","line":47,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/lean_resume_receivers.py:47"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/mod_compaction_booking.py","line":223,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/mod_compaction_booking.py:223"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/mod_compaction_booking.py","line":272,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/mod_compaction_booking.py:272"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/pricing.py","line":1564,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/pricing.py:1564"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/pricing.py","line":1624,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/pricing.py:1624"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":399,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:399"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":696,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:696"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":1362,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:1362"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":1363,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:1363"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":1803,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:1803"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":2206,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:2206"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":2218,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:2218"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":3423,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:3423"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":4375,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:4375"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":4496,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:4496"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":4503,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:4503"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":4509,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:4509"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":5192,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:5192"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":5926,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:5926"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":5932,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:5932"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/session_effect.py","line":318,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/session_effect.py:318"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/session_effect.py","line":327,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/session_effect.py:327"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/session_effect.py","line":328,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/session_effect.py:328"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/session_effect.py","line":336,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/session_effect.py:336"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/sessions.py","line":3378,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/sessions.py:3378"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/sessions.py","line":3418,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/sessions.py:3418"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/structural_value.py","line":48,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/structural_value.py:48"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/structural_value.py","line":49,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/structural_value.py:49"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py","line":167,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py:167"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py","line":169,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py:169"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py","line":171,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py:171"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py","line":172,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py:172"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py","line":180,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py:180"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py","line":183,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py:183"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py","line":286,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_backfill.py:286"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":438,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:438"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":665,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:665"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":676,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:676"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":677,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:677"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":749,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:749"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":750,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:750"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":753,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:753"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":757,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:757"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":759,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:759"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":879,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:879"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":886,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:886"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":888,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:888"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":955,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:955"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":973,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:973"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":981,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:981"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":999,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:999"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":1498,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:1498"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":1582,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:1582"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":1665,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:1665"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":1747,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:1747"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py","line":1883,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/trends.py:1883"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/upgrade_drain_control.py","line":227,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/upgrade_drain_control.py:227"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/antigravity_doctor.py","line":98,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:plugins/token-optimizer/skills/token-optimizer/scripts/antigravity_doctor.py:98"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-tainted-env-args","severity":"high","message":"Detected subprocess function 'run' with user controlled data. A malicious actor could leverage this to perform command injection. You may consider using 'shlex.quote()'. [confidence medium]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/antigravity_doctor.py","line":99,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-tainted-env-args:plugins/token-optimizer/skills/token-optimizer/scripts/antigravity_doctor.py:99"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'Popen' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/antigravity_doctor.py","line":464,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:plugins/token-optimizer/skills/token-optimizer/scripts/antigravity_doctor.py:464"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/antigravity_state.py","line":196,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/antigravity_state.py:196"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/archive_result.py","line":638,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/archive_result.py:638"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/archive_verify.py","line":34,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/archive_verify.py:34"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/archive_verify.py","line":35,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/archive_verify.py:35"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/archive_verify.py","line":48,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/archive_verify.py:48"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/archive_verify.py","line":103,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/archive_verify.py:103"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/archive_verify.py","line":114,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/archive_verify.py:114"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/archive_verify.py","line":131,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/archive_verify.py:131"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/bash_compress.py","line":2233,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:plugins/token-optimizer/skills/token-optimizer/scripts/bash_compress.py:2233"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/bash_compress.py","line":2288,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:plugins/token-optimizer/skills/token-optimizer/scripts/bash_compress.py:2288"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/codemap_index.py","line":410,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/codemap_index.py:410"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/codemap_index.py","line":442,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/codemap_index.py:442"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/codemap_index.py","line":576,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/codemap_index.py:576"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/codemap_index.py","line":582,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/codemap_index.py:582"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/codemap_index.py","line":629,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/codemap_index.py:629"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/codex_command_compress.py","line":339,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:plugins/token-optimizer/skills/token-optimizer/scripts/codex_command_compress.py:339"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'list2cmdline' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/codex_install.py","line":84,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:plugins/token-optimizer/skills/token-optimizer/scripts/codex_install.py:84"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'list2cmdline' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/codex_install.py","line":388,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:plugins/token-optimizer/skills/token-optimizer/scripts/codex_install.py:388"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/codex_state.py","line":133,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/codex_state.py:133"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/codex_state.py","line":149,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/codex_state.py:149"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/codex_state.py","line":214,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/codex_state.py:214"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/codex_state.py","line":380,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/codex_state.py:380"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/codex_state.py","line":504,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/codex_state.py:504"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/codex_state.py","line":597,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/codex_state.py:597"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/compression_log.py","line":187,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/compression_log.py:187"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/compression_log.py","line":212,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/compression_log.py:212"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'Popen' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/copilot_hook_bridge.py","line":81,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:plugins/token-optimizer/skills/token-optimizer/scripts/copilot_hook_bridge.py:81"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/copilot_hook_bridge.py","line":253,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:plugins/token-optimizer/skills/token-optimizer/scripts/copilot_hook_bridge.py:253"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-tainted-env-args","severity":"high","message":"Detected subprocess function 'run' with user controlled data. A malicious actor could leverage this to perform command injection. You may consider using 'shlex.quote()'. [confidence medium]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/copilot_hook_bridge.py","line":254,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-tainted-env-args:plugins/token-optimizer/skills/token-optimizer/scripts/copilot_hook_bridge.py:254"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/coverage_funnel.py","line":237,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/coverage_funnel.py:237"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/credential_patterns.py","line":774,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:plugins/token-optimizer/skills/token-optimizer/scripts/credential_patterns.py:774"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/cursor_coach.py","line":165,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/cursor_coach.py:165"},{"rule_id":"opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query","severity":"high","message":"Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/cursor_coach.py","line":169,"fingerprint":"python.sqlalchemy.security.sqlalchemy-execute-raw-query:plugins/token-optimizer/skills/token-optimizer/scripts/cursor_coach.py:169"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/cursor_doctor.py","line":560,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:plugins/token-optimizer/skills/token-optimizer/scripts/cursor_doctor.py:560"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-subprocess-use-audit","severity":"high","message":"Detected subprocess function 'Popen' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/cursor_hook_bridge.py","line":86,"fingerprint":"python.lang.security.audit.dangerous-subprocess-use-audit:plugins/token-optimizer/skills/token-optimizer/scripts/cursor_hook_bridge.py:86"},{"rule_id":"opengrep/python.lang.security.audit.dangerous-os-exec-audit","severity":"high","message":"Found dynamic content when spawning a process. This is dangerous if external data can reach this function call because it allows a malicious actor to execute commands. Ensure no external data reaches here. [confidence low]","path":"plugins/token-optimizer/skills/token-optimizer/scripts/devin_compress.py","line":520,"fingerprint":"python.lang.security.audit.dangerous-os-exec-audit:plugins/token-optimizer/skills/token-optimizer/scripts/devin_compress.py:520"}],"evidence":[],"data":{"rulesets":["python","typescript","javascript","bash"]},"error":null},{"analyzer":"sec-deps","pillar":"security","status":"ok","tool_version":"osv-scanner version: 2.7.1","metrics":{"vulnerable_packages":22.0,"vulnerabilities":56.0,"vulns_critical":0.0,"vulns_high":23.0,"vulns_medium":30.0,"vulns_low":3.0,"vulns_unknown":0.0,"penalty":121.0},"findings":[{"rule_id":"osv/GHSA-wq5f-xc86-pv6w","severity":"high","message":"sharp@0.35.4 (npm) is affected by GHSA-wq5f-xc86-pv6w","path":"docs-site/package-lock.json","line":null,"fingerprint":"sharp@0.35.4 (npm):GHSA-wq5f-xc86-pv6w"},{"rule_id":"osv/GHSA-68fv-2mgg-jv7q","severity":"high","message":"source-map-js@1.2.1 (npm) is affected by GHSA-68fv-2mgg-jv7q; also in vscode-extension/package-lock.json","path":"docs-site/package-lock.json","line":null,"fingerprint":"source-map-js@1.2.1 (npm):GHSA-68fv-2mgg-jv7q"},{"rule_id":"osv/GHSA-2m5v-pch6-74hx","severity":"high","message":"undici@8.10.2 (npm) is affected by GHSA-2m5v-pch6-74hx; also in pi/package-lock.json","path":"docs-site/package-lock.json","line":null,"fingerprint":"undici@8.10.2 (npm):GHSA-2m5v-pch6-74hx"},{"rule_id":"osv/GHSA-4w7w-5xrc-9h26","severity":"high","message":"undici@8.10.2 (npm) is affected by GHSA-4w7w-5xrc-9h26; also in pi/package-lock.json","path":"docs-site/package-lock.json","line":null,"fingerprint":"undici@8.10.2 (npm):GHSA-4w7w-5xrc-9h26"},{"rule_id":"osv/GHSA-qrxm-fqhp-jwvm","severity":"high","message":"undici@8.10.2 (npm) is affected by GHSA-qrxm-fqhp-jwvm; also in pi/package-lock.json","path":"docs-site/package-lock.json","line":null,"fingerprint":"undici@8.10.2 (npm):GHSA-qrxm-fqhp-jwvm"},{"rule_id":"osv/GHSA-xjj6-f33q-929c","severity":"high","message":"undici@8.10.2 (npm) is affected by GHSA-xjj6-f33q-929c; also in pi/package-lock.json","path":"docs-site/package-lock.json","line":null,"fingerprint":"undici@8.10.2 (npm):GHSA-xjj6-f33q-929c"},{"rule_id":"osv/GHSA-587h-7wmj-h5pm","severity":"high","message":"vite@8.3.0 (npm) is affected by GHSA-587h-7wmj-h5pm","path":"docs-site/package-lock.json","line":null,"fingerprint":"vite@8.3.0 (npm):GHSA-587h-7wmj-h5pm"},{"rule_id":"osv/GHSA-mrhx-c7xc-m3w5","severity":"high","message":"zod@4.6.5 (npm) is affected by GHSA-mrhx-c7xc-m3w5","path":"docs-site/package-lock.json","line":null,"fingerprint":"zod@4.6.5 (npm):GHSA-mrhx-c7xc-m3w5"},{"rule_id":"osv/GHSA-4qx8-w7c3-pj3p","severity":"high","message":"toml@4.2.0 (npm) is affected by GHSA-4qx8-w7c3-pj3p","path":"opencode/bun.lock","line":null,"fingerprint":"toml@4.2.0 (npm):GHSA-4qx8-w7c3-pj3p"},{"rule_id":"osv/GHSA-9j65-hcg3-gc64","severity":"high","message":"toml@4.2.0 (npm) is affected by GHSA-9j65-hcg3-gc64","path":"opencode/bun.lock","line":null,"fingerprint":"toml@4.2.0 (npm):GHSA-9j65-hcg3-gc64"},{"rule_id":"osv/GHSA-9qmh-m7c6-f92p","severity":"high","message":"toml@4.2.0 (npm) is affected by GHSA-9qmh-m7c6-f92p","path":"opencode/bun.lock","line":null,"fingerprint":"toml@4.2.0 (npm):GHSA-9qmh-m7c6-f92p"},{"rule_id":"osv/GHSA-h895-cgqg-jf52","severity":"high","message":"toml@4.2.0 (npm) is affected by GHSA-h895-cgqg-jf52","path":"opencode/bun.lock","line":null,"fingerprint":"toml@4.2.0 (npm):GHSA-h895-cgqg-jf52"},{"rule_id":"osv/GHSA-2m5v-pch6-74hx","severity":"high","message":"undici@6.29.0 (npm) is affected by GHSA-2m5v-pch6-74hx","path":"opencode/bun.lock","line":null,"fingerprint":"undici@6.29.0 (npm):GHSA-2m5v-pch6-74hx"},{"rule_id":"osv/GHSA-qrxm-fqhp-jwvm","severity":"high","message":"undici@6.29.0 (npm) is affected by GHSA-qrxm-fqhp-jwvm","path":"opencode/bun.lock","line":null,"fingerprint":"undici@6.29.0 (npm):GHSA-qrxm-fqhp-jwvm"},{"rule_id":"osv/GHSA-xjj6-f33q-929c","severity":"high","message":"undici@6.29.0 (npm) is affected by GHSA-xjj6-f33q-929c","path":"opencode/bun.lock","line":null,"fingerprint":"undici@6.29.0 (npm):GHSA-xjj6-f33q-929c"},{"rule_id":"osv/GHSA-2m5v-pch6-74hx","severity":"high","message":"undici@8.11.2 (npm) is affected by GHSA-2m5v-pch6-74hx","path":"opencode/bun.lock","line":null,"fingerprint":"undici@8.11.2 (npm):GHSA-2m5v-pch6-74hx"},{"rule_id":"osv/GHSA-4w7w-5xrc-9h26","severity":"high","message":"undici@8.11.2 (npm) is affected by GHSA-4w7w-5xrc-9h26","path":"opencode/bun.lock","line":null,"fingerprint":"undici@8.11.2 (npm):GHSA-4w7w-5xrc-9h26"},{"rule_id":"osv/GHSA-qrxm-fqhp-jwvm","severity":"high","message":"undici@8.11.2 (npm) is affected by GHSA-qrxm-fqhp-jwvm","path":"opencode/bun.lock","line":null,"fingerprint":"undici@8.11.2 (npm):GHSA-qrxm-fqhp-jwvm"},{"rule_id":"osv/GHSA-xjj6-f33q-929c","severity":"high","message":"undici@8.11.2 (npm) is affected by GHSA-xjj6-f33q-929c","path":"opencode/bun.lock","line":null,"fingerprint":"undici@8.11.2 (npm):GHSA-xjj6-f33q-929c"},{"rule_id":"osv/GHSA-mrhx-c7xc-m3w5","severity":"high","message":"zod@4.1.8 (npm) is affected by GHSA-mrhx-c7xc-m3w5","path":"opencode/bun.lock","line":null,"fingerprint":"zod@4.1.8 (npm):GHSA-mrhx-c7xc-m3w5"},{"rule_id":"osv/GHSA-6j4f-fj2g-mc7p","severity":"high","message":"brace-expansion@5.0.9 (npm) is affected by GHSA-6j4f-fj2g-mc7p","path":"pi/package-lock.json","line":null,"fingerprint":"brace-expansion@5.0.9 (npm):GHSA-6j4f-fj2g-mc7p"},{"rule_id":"osv/GHSA-qhr7-859c-m2p7","severity":"high","message":"brace-expansion@5.0.9 (npm) is affected by GHSA-qhr7-859c-m2p7","path":"pi/package-lock.json","line":null,"fingerprint":"brace-expansion@5.0.9 (npm):GHSA-qhr7-859c-m2p7"},{"rule_id":"osv/GHSA-587h-7wmj-h5pm","severity":"high","message":"vite@6.4.3 (npm) is affected by GHSA-587h-7wmj-h5pm","path":"vscode-extension/package-lock.json","line":null,"fingerprint":"vite@6.4.3 (npm):GHSA-587h-7wmj-h5pm"},{"rule_id":"osv/GHSA-r3h5-4585-7x3w","severity":"medium","message":"astro@7.3.3 (npm) is affected by GHSA-r3h5-4585-7x3w","path":"docs-site/package-lock.json","line":null,"fingerprint":"astro@7.3.3 (npm):GHSA-r3h5-4585-7x3w"},{"rule_id":"osv/GHSA-rj75-hqrm-r3gf","severity":"medium","message":"postcss-selector-parser@6.1.4 (npm) is affected by GHSA-rj75-hqrm-r3gf","path":"docs-site/package-lock.json","line":null,"fingerprint":"postcss-selector-parser@6.1.4 (npm):GHSA-rj75-hqrm-r3gf"},{"rule_id":"osv/GHSA-r4xh-jqrq-34v2","severity":"medium","message":"smol-toml@1.8.0 (npm) is affected by GHSA-r4xh-jqrq-34v2","path":"docs-site/package-lock.json","line":null,"fingerprint":"smol-toml@1.8.0 (npm):GHSA-r4xh-jqrq-34v2"},{"rule_id":"osv/GHSA-4qv8-2p9j-2685","severity":"medium","message":"undici@8.10.2 (npm) is affected by GHSA-4qv8-2p9j-2685; also in pi/package-lock.json","path":"docs-site/package-lock.json","line":null,"fingerprint":"undici@8.10.2 (npm):GHSA-4qv8-2p9j-2685"},{"rule_id":"osv/GHSA-55wc-3pg8-jfw6","severity":"medium","message":"undici@8.10.2 (npm) is affected by GHSA-55wc-3pg8-jfw6; also in pi/package-lock.json","path":"docs-site/package-lock.json","line":null,"fingerprint":"undici@8.10.2 (npm):GHSA-55wc-3pg8-jfw6"},{"rule_id":"osv/GHSA-9fm3-97px-rjf6","severity":"medium","message":"undici@8.10.2 (npm) is affected by GHSA-9fm3-97px-rjf6; also in pi/package-lock.json","path":"docs-site/package-lock.json","line":null,"fingerprint":"undici@8.10.2 (npm):GHSA-9fm3-97px-rjf6"},{"rule_id":"osv/GHSA-f72v-6w45-q472","severity":"medium","message":"undici@8.10.2 (npm) is affected by GHSA-f72v-6w45-q472; also in pi/package-lock.json","path":"docs-site/package-lock.json","line":null,"fingerprint":"undici@8.10.2 (npm):GHSA-f72v-6w45-q472"},{"rule_id":"osv/GHSA-698v-4r3x-3vcv","severity":"medium","message":"vite@8.3.0 (npm) is affected by GHSA-698v-4r3x-3vcv","path":"docs-site/package-lock.json","line":null,"fingerprint":"vite@8.3.0 (npm):GHSA-698v-4r3x-3vcv"},{"rule_id":"osv/GHSA-r825-w8mm-5pxw","severity":"medium","message":"vite@8.3.0 (npm) is affected by GHSA-r825-w8mm-5pxw","path":"docs-site/package-lock.json","line":null,"fingerprint":"vite@8.3.0 (npm):GHSA-r825-w8mm-5pxw"},{"rule_id":"osv/GHSA-rq7h-c2jc-7f22","severity":"medium","message":"vite@8.3.0 (npm) is affected by GHSA-rq7h-c2jc-7f22","path":"docs-site/package-lock.json","line":null,"fingerprint":"vite@8.3.0 (npm):GHSA-rq7h-c2jc-7f22"},{"rule_id":"osv/GHSA-vfpm-58rq-9qcg","severity":"medium","message":"vite@8.3.0 (npm) is affected by GHSA-vfpm-58rq-9qcg","path":"docs-site/package-lock.json","line":null,"fingerprint":"vite@8.3.0 (npm):GHSA-vfpm-58rq-9qcg"},{"rule_id":"osv/GHSA-chp3-j5qr-2vfr","severity":"medium","message":"effect@4.0.0-beta.66 (npm) is affected by GHSA-chp3-j5qr-2vfr","path":"opencode/bun.lock","line":null,"fingerprint":"effect@4.0.0-beta.66 (npm):GHSA-chp3-j5qr-2vfr"},{"rule_id":"osv/GHSA-3g3m-2fjr-6pw4","severity":"medium","message":"glob@10.5.0 (npm) is affected by GHSA-3g3m-2fjr-6pw4","path":"opencode/bun.lock","line":null,"fingerprint":"glob@10.5.0 (npm):GHSA-3g3m-2fjr-6pw4"},{"rule_id":"osv/GHSA-3g3m-2fjr-6pw4","severity":"medium","message":"glob@13.0.5 (npm) is affected by GHSA-3g3m-2fjr-6pw4","path":"opencode/bun.lock","line":null,"fingerprint":"glob@13.0.5 (npm):GHSA-3g3m-2fjr-6pw4"},{"rule_id":"osv/GHSA-rxp7-6hxx-x8q5","severity":"medium","message":"ip-address@10.7.2 (npm) is affected by GHSA-rxp7-6hxx-x8q5","path":"opencode/bun.lock","line":null,"fingerprint":"ip-address@10.7.2 (npm):GHSA-rxp7-6hxx-x8q5"},{"rule_id":"osv/GHSA-g3hv-75wg-m249","severity":"medium","message":"minimatch@10.2.5 (npm) is affected by GHSA-g3hv-75wg-m249","path":"opencode/bun.lock","line":null,"fingerprint":"minimatch@10.2.5 (npm):GHSA-g3hv-75wg-m249"},{"rule_id":"osv/GHSA-g3hv-75wg-m249","severity":"medium","message":"minimatch@9.0.9 (npm) is affected by GHSA-g3hv-75wg-m249","path":"opencode/bun.lock","line":null,"fingerprint":"minimatch@9.0.9 (npm):GHSA-g3hv-75wg-m249"},{"rule_id":"osv/GHSA-4qv8-2p9j-2685","severity":"medium","message":"undici@6.29.0 (npm) is affected by GHSA-4qv8-2p9j-2685","path":"opencode/bun.lock","line":null,"fingerprint":"undici@6.29.0 (npm):GHSA-4qv8-2p9j-2685"},{"rule_id":"osv/GHSA-9fm3-97px-rjf6","severity":"medium","message":"undici@6.29.0 (npm) is affected by GHSA-9fm3-97px-rjf6","path":"opencode/bun.lock","line":null,"fingerprint":"undici@6.29.0 (npm):GHSA-9fm3-97px-rjf6"},{"rule_id":"osv/GHSA-4qv8-2p9j-2685","severity":"medium","message":"undici@8.11.2 (npm) is affected by GHSA-4qv8-2p9j-2685","path":"opencode/bun.lock","line":null,"fingerprint":"undici@8.11.2 (npm):GHSA-4qv8-2p9j-2685"},{"rule_id":"osv/GHSA-55wc-3pg8-jfw6","severity":"medium","message":"undici@8.11.2 (npm) is affected by GHSA-55wc-3pg8-jfw6","path":"opencode/bun.lock","line":null,"fingerprint":"undici@8.11.2 (npm):GHSA-55wc-3pg8-jfw6"},{"rule_id":"osv/GHSA-9fm3-97px-rjf6","severity":"medium","message":"undici@8.11.2 (npm) is affected by GHSA-9fm3-97px-rjf6","path":"opencode/bun.lock","line":null,"fingerprint":"undici@8.11.2 (npm):GHSA-9fm3-97px-rjf6"},{"rule_id":"osv/GHSA-f72v-6w45-q472","severity":"medium","message":"undici@8.11.2 (npm) is affected by GHSA-f72v-6w45-q472","path":"opencode/bun.lock","line":null,"fingerprint":"undici@8.11.2 (npm):GHSA-f72v-6w45-q472"},{"rule_id":"osv/GHSA-q2hr-2g5m-vwhr","severity":"medium","message":"brace-expansion@5.0.9 (npm) is affected by GHSA-q2hr-2g5m-vwhr","path":"pi/package-lock.json","line":null,"fingerprint":"brace-expansion@5.0.9 (npm):GHSA-q2hr-2g5m-vwhr"},{"rule_id":"osv/GHSA-g3hv-75wg-m249","severity":"medium","message":"minimatch@10.2.6 (npm) is affected by GHSA-g3hv-75wg-m249","path":"pi/package-lock.json","line":null,"fingerprint":"minimatch@10.2.6 (npm):GHSA-g3hv-75wg-m249"},{"rule_id":"osv/GHSA-qxg6-89mg-rqv8","severity":"medium","message":"@vitest/mocker@4.1.11 (npm) is affected by GHSA-qxg6-89mg-rqv8","path":"vscode-extension/package-lock.json","line":null,"fingerprint":"@vitest/mocker@4.1.11 (npm):GHSA-qxg6-89mg-rqv8"},{"rule_id":"osv/GHSA-xp26-3454-mjgp","severity":"medium","message":"@vitest/mocker@4.1.11 (npm) is affected by GHSA-xp26-3454-mjgp","path":"vscode-extension/package-lock.json","line":null,"fingerprint":"@vitest/mocker@4.1.11 (npm):GHSA-xp26-3454-mjgp"},{"rule_id":"osv/GHSA-698v-4r3x-3vcv","severity":"medium","message":"vite@6.4.3 (npm) is affected by GHSA-698v-4r3x-3vcv","path":"vscode-extension/package-lock.json","line":null,"fingerprint":"vite@6.4.3 (npm):GHSA-698v-4r3x-3vcv"},{"rule_id":"osv/GHSA-r825-w8mm-5pxw","severity":"medium","message":"vite@6.4.3 (npm) is affected by GHSA-r825-w8mm-5pxw","path":"vscode-extension/package-lock.json","line":null,"fingerprint":"vite@6.4.3 (npm):GHSA-r825-w8mm-5pxw"},{"rule_id":"osv/GHSA-rq7h-c2jc-7f22","severity":"medium","message":"vite@6.4.3 (npm) is affected by GHSA-rq7h-c2jc-7f22","path":"vscode-extension/package-lock.json","line":null,"fingerprint":"vite@6.4.3 (npm):GHSA-rq7h-c2jc-7f22"},{"rule_id":"osv/GHSA-mh32-jxcr-mh9f","severity":"low","message":"astro@7.3.3 (npm) is affected by GHSA-mh32-jxcr-mh9f","path":"docs-site/package-lock.json","line":null,"fingerprint":"astro@7.3.3 (npm):GHSA-mh32-jxcr-mh9f"},{"rule_id":"osv/GHSA-9jrq-w75r-8gcw","severity":"low","message":"vite@8.3.0 (npm) is affected by GHSA-9jrq-w75r-8gcw","path":"docs-site/package-lock.json","line":null,"fingerprint":"vite@8.3.0 (npm):GHSA-9jrq-w75r-8gcw"},{"rule_id":"osv/GHSA-9jrq-w75r-8gcw","severity":"low","message":"vite@6.4.3 (npm) is affected by GHSA-9jrq-w75r-8gcw","path":"vscode-extension/package-lock.json","line":null,"fingerprint":"vite@6.4.3 (npm):GHSA-9jrq-w75r-8gcw"}],"evidence":[],"data":{"ecosystems":["npm"]},"error":null},{"analyzer":"sec-actions","pillar":"security","status":"ok","tool_version":"zizmor 1.32.0","metrics":{"workflows":8.0,"findings":75.0,"findings_high":50.0,"findings_medium":3.0,"findings_low":22.0,"penalty":596.4},"findings":[{"rule_id":"zizmor/dangerous-triggers","severity":"high","message":"use of fundamentally insecure workflow trigger [confidence medium]","path":".github/workflows/cla.yml","line":5,"fingerprint":"dangerous-triggers:.github/workflows/cla.yml:5"},{"rule_id":"zizmor/dangerous-triggers","severity":"high","message":"use of fundamentally insecure workflow trigger [confidence medium]","path":".github/workflows/cla.yml","line":3,"fingerprint":"dangerous-triggers:.github/workflows/cla.yml:3"},{"rule_id":"zizmor/excessive-permissions","severity":"high","message":"overly broad permissions [confidence high]","path":".github/workflows/deploy-docs.yml","line":19,"fingerprint":"excessive-permissions:.github/workflows/deploy-docs.yml:19"},{"rule_id":"zizmor/excessive-permissions","severity":"high","message":"overly broad permissions [confidence high]","path":".github/workflows/deploy-docs.yml","line":20,"fingerprint":"excessive-permissions:.github/workflows/deploy-docs.yml:20"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/deploy-docs.yml","line":29,"fingerprint":"unpinned-uses:.github/workflows/deploy-docs.yml:29"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/deploy-docs.yml","line":30,"fingerprint":"unpinned-uses:.github/workflows/deploy-docs.yml:30"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/deploy-docs.yml","line":37,"fingerprint":"unpinned-uses:.github/workflows/deploy-docs.yml:37"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/deploy-docs.yml","line":38,"fingerprint":"unpinned-uses:.github/workflows/deploy-docs.yml:38"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/deploy-docs.yml","line":50,"fingerprint":"unpinned-uses:.github/workflows/deploy-docs.yml:50"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/refresh-prices.yml","line":34,"fingerprint":"unpinned-uses:.github/workflows/refresh-prices.yml:34"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/refresh-prices.yml","line":38,"fingerprint":"unpinned-uses:.github/workflows/refresh-prices.yml:38"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/refresh-prices.yml","line":57,"fingerprint":"unpinned-uses:.github/workflows/refresh-prices.yml:57"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/release-opencode.yml","line":31,"fingerprint":"unpinned-uses:.github/workflows/release-opencode.yml:31"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/release-opencode.yml","line":38,"fingerprint":"unpinned-uses:.github/workflows/release-opencode.yml:38"},{"rule_id":"zizmor/excessive-permissions","severity":"high","message":"overly broad permissions [confidence high]","path":".github/workflows/sign-release.yml","line":41,"fingerprint":"excessive-permissions:.github/workflows/sign-release.yml:41"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/sign-release.yml","line":60,"fingerprint":"unpinned-uses:.github/workflows/sign-release.yml:60"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/sign-release.yml","line":63,"fingerprint":"unpinned-uses:.github/workflows/sign-release.yml:63"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/sign-release.yml","line":90,"fingerprint":"unpinned-uses:.github/workflows/sign-release.yml:90"},{"rule_id":"zizmor/cache-poisoning","severity":"high","message":"runtime artifacts potentially vulnerable to a cache poisoning attack [confidence low]","path":".github/workflows/sign-release.yml","line":63,"fingerprint":"cache-poisoning:.github/workflows/sign-release.yml:63"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/split-verify.yml","line":57,"fingerprint":"unpinned-uses:.github/workflows/split-verify.yml:57"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/split-verify.yml","line":61,"fingerprint":"unpinned-uses:.github/workflows/split-verify.yml:61"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/split-verify.yml","line":65,"fingerprint":"unpinned-uses:.github/workflows/split-verify.yml:65"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/split-verify.yml","line":95,"fingerprint":"unpinned-uses:.github/workflows/split-verify.yml:95"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/split-verify.yml","line":112,"fingerprint":"unpinned-uses:.github/workflows/split-verify.yml:112"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/split-verify.yml","line":113,"fingerprint":"unpinned-uses:.github/workflows/split-verify.yml:113"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/split-verify.yml","line":116,"fingerprint":"unpinned-uses:.github/workflows/split-verify.yml:116"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":53,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:53"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":56,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:56"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":59,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:59"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":89,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:89"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":93,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:93"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":125,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:125"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":126,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:126"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":145,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:145"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":158,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:158"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":176,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:176"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":177,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:177"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":196,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:196"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":197,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:197"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":215,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:215"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":216,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:216"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":238,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:238"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":239,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:239"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":261,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:261"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":274,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:274"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":314,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:314"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":318,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:318"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":343,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:343"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":345,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:345"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/tests.yml","line":380,"fingerprint":"unpinned-uses:.github/workflows/tests.yml:380"},{"rule_id":"zizmor/archived-uses","severity":"medium","message":"action or reusable workflow from archived repository [confidence high]","path":".github/workflows/cla.yml","line":32,"fingerprint":"archived-uses:.github/workflows/cla.yml:32"},{"rule_id":"zizmor/artipacked","severity":"medium","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/deploy-docs.yml","line":29,"fingerprint":"artipacked:.github/workflows/deploy-docs.yml:29"},{"rule_id":"zizmor/artipacked","severity":"medium","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/file-size.yml","line":14,"fingerprint":"artipacked:.github/workflows/file-size.yml:14"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/refresh-prices.yml","line":34,"fingerprint":"artipacked:.github/workflows/refresh-prices.yml:34"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/release-opencode.yml","line":31,"fingerprint":"artipacked:.github/workflows/release-opencode.yml:31"},{"rule_id":"zizmor/adhoc-packages","severity":"low","message":"ad-hoc installation of packages [confidence high]","path":".github/workflows/release-opencode.yml","line":47,"fingerprint":"adhoc-packages:.github/workflows/release-opencode.yml:47"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/sign-release.yml","line":60,"fingerprint":"artipacked:.github/workflows/sign-release.yml:60"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/sign-release.yml","line":90,"fingerprint":"artipacked:.github/workflows/sign-release.yml:90"},{"rule_id":"zizmor/adhoc-packages","severity":"low","message":"ad-hoc installation of packages [confidence high]","path":".github/workflows/sign-release.yml","line":78,"fingerprint":"adhoc-packages:.github/workflows/sign-release.yml:78"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/split-verify.yml","line":57,"fingerprint":"artipacked:.github/workflows/split-verify.yml:57"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/split-verify.yml","line":112,"fingerprint":"artipacked:.github/workflows/split-verify.yml:112"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/tests.yml","line":53,"fingerprint":"artipacked:.github/workflows/tests.yml:53"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/tests.yml","line":89,"fingerprint":"artipacked:.github/workflows/tests.yml:89"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/tests.yml","line":125,"fingerprint":"artipacked:.github/workflows/tests.yml:125"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/tests.yml","line":145,"fingerprint":"artipacked:.github/workflows/tests.yml:145"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/tests.yml","line":158,"fingerprint":"artipacked:.github/workflows/tests.yml:158"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/tests.yml","line":176,"fingerprint":"artipacked:.github/workflows/tests.yml:176"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/tests.yml","line":196,"fingerprint":"artipacked:.github/workflows/tests.yml:196"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/tests.yml","line":215,"fingerprint":"artipacked:.github/workflows/tests.yml:215"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/tests.yml","line":238,"fingerprint":"artipacked:.github/workflows/tests.yml:238"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/tests.yml","line":261,"fingerprint":"artipacked:.github/workflows/tests.yml:261"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/tests.yml","line":274,"fingerprint":"artipacked:.github/workflows/tests.yml:274"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/tests.yml","line":314,"fingerprint":"artipacked:.github/workflows/tests.yml:314"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/tests.yml","line":343,"fingerprint":"artipacked:.github/workflows/tests.yml:343"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/tests.yml","line":380,"fingerprint":"artipacked:.github/workflows/tests.yml:380"}],"evidence":[],"data":{},"error":null},{"analyzer":"sec-posture","pillar":"security","status":"ok","tool_version":null,"metrics":{"check:security_policy":1.0,"check:dependency_updates":0.0,"check:signed_commits":0.0,"check:lockfiles":0.0,"signed_commit_share":0.0,"unpinned_manifests":1.0},"findings":[],"evidence":[{"kind":"posture","description":"Security policy: SECURITY.md","ref":"SECURITY.md","url":null,"weight":0.0},{"kind":"posture","description":"package.json has no lockfile alongside it (unpinned dependencies)","ref":"package.json","url":null,"weight":0.3}],"data":{},"error":null},{"analyzer":"sec-distribution","pillar":"security","status":"ok","tool_version":null,"metrics":{"signals":1.0,"binary_assets":0.0,"suspicious":0.0},"findings":[],"evidence":[{"kind":"readme-download-lure","description":"gives an archive password","ref":"README.md","url":null,"weight":0.0}],"data":{"signals":["readme-download-lure"],"suspicious":false,"unusual_traction":false,"metadata":true},"error":null},{"analyzer":"qual-complexity","pillar":"quality","status":"ok","tool_version":"lizard 1.25.1","metrics":{"functions":16879.0,"function_nloc":340466.0,"mean_ccn":7.81,"p90_ccn":17.0,"complex_functions":1923.0,"long_functions":415.0,"many_param_functions":127.0,"risky_nloc_share":0.4673},"findings":[],"evidence":[{"kind":"complex-function","description":"main in cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py: complexity 747, 2290 lines","ref":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py#L6","weight":1.0},{"kind":"complex-function","description":"main in plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py: complexity 747, 2290 lines","ref":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py#L6","weight":1.0},{"kind":"complex-function","description":"main in skills/token-optimizer/scripts/_measure/cli.py: complexity 747, 2290 lines","ref":"skills/token-optimizer/scripts/_measure/cli.py","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/skills/token-optimizer/scripts/_measure/cli.py#L6","weight":1.0},{"kind":"complex-function","description":"generate_coach_data in cowork/token-optimizer/skills/token-optimizer/scripts/_measure/audit.py: complexity 232, 700 lines","ref":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/audit.py","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/cowork/token-optimizer/skills/token-optimizer/scripts/_measure/audit.py#L4864","weight":1.0},{"kind":"complex-function","description":"generate_coach_data in plugins/token-optimizer/skills/token-optimizer/scripts/_measure/audit.py: complexity 232, 700 lines","ref":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/audit.py","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/plugins/token-optimizer/skills/token-optimizer/scripts/_measure/audit.py#L4864","weight":1.0},{"kind":"complex-function","description":"generate_coach_data in skills/token-optimizer/scripts/_measure/audit.py: complexity 232, 700 lines","ref":"skills/token-optimizer/scripts/_measure/audit.py","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/skills/token-optimizer/scripts/_measure/audit.py#L4864","weight":1.0},{"kind":"complex-function","description":"savings_report in cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py: complexity 190, 388 lines","ref":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py#L6540","weight":1.0},{"kind":"complex-function","description":"savings_report in plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py: complexity 190, 388 lines","ref":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/plugins/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py#L6540","weight":1.0},{"kind":"complex-function","description":"savings_report in skills/token-optimizer/scripts/_measure/savings.py: complexity 190, 388 lines","ref":"skills/token-optimizer/scripts/_measure/savings.py","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/skills/token-optimizer/scripts/_measure/savings.py#L6540","weight":1.0},{"kind":"complex-function","description":"_detect_pattern in cowork/token-optimizer/skills/token-optimizer/scripts/bash_compress.py: complexity 166, 204 lines","ref":"cowork/token-optimizer/skills/token-optimizer/scripts/bash_compress.py","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/cowork/token-optimizer/skills/token-optimizer/scripts/bash_compress.py#L1344","weight":1.0}],"data":{},"error":null},{"analyzer":"qual-duplication","pillar":"quality","status":"ok","tool_version":"repotrust-dup-w6","metrics":{"compared_lines":459278.0,"duplicated_lines":418890.0,"duplicated_share":0.9121,"files":992.0},"findings":[],"evidence":[{"kind":"duplicate-code","description":"6+ duplicated lines: cowork/token-optimizer/hooks/module_runner.py:1 and hooks/module_runner.py:1","ref":"cowork/token-optimizer/hooks/module_runner.py","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/cowork/token-optimizer/hooks/module_runner.py#L1","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: cowork/token-optimizer/hooks/module_runner.py:198 and cowork/token-optimizer/hooks/module_runner.py:263","ref":"cowork/token-optimizer/hooks/module_runner.py","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/cowork/token-optimizer/hooks/module_runner.py#L198","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: cowork/token-optimizer/hooks/posttooluse_runner.py:1 and hooks/posttooluse_runner.py:1","ref":"cowork/token-optimizer/hooks/posttooluse_runner.py","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/cowork/token-optimizer/hooks/posttooluse_runner.py#L1","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: cowork/token-optimizer/hooks/posttooluse_runner.py:133 and cowork/token-optimizer/hooks/sessionstart_runner.py:87","ref":"cowork/token-optimizer/hooks/posttooluse_runner.py","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/cowork/token-optimizer/hooks/posttooluse_runner.py#L133","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: cowork/token-optimizer/hooks/posttooluse_runner.py:244 and cowork/token-optimizer/skills/token-optimizer/scripts/hermes_tool_hooks.py:90","ref":"cowork/token-optimizer/hooks/posttooluse_runner.py","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/cowork/token-optimizer/hooks/posttooluse_runner.py#L244","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: cowork/token-optimizer/hooks/posttooluse_runner.py:433 and cowork/token-optimizer/hooks/stop_runner.py:174","ref":"cowork/token-optimizer/hooks/posttooluse_runner.py","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/cowork/token-optimizer/hooks/posttooluse_runner.py#L433","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: cowork/token-optimizer/hooks/posttooluse_runner.py:912 and cowork/token-optimizer/hooks/userpromptsubmit_runner.py:332","ref":"cowork/token-optimizer/hooks/posttooluse_runner.py","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/cowork/token-optimizer/hooks/posttooluse_runner.py#L912","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: cowork/token-optimizer/hooks/python-launcher.sh:1 and hooks/python-launcher.sh:1","ref":"cowork/token-optimizer/hooks/python-launcher.sh","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/cowork/token-optimizer/hooks/python-launcher.sh#L1","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: cowork/token-optimizer/hooks/python-launcher.sh:569 and cowork/token-optimizer/hooks/python-launcher.sh:611","ref":"cowork/token-optimizer/hooks/python-launcher.sh","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/cowork/token-optimizer/hooks/python-launcher.sh#L569","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: cowork/token-optimizer/hooks/run.py:1 and hooks/run.py:1","ref":"cowork/token-optimizer/hooks/run.py","url":"https://github.com/alexgreensh/token-optimizer/blob/58ceaf03d12e35229f29d2ad64b5f733b2b2e066/cowork/token-optimizer/hooks/run.py#L1","weight":0.3}],"data":{},"error":null},{"analyzer":"qual-lint","pillar":"quality","status":"ok","tool_version":"opengrep 1.33.1; rules f1d2b562b414","metrics":{"findings":524.0,"weighted_findings":602.75,"scanned_lines":552768.0,"category:best-practice":52.0,"category:correctness":335.0,"category:maintainability":137.0},"findings":[{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"cowork/token-optimizer/hooks/module_runner.py","line":396,"fingerprint":"python.lang.best-practice.arbitrary-sleep:cowork/token-optimizer/hooks/module_runner.py:396"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"cowork/token-optimizer/skills/fleet-auditor/scripts/fleet.py","line":1106,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:cowork/token-optimizer/skills/fleet-auditor/scripts/fleet.py:1106"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"cowork/token-optimizer/skills/fleet-auditor/scripts/fleet.py","line":1126,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:cowork/token-optimizer/skills/fleet-auditor/scripts/fleet.py:1126"},{"rule_id":"opengrep/python.lang.best-practice.open-never-closed","severity":"high","message":"file object opened without corresponding close","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/codex_quality.py","line":36,"fingerprint":"python.lang.best-practice.open-never-closed:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/codex_quality.py:36"},{"rule_id":"opengrep/python.lang.correctness.return-in-init","severity":"high","message":"`return` should never appear inside a class __init__ function. This will cause a runtime error.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/counted_subagents.py","line":295,"fingerprint":"python.lang.correctness.return-in-init:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/counted_subagents.py:295"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py","line":3930,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py:3930"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py","line":3937,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py:3937"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py","line":3939,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py:3939"},{"rule_id":"opengrep/python.lang.best-practice.open-never-closed","severity":"high","message":"file object opened without corresponding close","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/lifecycle.py","line":4413,"fingerprint":"python.lang.best-practice.open-never-closed:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/lifecycle.py:4413"},{"rule_id":"opengrep/python.lang.correctness.tempfile.tempfile-without-flush","severity":"high","message":"Using 'handle.name' without '.flush()' or '.close()' may cause an error because the file may not exist when 'handle.name' is used. Use '.flush()' or close the file before using 'handle.name'.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/output_reread.py","line":175,"fingerprint":"python.lang.correctness.tempfile.tempfile-without-flush:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/output_reread.py:175"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/bash_compress.py","line":2037,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:cowork/token-optimizer/skills/token-optimizer/scripts/bash_compress.py:2037"},{"rule_id":"opengrep/python.lang.maintainability.useless-inner-function","severity":"high","message":"function `_calls` is defined inside a function but never used","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codemap_index.py","line":259,"fingerprint":"python.lang.maintainability.useless-inner-function:cowork/token-optimizer/skills/token-optimizer/scripts/codemap_index.py:259"},{"rule_id":"opengrep/python.lang.correctness.tempfile.tempfile-without-flush","severity":"high","message":"Using 'handle.name' without '.flush()' or '.close()' may cause an error because the file may not exist when 'handle.name' is used. Use '.flush()' or close the file before using 'handle.name'.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codex_install.py","line":791,"fingerprint":"python.lang.correctness.tempfile.tempfile-without-flush:cowork/token-optimizer/skills/token-optimizer/scripts/codex_install.py:791"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codex_log_index.py","line":64,"fingerprint":"python.lang.best-practice.arbitrary-sleep:cowork/token-optimizer/skills/token-optimizer/scripts/codex_log_index.py:64"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codex_log_index.py","line":79,"fingerprint":"python.lang.best-practice.arbitrary-sleep:cowork/token-optimizer/skills/token-optimizer/scripts/codex_log_index.py:79"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codex_log_index.py","line":224,"fingerprint":"python.lang.best-practice.arbitrary-sleep:cowork/token-optimizer/skills/token-optimizer/scripts/codex_log_index.py:224"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/cursor_read_cache.py","line":168,"fingerprint":"python.lang.best-practice.arbitrary-sleep:cowork/token-optimizer/skills/token-optimizer/scripts/cursor_read_cache.py:168"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/deterministic_candidates.py","line":843,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:cowork/token-optimizer/skills/token-optimizer/scripts/deterministic_candidates.py:843"},{"rule_id":"opengrep/python.lang.correctness.tempfile.tempfile-without-flush","severity":"high","message":"Using 'out.name' without '.flush()' or '.close()' may cause an error because the file may not exist when 'out.name' is used. Use '.flush()' or close the file before using 'out.name'.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/devin_compress.py","line":593,"fingerprint":"python.lang.correctness.tempfile.tempfile-without-flush:cowork/token-optimizer/skills/token-optimizer/scripts/devin_compress.py:593"},{"rule_id":"opengrep/python.lang.correctness.tempfile.tempfile-without-flush","severity":"high","message":"Using 'out.name' without '.flush()' or '.close()' may cause an error because the file may not exist when 'out.name' is used. Use '.flush()' or close the file before using 'out.name'.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/devin_hooks.py","line":418,"fingerprint":"python.lang.correctness.tempfile.tempfile-without-flush:cowork/token-optimizer/skills/token-optimizer/scripts/devin_hooks.py:418"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/devin_state.py","line":155,"fingerprint":"python.lang.best-practice.arbitrary-sleep:cowork/token-optimizer/skills/token-optimizer/scripts/devin_state.py:155"},{"rule_id":"opengrep/python.lang.correctness.tempfile.tempfile-without-flush","severity":"high","message":"Using 'out.name' without '.flush()' or '.close()' may cause an error because the file may not exist when 'out.name' is used. Use '.flush()' or close the file before using 'out.name'.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/devin_state.py","line":167,"fingerprint":"python.lang.correctness.tempfile.tempfile-without-flush:cowork/token-optimizer/skills/token-optimizer/scripts/devin_state.py:167"},{"rule_id":"opengrep/python.lang.correctness.tempfile.tempfile-without-flush","severity":"high","message":"Using 'out.name' without '.flush()' or '.close()' may cause an error because the file may not exist when 'out.name' is used. Use '.flush()' or close the file before using 'out.name'.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/devin_state.py","line":250,"fingerprint":"python.lang.correctness.tempfile.tempfile-without-flush:cowork/token-optimizer/skills/token-optimizer/scripts/devin_state.py:250"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/hook_provenance.py","line":370,"fingerprint":"python.lang.best-practice.arbitrary-sleep:cowork/token-optimizer/skills/token-optimizer/scripts/hook_provenance.py:370"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/session_store_guard.py","line":19,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:cowork/token-optimizer/skills/token-optimizer/scripts/session_store_guard.py:19"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/session_store_guard.py","line":56,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:cowork/token-optimizer/skills/token-optimizer/scripts/session_store_guard.py:56"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"hooks/module_runner.py","line":396,"fingerprint":"python.lang.best-practice.arbitrary-sleep:hooks/module_runner.py:396"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"plugins/token-optimizer/hooks/module_runner.py","line":396,"fingerprint":"python.lang.best-practice.arbitrary-sleep:plugins/token-optimizer/hooks/module_runner.py:396"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"plugins/token-optimizer/skills/fleet-auditor/scripts/fleet.py","line":1106,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:plugins/token-optimizer/skills/fleet-auditor/scripts/fleet.py:1106"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"plugins/token-optimizer/skills/fleet-auditor/scripts/fleet.py","line":1126,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:plugins/token-optimizer/skills/fleet-auditor/scripts/fleet.py:1126"},{"rule_id":"opengrep/python.lang.best-practice.open-never-closed","severity":"high","message":"file object opened without corresponding close","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/codex_quality.py","line":36,"fingerprint":"python.lang.best-practice.open-never-closed:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/codex_quality.py:36"},{"rule_id":"opengrep/python.lang.correctness.return-in-init","severity":"high","message":"`return` should never appear inside a class __init__ function. This will cause a runtime error.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/counted_subagents.py","line":295,"fingerprint":"python.lang.correctness.return-in-init:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/counted_subagents.py:295"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py","line":3930,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py:3930"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py","line":3937,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py:3937"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py","line":3939,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/dashboard.py:3939"},{"rule_id":"opengrep/python.lang.best-practice.open-never-closed","severity":"high","message":"file object opened without corresponding close","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/lifecycle.py","line":4413,"fingerprint":"python.lang.best-practice.open-never-closed:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/lifecycle.py:4413"},{"rule_id":"opengrep/python.lang.correctness.tempfile.tempfile-without-flush","severity":"high","message":"Using 'handle.name' without '.flush()' or '.close()' may cause an error because the file may not exist when 'handle.name' is used. Use '.flush()' or close the file before using 'handle.name'.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/output_reread.py","line":175,"fingerprint":"python.lang.correctness.tempfile.tempfile-without-flush:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/output_reread.py:175"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/bash_compress.py","line":2037,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:plugins/token-optimizer/skills/token-optimizer/scripts/bash_compress.py:2037"},{"rule_id":"opengrep/python.lang.maintainability.useless-inner-function","severity":"high","message":"function `_calls` is defined inside a function but never used","path":"plugins/token-optimizer/skills/token-optimizer/scripts/codemap_index.py","line":259,"fingerprint":"python.lang.maintainability.useless-inner-function:plugins/token-optimizer/skills/token-optimizer/scripts/codemap_index.py:259"},{"rule_id":"opengrep/python.lang.correctness.tempfile.tempfile-without-flush","severity":"high","message":"Using 'handle.name' without '.flush()' or '.close()' may cause an error because the file may not exist when 'handle.name' is used. Use '.flush()' or close the file before using 'handle.name'.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/codex_install.py","line":791,"fingerprint":"python.lang.correctness.tempfile.tempfile-without-flush:plugins/token-optimizer/skills/token-optimizer/scripts/codex_install.py:791"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"plugins/token-optimizer/skills/token-optimizer/scripts/codex_log_index.py","line":64,"fingerprint":"python.lang.best-practice.arbitrary-sleep:plugins/token-optimizer/skills/token-optimizer/scripts/codex_log_index.py:64"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"plugins/token-optimizer/skills/token-optimizer/scripts/codex_log_index.py","line":79,"fingerprint":"python.lang.best-practice.arbitrary-sleep:plugins/token-optimizer/skills/token-optimizer/scripts/codex_log_index.py:79"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"plugins/token-optimizer/skills/token-optimizer/scripts/codex_log_index.py","line":224,"fingerprint":"python.lang.best-practice.arbitrary-sleep:plugins/token-optimizer/skills/token-optimizer/scripts/codex_log_index.py:224"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"plugins/token-optimizer/skills/token-optimizer/scripts/cursor_read_cache.py","line":168,"fingerprint":"python.lang.best-practice.arbitrary-sleep:plugins/token-optimizer/skills/token-optimizer/scripts/cursor_read_cache.py:168"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/deterministic_candidates.py","line":843,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:plugins/token-optimizer/skills/token-optimizer/scripts/deterministic_candidates.py:843"},{"rule_id":"opengrep/python.lang.correctness.tempfile.tempfile-without-flush","severity":"high","message":"Using 'out.name' without '.flush()' or '.close()' may cause an error because the file may not exist when 'out.name' is used. Use '.flush()' or close the file before using 'out.name'.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/devin_compress.py","line":593,"fingerprint":"python.lang.correctness.tempfile.tempfile-without-flush:plugins/token-optimizer/skills/token-optimizer/scripts/devin_compress.py:593"},{"rule_id":"opengrep/python.lang.correctness.tempfile.tempfile-without-flush","severity":"high","message":"Using 'out.name' without '.flush()' or '.close()' may cause an error because the file may not exist when 'out.name' is used. Use '.flush()' or close the file before using 'out.name'.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/devin_hooks.py","line":418,"fingerprint":"python.lang.correctness.tempfile.tempfile-without-flush:plugins/token-optimizer/skills/token-optimizer/scripts/devin_hooks.py:418"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"plugins/token-optimizer/skills/token-optimizer/scripts/devin_state.py","line":155,"fingerprint":"python.lang.best-practice.arbitrary-sleep:plugins/token-optimizer/skills/token-optimizer/scripts/devin_state.py:155"},{"rule_id":"opengrep/python.lang.correctness.tempfile.tempfile-without-flush","severity":"high","message":"Using 'out.name' without '.flush()' or '.close()' may cause an error because the file may not exist when 'out.name' is used. Use '.flush()' or close the file before using 'out.name'.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/devin_state.py","line":167,"fingerprint":"python.lang.correctness.tempfile.tempfile-without-flush:plugins/token-optimizer/skills/token-optimizer/scripts/devin_state.py:167"},{"rule_id":"opengrep/python.lang.correctness.tempfile.tempfile-without-flush","severity":"high","message":"Using 'out.name' without '.flush()' or '.close()' may cause an error because the file may not exist when 'out.name' is used. Use '.flush()' or close the file before using 'out.name'.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/devin_state.py","line":250,"fingerprint":"python.lang.correctness.tempfile.tempfile-without-flush:plugins/token-optimizer/skills/token-optimizer/scripts/devin_state.py:250"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"plugins/token-optimizer/skills/token-optimizer/scripts/hook_provenance.py","line":370,"fingerprint":"python.lang.best-practice.arbitrary-sleep:plugins/token-optimizer/skills/token-optimizer/scripts/hook_provenance.py:370"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/session_store_guard.py","line":19,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:plugins/token-optimizer/skills/token-optimizer/scripts/session_store_guard.py:19"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/session_store_guard.py","line":56,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:plugins/token-optimizer/skills/token-optimizer/scripts/session_store_guard.py:56"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"scripts/keepwarm-experiment.py","line":189,"fingerprint":"python.lang.best-practice.arbitrary-sleep:scripts/keepwarm-experiment.py:189"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"scripts/keepwarm-experiment.py","line":239,"fingerprint":"python.lang.best-practice.arbitrary-sleep:scripts/keepwarm-experiment.py:239"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"scripts/keepwarm-experiment.py","line":263,"fingerprint":"python.lang.best-practice.arbitrary-sleep:scripts/keepwarm-experiment.py:263"},{"rule_id":"opengrep/python.lang.correctness.no-strings-as-booleans","severity":"high","message":"Using strings as booleans in Python has unexpected results. `\"one\" and \"two\"` will return \"two\". `\"one\" or \"two\"` will return \"one\". In Python, strings are truthy, and strings with a non-zero length evaluate to True.","path":"scripts/measure_split.py","line":158,"fingerprint":"python.lang.correctness.no-strings-as-booleans:scripts/measure_split.py:158"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"scripts/split_verify/l5_upgrade.py","line":106,"fingerprint":"python.lang.best-practice.arbitrary-sleep:scripts/split_verify/l5_upgrade.py:106"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"scripts/split_verify/l5_upgrade.py","line":227,"fingerprint":"python.lang.best-practice.arbitrary-sleep:scripts/split_verify/l5_upgrade.py:227"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"scripts/split_verify/l7_perf.py","line":98,"fingerprint":"python.lang.best-practice.arbitrary-sleep:scripts/split_verify/l7_perf.py:98"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"scripts/split_verify/l7_perf.py","line":123,"fingerprint":"python.lang.best-practice.arbitrary-sleep:scripts/split_verify/l7_perf.py:123"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"scripts/split_verify/l7_perf.py","line":146,"fingerprint":"python.lang.best-practice.arbitrary-sleep:scripts/split_verify/l7_perf.py:146"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"skills/fleet-auditor/scripts/fleet.py","line":1106,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:skills/fleet-auditor/scripts/fleet.py:1106"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"skills/fleet-auditor/scripts/fleet.py","line":1126,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:skills/fleet-auditor/scripts/fleet.py:1126"},{"rule_id":"opengrep/python.lang.best-practice.open-never-closed","severity":"high","message":"file object opened without corresponding close","path":"skills/token-optimizer/scripts/_measure/codex_quality.py","line":36,"fingerprint":"python.lang.best-practice.open-never-closed:skills/token-optimizer/scripts/_measure/codex_quality.py:36"},{"rule_id":"opengrep/python.lang.correctness.return-in-init","severity":"high","message":"`return` should never appear inside a class __init__ function. This will cause a runtime error.","path":"skills/token-optimizer/scripts/_measure/counted_subagents.py","line":295,"fingerprint":"python.lang.correctness.return-in-init:skills/token-optimizer/scripts/_measure/counted_subagents.py:295"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"skills/token-optimizer/scripts/_measure/dashboard.py","line":3930,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:skills/token-optimizer/scripts/_measure/dashboard.py:3930"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"skills/token-optimizer/scripts/_measure/dashboard.py","line":3937,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:skills/token-optimizer/scripts/_measure/dashboard.py:3937"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"skills/token-optimizer/scripts/_measure/dashboard.py","line":3939,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:skills/token-optimizer/scripts/_measure/dashboard.py:3939"},{"rule_id":"opengrep/python.lang.best-practice.open-never-closed","severity":"high","message":"file object opened without corresponding close","path":"skills/token-optimizer/scripts/_measure/lifecycle.py","line":4413,"fingerprint":"python.lang.best-practice.open-never-closed:skills/token-optimizer/scripts/_measure/lifecycle.py:4413"},{"rule_id":"opengrep/python.lang.correctness.tempfile.tempfile-without-flush","severity":"high","message":"Using 'handle.name' without '.flush()' or '.close()' may cause an error because the file may not exist when 'handle.name' is used. Use '.flush()' or close the file before using 'handle.name'.","path":"skills/token-optimizer/scripts/_measure/output_reread.py","line":175,"fingerprint":"python.lang.correctness.tempfile.tempfile-without-flush:skills/token-optimizer/scripts/_measure/output_reread.py:175"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"skills/token-optimizer/scripts/bash_compress.py","line":2037,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:skills/token-optimizer/scripts/bash_compress.py:2037"},{"rule_id":"opengrep/python.lang.maintainability.useless-inner-function","severity":"high","message":"function `_calls` is defined inside a function but never used","path":"skills/token-optimizer/scripts/codemap_index.py","line":259,"fingerprint":"python.lang.maintainability.useless-inner-function:skills/token-optimizer/scripts/codemap_index.py:259"},{"rule_id":"opengrep/python.lang.correctness.tempfile.tempfile-without-flush","severity":"high","message":"Using 'handle.name' without '.flush()' or '.close()' may cause an error because the file may not exist when 'handle.name' is used. Use '.flush()' or close the file before using 'handle.name'.","path":"skills/token-optimizer/scripts/codex_install.py","line":791,"fingerprint":"python.lang.correctness.tempfile.tempfile-without-flush:skills/token-optimizer/scripts/codex_install.py:791"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"skills/token-optimizer/scripts/codex_log_index.py","line":64,"fingerprint":"python.lang.best-practice.arbitrary-sleep:skills/token-optimizer/scripts/codex_log_index.py:64"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"skills/token-optimizer/scripts/codex_log_index.py","line":79,"fingerprint":"python.lang.best-practice.arbitrary-sleep:skills/token-optimizer/scripts/codex_log_index.py:79"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"skills/token-optimizer/scripts/codex_log_index.py","line":224,"fingerprint":"python.lang.best-practice.arbitrary-sleep:skills/token-optimizer/scripts/codex_log_index.py:224"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"skills/token-optimizer/scripts/cursor_read_cache.py","line":168,"fingerprint":"python.lang.best-practice.arbitrary-sleep:skills/token-optimizer/scripts/cursor_read_cache.py:168"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"skills/token-optimizer/scripts/deterministic_candidates.py","line":843,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:skills/token-optimizer/scripts/deterministic_candidates.py:843"},{"rule_id":"opengrep/python.lang.correctness.tempfile.tempfile-without-flush","severity":"high","message":"Using 'out.name' without '.flush()' or '.close()' may cause an error because the file may not exist when 'out.name' is used. Use '.flush()' or close the file before using 'out.name'.","path":"skills/token-optimizer/scripts/devin_compress.py","line":593,"fingerprint":"python.lang.correctness.tempfile.tempfile-without-flush:skills/token-optimizer/scripts/devin_compress.py:593"},{"rule_id":"opengrep/python.lang.correctness.tempfile.tempfile-without-flush","severity":"high","message":"Using 'out.name' without '.flush()' or '.close()' may cause an error because the file may not exist when 'out.name' is used. Use '.flush()' or close the file before using 'out.name'.","path":"skills/token-optimizer/scripts/devin_hooks.py","line":418,"fingerprint":"python.lang.correctness.tempfile.tempfile-without-flush:skills/token-optimizer/scripts/devin_hooks.py:418"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"skills/token-optimizer/scripts/devin_state.py","line":155,"fingerprint":"python.lang.best-practice.arbitrary-sleep:skills/token-optimizer/scripts/devin_state.py:155"},{"rule_id":"opengrep/python.lang.correctness.tempfile.tempfile-without-flush","severity":"high","message":"Using 'out.name' without '.flush()' or '.close()' may cause an error because the file may not exist when 'out.name' is used. Use '.flush()' or close the file before using 'out.name'.","path":"skills/token-optimizer/scripts/devin_state.py","line":167,"fingerprint":"python.lang.correctness.tempfile.tempfile-without-flush:skills/token-optimizer/scripts/devin_state.py:167"},{"rule_id":"opengrep/python.lang.correctness.tempfile.tempfile-without-flush","severity":"high","message":"Using 'out.name' without '.flush()' or '.close()' may cause an error because the file may not exist when 'out.name' is used. Use '.flush()' or close the file before using 'out.name'.","path":"skills/token-optimizer/scripts/devin_state.py","line":250,"fingerprint":"python.lang.correctness.tempfile.tempfile-without-flush:skills/token-optimizer/scripts/devin_state.py:250"},{"rule_id":"opengrep/python.lang.best-practice.arbitrary-sleep","severity":"high","message":"time.sleep() call; did you mean to leave this in?","path":"skills/token-optimizer/scripts/hook_provenance.py","line":370,"fingerprint":"python.lang.best-practice.arbitrary-sleep:skills/token-optimizer/scripts/hook_provenance.py:370"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"skills/token-optimizer/scripts/session_store_guard.py","line":19,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:skills/token-optimizer/scripts/session_store_guard.py:19"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.identical-is-comparison","severity":"high","message":"Found identical comparison using is. Ensure this is what you intended.","path":"skills/token-optimizer/scripts/session_store_guard.py","line":56,"fingerprint":"python.lang.correctness.common-mistakes.identical-is-comparison:skills/token-optimizer/scripts/session_store_guard.py:56"},{"rule_id":"opengrep/python.lang.maintainability.return-not-in-function","severity":"medium","message":"`return` only makes sense inside a function","path":"cowork/token-optimizer/skills/fleet-auditor/scripts/fleet.py","line":1478,"fingerprint":"python.lang.maintainability.return-not-in-function:cowork/token-optimizer/skills/fleet-auditor/scripts/fleet.py:1478"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/fleet-auditor/scripts/fleet.py","line":1651,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/fleet-auditor/scripts/fleet.py:1651"},{"rule_id":"opengrep/python.lang.maintainability.return-not-in-function","severity":"medium","message":"`return` only makes sense inside a function","path":"cowork/token-optimizer/skills/fleet-auditor/scripts/fleet_base.py","line":36,"fingerprint":"python.lang.maintainability.return-not-in-function:cowork/token-optimizer/skills/fleet-auditor/scripts/fleet_base.py:36"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/fleet-auditor/scripts/fleet_base.py","line":85,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/fleet-auditor/scripts/fleet_base.py:85"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/fleet-auditor/scripts/fleet_cursor_adapter.py","line":230,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/fleet-auditor/scripts/fleet_cursor_adapter.py:230"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_compact\" a function or an attribute? If it is a function, you may have meant _measure_facade.is_compact() because _measure_facade.is_compact is always true.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py","line":1527,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py:1527"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_compact\" a function or an attribute? If it is a function, you may have meant _measure_facade.is_compact() because _measure_facade.is_compact is always true.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py","line":1536,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py:1536"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_compact\" a function or an attribute? If it is a function, you may have meant _measure_facade.is_compact() because _measure_facade.is_compact is always true.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py","line":1549,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py:1549"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_codex\" a function or an attribute? If it is a function, you may have meant _measure_facade.is_codex() because _measure_facade.is_codex is always true.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py","line":2432,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py:2432"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_codex\" a function or an attribute? If it is a function, you may have meant _measure_facade.is_codex() because _measure_facade.is_codex is always true.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py","line":2454,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py:2454"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_codex\" a function or an attribute? If it is a function, you may have meant _measure_facade.is_codex() because _measure_facade.is_codex is always true.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py","line":2455,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py:2455"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_codex\" a function or an attribute? If it is a function, you may have meant _measure_facade.is_codex() because _measure_facade.is_codex is always true.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py","line":2458,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py:2458"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_codex\" a function or an attribute? If it is a function, you may have meant _measure_facade.is_codex() because _measure_facade.is_codex is always true.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py","line":2459,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py:2459"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_codex\" a function or an attribute? If it is a function, you may have meant _measure_facade.is_codex() because _measure_facade.is_codex is always true.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py","line":2462,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py:2462"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_codex\" a function or an attribute? If it is a function, you may have meant _measure_facade.is_codex() because _measure_facade.is_codex is always true.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py","line":2465,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py:2465"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/continuity.py","line":686,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/continuity.py:686"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/continuity.py","line":3465,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/continuity.py:3465"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/continuity.py","line":3586,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/continuity.py:3586"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/daemon.py","line":1640,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/daemon.py:1640"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/file_refetch.py","line":245,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/file_refetch.py:245"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/file_refetch.py","line":247,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/file_refetch.py:247"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/file_refetch.py","line":249,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/file_refetch.py:249"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/holdout_report.py","line":88,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/holdout_report.py:88"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/lifecycle.py","line":1447,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/lifecycle.py:1447"},{"rule_id":"opengrep/python.lang.best-practice.unspecified-open-encoding","severity":"medium","message":"Missing 'encoding' parameter. 'open()' uses device locale encodings by default, corrupting files with special characters. Specify the encoding to ensure cross-platform support when opening files in text mode (e.g. encoding=\"utf-8\").","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/lifecycle.py","line":4413,"fingerprint":"python.lang.best-practice.unspecified-open-encoding:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/lifecycle.py:4413"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/mod_fresh_booking.py","line":60,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/mod_fresh_booking.py:60"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/output_reread.py","line":436,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/output_reread.py:436"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/pricing.py","line":718,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/pricing.py:718"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/pricing.py","line":723,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/pricing.py:723"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":382,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:382"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":1054,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:1054"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":1057,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:1057"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":1165,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:1165"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":4724,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:4724"},{"rule_id":"opengrep/python.lang.maintainability.useless-if-body","severity":"medium","message":"Useless if statement; both blocks have the same body","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py","line":5153,"fingerprint":"python.lang.maintainability.useless-if-body:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/savings.py:5153"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/session_effect.py","line":319,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/session_effect.py:319"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/session_effect.py","line":329,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/session_effect.py:329"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/sessions.py","line":3605,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/sessions.py:3605"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/structural_value.py","line":50,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/structural_value.py:50"},{"rule_id":"opengrep/python.lang.best-practice.manual-defaultdict-list-create","severity":"medium","message":"manually creating a defaultdict - use collections.defaultdict(list)","path":"cowork/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_product.py","line":38,"fingerprint":"python.lang.best-practice.manual-defaultdict-list-create:cowork/token-optimizer/skills/token-optimizer/scripts/_measure/transcript_product.py:38"},{"rule_id":"opengrep/python.lang.best-practice.pass-body-fn","severity":"medium","message":"`pass` is the body of function enforce_utf8_io. Consider removing this or raise NotImplementedError() if this is a TODO","path":"cowork/token-optimizer/skills/token-optimizer/scripts/antigravity_hook_bridge.py","line":37,"fingerprint":"python.lang.best-practice.pass-body-fn:cowork/token-optimizer/skills/token-optimizer/scripts/antigravity_hook_bridge.py:37"},{"rule_id":"opengrep/python.lang.maintainability.return-not-in-function","severity":"medium","message":"`return` only makes sense inside a function","path":"cowork/token-optimizer/skills/token-optimizer/scripts/bash_compress.py","line":1954,"fingerprint":"python.lang.maintainability.return-not-in-function:cowork/token-optimizer/skills/token-optimizer/scripts/bash_compress.py:1954"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codemap_index.py","line":618,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/codemap_index.py:618"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codex_doctor.py","line":331,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/codex_doctor.py:331"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codex_doctor.py","line":397,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/codex_doctor.py:397"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/codex_doctor.py","line":411,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/codex_doctor.py:411"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/credential_patterns.py","line":68,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/credential_patterns.py:68"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/credential_patterns.py","line":79,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/credential_patterns.py:79"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/credential_patterns.py","line":93,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/credential_patterns.py:93"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/credential_patterns.py","line":100,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/credential_patterns.py:100"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/credential_patterns.py","line":112,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/credential_patterns.py:112"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/credential_patterns.py","line":125,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/credential_patterns.py:125"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/credential_patterns.py","line":131,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/credential_patterns.py:131"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/credential_url_patterns.py","line":37,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/credential_url_patterns.py:37"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/cursor_audit.py","line":592,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/cursor_audit.py:592"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/cursor_audit.py","line":597,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/cursor_audit.py:597"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/cursor_coach.py","line":438,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/cursor_coach.py:438"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/cursor_coach.py","line":440,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/cursor_coach.py:440"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/cursor_coach.py","line":442,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/cursor_coach.py:442"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/devin_doctor.py","line":304,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/devin_doctor.py:304"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"cowork/token-optimizer/skills/token-optimizer/scripts/hermes_doctor.py","line":468,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:cowork/token-optimizer/skills/token-optimizer/scripts/hermes_doctor.py:468"},{"rule_id":"opengrep/python.lang.maintainability.return-not-in-function","severity":"medium","message":"`return` only makes sense inside a function","path":"cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py","line":48,"fingerprint":"python.lang.maintainability.return-not-in-function:cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py:48"},{"rule_id":"opengrep/python.lang.maintainability.return-not-in-function","severity":"medium","message":"`return` only makes sense inside a function","path":"cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py","line":49,"fingerprint":"python.lang.maintainability.return-not-in-function:cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py:49"},{"rule_id":"opengrep/python.lang.maintainability.return-not-in-function","severity":"medium","message":"`return` only makes sense inside a function","path":"cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py","line":50,"fingerprint":"python.lang.maintainability.return-not-in-function:cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py:50"},{"rule_id":"opengrep/python.lang.maintainability.return-not-in-function","severity":"medium","message":"`return` only makes sense inside a function","path":"cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py","line":51,"fingerprint":"python.lang.maintainability.return-not-in-function:cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py:51"},{"rule_id":"opengrep/python.lang.maintainability.return-not-in-function","severity":"medium","message":"`return` only makes sense inside a function","path":"cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py","line":52,"fingerprint":"python.lang.maintainability.return-not-in-function:cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py:52"},{"rule_id":"opengrep/python.lang.maintainability.return-not-in-function","severity":"medium","message":"`return` only makes sense inside a function","path":"cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py","line":53,"fingerprint":"python.lang.maintainability.return-not-in-function:cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py:53"},{"rule_id":"opengrep/python.lang.maintainability.return-not-in-function","severity":"medium","message":"`return` only makes sense inside a function","path":"cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py","line":54,"fingerprint":"python.lang.maintainability.return-not-in-function:cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py:54"},{"rule_id":"opengrep/python.lang.maintainability.return-not-in-function","severity":"medium","message":"`return` only makes sense inside a function","path":"cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py","line":63,"fingerprint":"python.lang.maintainability.return-not-in-function:cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py:63"},{"rule_id":"opengrep/python.lang.maintainability.return-not-in-function","severity":"medium","message":"`return` only makes sense inside a function","path":"cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py","line":64,"fingerprint":"python.lang.maintainability.return-not-in-function:cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py:64"},{"rule_id":"opengrep/python.lang.maintainability.return-not-in-function","severity":"medium","message":"`return` only makes sense inside a function","path":"cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py","line":65,"fingerprint":"python.lang.maintainability.return-not-in-function:cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py:65"},{"rule_id":"opengrep/python.lang.maintainability.return-not-in-function","severity":"medium","message":"`return` only makes sense inside a function","path":"cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py","line":71,"fingerprint":"python.lang.maintainability.return-not-in-function:cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py:71"},{"rule_id":"opengrep/python.lang.maintainability.return-not-in-function","severity":"medium","message":"`return` only makes sense inside a function","path":"cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py","line":72,"fingerprint":"python.lang.maintainability.return-not-in-function:cowork/token-optimizer/skills/token-optimizer/scripts/owned_hooks.py:72"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_cowork\" a function or an attribute? If it is a function, you may have meant is_cowork.is_cowork() because is_cowork.is_cowork is always true.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/quality_cache_gate.py","line":51,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:cowork/token-optimizer/skills/token-optimizer/scripts/quality_cache_gate.py:51"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_cowork\" a function or an attribute? If it is a function, you may have meant is_cowork.is_cowork() because is_cowork.is_cowork is always true.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/quality_cache_gate.py","line":76,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:cowork/token-optimizer/skills/token-optimizer/scripts/quality_cache_gate.py:76"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_error\" a function or an attribute? If it is a function, you may have meant event.is_error() because event.is_error is always true.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/structure_replay.py","line":455,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:cowork/token-optimizer/skills/token-optimizer/scripts/structure_replay.py:455"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_error\" a function or an attribute? If it is a function, you may have meant event.is_error() because event.is_error is always true.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/structure_replay.py","line":456,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:cowork/token-optimizer/skills/token-optimizer/scripts/structure_replay.py:456"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_whole_file\" a function or an attribute? If it is a function, you may have meant event.is_whole_file() because event.is_whole_file is always true.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/structure_replay.py","line":626,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:cowork/token-optimizer/skills/token-optimizer/scripts/structure_replay.py:626"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_whole_file\" a function or an attribute? If it is a function, you may have meant event.is_whole_file() because event.is_whole_file is always true.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/structure_replay.py","line":746,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:cowork/token-optimizer/skills/token-optimizer/scripts/structure_replay.py:746"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_error\" a function or an attribute? If it is a function, you may have meant event.is_error() because event.is_error is always true.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/structure_replay.py","line":773,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:cowork/token-optimizer/skills/token-optimizer/scripts/structure_replay.py:773"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_error\" a function or an attribute? If it is a function, you may have meant event.is_error() because event.is_error is always true.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/structure_replay.py","line":817,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:cowork/token-optimizer/skills/token-optimizer/scripts/structure_replay.py:817"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_error\" a function or an attribute? If it is a function, you may have meant event.is_error() because event.is_error is always true.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/structure_replay.py","line":821,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:cowork/token-optimizer/skills/token-optimizer/scripts/structure_replay.py:821"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_error\" a function or an attribute? If it is a function, you may have meant later_event.is_error() because later_event.is_error is always true.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/structure_replay.py","line":842,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:cowork/token-optimizer/skills/token-optimizer/scripts/structure_replay.py:842"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_error\" a function or an attribute? If it is a function, you may have meant event.is_error() because event.is_error is always true.","path":"cowork/token-optimizer/skills/token-optimizer/scripts/structure_replay.py","line":852,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:cowork/token-optimizer/skills/token-optimizer/scripts/structure_replay.py:852"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious actors a way to inject unexpected attributes.","path":"desktop/token-optimizer-desktop/hooks/register.tsx","line":1123,"fingerprint":"typescript.react.best-practice.react-props-spreading:desktop/token-optimizer-desktop/hooks/register.tsx:1123"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious actors a way to inject unexpected attributes.","path":"desktop/token-optimizer-desktop/hooks/register.tsx","line":1227,"fingerprint":"typescript.react.best-practice.react-props-spreading:desktop/token-optimizer-desktop/hooks/register.tsx:1227"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious actors a way to inject unexpected attributes.","path":"desktop/token-optimizer-desktop/hooks/register.tsx","line":1284,"fingerprint":"typescript.react.best-practice.react-props-spreading:desktop/token-optimizer-desktop/hooks/register.tsx:1284"},{"rule_id":"opengrep/javascript.lang.best-practice.lazy-load-module","severity":"medium","message":"Lazy loading can complicate code bundling if care is not taken, also `require`s are run synchronously by Node.js. If they are called from within a function, it may block other requests from being handled at a more critical time. The best practice is to `require` modules at the beginning of each file","path":"openclaw/src/dashboard.ts","line":657,"fingerprint":"javascript.lang.best-practice.lazy-load-module:openclaw/src/dashboard.ts:657"},{"rule_id":"opengrep/javascript.lang.best-practice.lazy-load-module","severity":"medium","message":"Lazy loading can complicate code bundling if care is not taken, also `require`s are run synchronously by Node.js. If they are called from within a function, it may block other requests from being handled at a more critical time. The best practice is to `require` modules at the beginning of each file","path":"openclaw/src/dashboard.ts","line":666,"fingerprint":"javascript.lang.best-practice.lazy-load-module:openclaw/src/dashboard.ts:666"},{"rule_id":"opengrep/javascript.lang.best-practice.lazy-load-module","severity":"medium","message":"Lazy loading can complicate code bundling if care is not taken, also `require`s are run synchronously by Node.js. If they are called from within a function, it may block other requests from being handled at a more critical time. The best practice is to `require` modules at the beginning of each file","path":"openclaw/src/dashboard.ts","line":754,"fingerprint":"javascript.lang.best-practice.lazy-load-module:openclaw/src/dashboard.ts:754"},{"rule_id":"opengrep/javascript.lang.best-practice.lazy-load-module","severity":"medium","message":"Lazy loading can complicate code bundling if care is not taken, also `require`s are run synchronously by Node.js. If they are called from within a function, it may block other requests from being handled at a more critical time. The best practice is to `require` modules at the beginning of each file","path":"openclaw/src/dashboard.ts","line":817,"fingerprint":"javascript.lang.best-practice.lazy-load-module:openclaw/src/dashboard.ts:817"},{"rule_id":"opengrep/python.lang.maintainability.return-not-in-function","severity":"medium","message":"`return` only makes sense inside a function","path":"plugins/token-optimizer/skills/fleet-auditor/scripts/fleet.py","line":1478,"fingerprint":"python.lang.maintainability.return-not-in-function:plugins/token-optimizer/skills/fleet-auditor/scripts/fleet.py:1478"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"plugins/token-optimizer/skills/fleet-auditor/scripts/fleet.py","line":1651,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:plugins/token-optimizer/skills/fleet-auditor/scripts/fleet.py:1651"},{"rule_id":"opengrep/python.lang.maintainability.return-not-in-function","severity":"medium","message":"`return` only makes sense inside a function","path":"plugins/token-optimizer/skills/fleet-auditor/scripts/fleet_base.py","line":36,"fingerprint":"python.lang.maintainability.return-not-in-function:plugins/token-optimizer/skills/fleet-auditor/scripts/fleet_base.py:36"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"plugins/token-optimizer/skills/fleet-auditor/scripts/fleet_base.py","line":85,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:plugins/token-optimizer/skills/fleet-auditor/scripts/fleet_base.py:85"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"plugins/token-optimizer/skills/fleet-auditor/scripts/fleet_cursor_adapter.py","line":230,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:plugins/token-optimizer/skills/fleet-auditor/scripts/fleet_cursor_adapter.py:230"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_compact\" a function or an attribute? If it is a function, you may have meant _measure_facade.is_compact() because _measure_facade.is_compact is always true.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py","line":1527,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py:1527"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_compact\" a function or an attribute? If it is a function, you may have meant _measure_facade.is_compact() because _measure_facade.is_compact is always true.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py","line":1536,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py:1536"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_compact\" a function or an attribute? If it is a function, you may have meant _measure_facade.is_compact() because _measure_facade.is_compact is always true.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py","line":1549,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py:1549"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_codex\" a function or an attribute? If it is a function, you may have meant _measure_facade.is_codex() because _measure_facade.is_codex is always true.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py","line":2432,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py:2432"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_codex\" a function or an attribute? If it is a function, you may have meant _measure_facade.is_codex() because _measure_facade.is_codex is always true.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py","line":2454,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py:2454"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_codex\" a function or an attribute? If it is a function, you may have meant _measure_facade.is_codex() because _measure_facade.is_codex is always true.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py","line":2455,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py:2455"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_codex\" a function or an attribute? If it is a function, you may have meant _measure_facade.is_codex() because _measure_facade.is_codex is always true.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py","line":2458,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py:2458"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_codex\" a function or an attribute? If it is a function, you may have meant _measure_facade.is_codex() because _measure_facade.is_codex is always true.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py","line":2459,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py:2459"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_codex\" a function or an attribute? If it is a function, you may have meant _measure_facade.is_codex() because _measure_facade.is_codex is always true.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py","line":2462,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py:2462"},{"rule_id":"opengrep/python.lang.maintainability.is-function-without-parentheses","severity":"medium","message":"Is \"is_codex\" a function or an attribute? If it is a function, you may have meant _measure_facade.is_codex() because _measure_facade.is_codex is always true.","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py","line":2465,"fingerprint":"python.lang.maintainability.is-function-without-parentheses:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/cli.py:2465"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/continuity.py","line":686,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/continuity.py:686"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/continuity.py","line":3465,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/continuity.py:3465"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/continuity.py","line":3586,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/continuity.py:3586"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/daemon.py","line":1640,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/daemon.py:1640"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/file_refetch.py","line":245,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/file_refetch.py:245"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/file_refetch.py","line":247,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/file_refetch.py:247"},{"rule_id":"opengrep/python.lang.correctness.common-mistakes.string-concat-in-list","severity":"medium","message":"Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list?","path":"plugins/token-optimizer/skills/token-optimizer/scripts/_measure/file_refetch.py","line":249,"fingerprint":"python.lang.correctness.common-mistakes.string-concat-in-list:plugins/token-optimizer/skills/token-optimizer/scripts/_measure/file_refetch.py:249"}],"evidence":[],"data":{},"error":null},{"analyzer":"qual-testing","pillar":"quality","status":"ok","tool_version":null,"metrics":{"check:has_tests":1.0,"check:test_ratio":0.6964,"check:ci_present":1.0,"check:ci_runs_tests":1.0,"check:ci_runs_lint":0.0,"check:tests_cochange":1.0,"test_lines":192468.0,"source_lines":552768.0,"test_ratio":0.3482,"ci_files":8.0,"cochange_share":0.836,"cochange_commits":250.0},"findings":[],"evidence":[{"kind":"ci","description":"CI config: .github/workflows/cla.yml","ref":".github/workflows/cla.yml","url":null,"weight":0.0},{"kind":"ci","description":"CI config: .github/workflows/deploy-docs.yml","ref":".github/workflows/deploy-docs.yml","url":null,"weight":0.0},{"kind":"ci","description":"CI config: .github/workflows/file-size.yml","ref":".github/workflows/file-size.yml","url":null,"weight":0.0},{"kind":"ci","description":"CI config: .github/workflows/refresh-prices.yml","ref":".github/workflows/refresh-prices.yml","url":null,"weight":0.0},{"kind":"ci","description":"CI config: .github/workflows/release-opencode.yml","ref":".github/workflows/release-opencode.yml","url":null,"weight":0.0},{"kind":"ci","description":"CI config: .github/workflows/sign-release.yml","ref":".github/workflows/sign-release.yml","url":null,"weight":0.0},{"kind":"ci","description":"CI config: .github/workflows/split-verify.yml","ref":".github/workflows/split-verify.yml","url":null,"weight":0.0},{"kind":"ci","description":"CI config: .github/workflows/tests.yml","ref":".github/workflows/tests.yml","url":null,"weight":0.0},{"kind":"ci","description":"CI runs tests (pytest, npm test, bun test)","ref":null,"url":null,"weight":0.0}],"data":{"test_commands":["pytest","npm test","bun test"],"lint_commands":[]},"error":null},{"analyzer":"qual-docs","pillar":"quality","status":"ok","tool_version":null,"metrics":{"check:readme":1.0,"check:license":1.0,"check:contributing":0.0,"check:changelog":1.0,"readme_lines":594.0},"findings":[],"evidence":[{"kind":"docs","description":"README.md","ref":"README.md","url":null,"weight":0.0},{"kind":"docs","description":"LICENSE","ref":"LICENSE","url":null,"weight":0.0},{"kind":"docs","description":"CHANGELOG.md","ref":"CHANGELOG.md","url":null,"weight":0.0}],"data":{},"error":null},{"analyzer":"qual-type-safety","pillar":"quality","status":"ok","tool_version":null,"metrics":{"check:strict_config":0.0636,"check:low_escape_density":1.0,"escapes":1236.0,"escapes_per_kloc":2.343},"findings":[],"evidence":[{"kind":"typing","description":"TypeScript strict type checking: desktop/token-optimizer-desktop/tsconfig.pure.json","ref":"desktop/token-optimizer-desktop/tsconfig.pure.json","url":null,"weight":0.0}],"data":{},"error":null},{"analyzer":"x-blame","pillar":"ai_provenance","status":"ok","tool_version":"git-blame","metrics":{"ai_lines":79883.0,"other_lines":320112.0,"files_blamed":728.0,"blame_failures":0.0,"quality:ai_findings":23.0,"quality:ai_per_kloc":0.288,"quality:other_findings":122.0,"quality:other_per_kloc":0.381,"quality:ratio":0.76,"security:ai_findings":37.0,"security:ai_per_kloc":0.463,"security:other_findings":206.0,"security:other_per_kloc":0.644,"security:ratio":0.72},"findings":[],"evidence":[],"data":{"sampled":true,"comparable":true},"error":null}],"flags":[]}