Commit Graph

47 Commits

Author SHA1 Message Date
Ethanfel a3bb718bd2 Fail closed on duplicate keys and observed calls 2026-07-02 18:49:21 +02:00
Ethanfel 73bdca9e1e Track chained static extraction aliases 2026-07-02 18:37:17 +02:00
Ethanfel 3cf4a5eb52 Fail closed on namespace dunders and metadata types 2026-07-02 18:29:47 +02:00
Ethanfel f7143e7bac Fail closed on namespace aliases and input observations 2026-07-02 18:19:48 +02:00
Ethanfel bf46f9b389 Fail closed on duplicate nodes and observed input types 2026-07-02 18:08:48 +02:00
Ethanfel 3219ec0c39 Track starred collection aliases in static extraction 2026-07-02 17:59:53 +02:00
Ethanfel c6d2b2d645 Invalidate mapped classes on signature attribute observation 2026-07-02 17:53:04 +02:00
Ethanfel 07822bc3ec Fail closed on arbitrary static extraction calls 2026-07-02 17:47:11 +02:00
Ethanfel 79d9921ba6 Track starred unpack aliases in static extraction 2026-07-02 17:37:06 +02:00
Ethanfel 5844a0a433 Track namespace-derived class aliases 2026-07-02 17:30:00 +02:00
Ethanfel b560f238a1 Cover type parameter class extraction hazards 2026-07-02 17:23:58 +02:00
Ethanfel 7c4b83ed0e Track namespace and getattr aliases 2026-07-02 17:19:07 +02:00
Ethanfel 065c9ae7ec Skip nontrivial class creation signatures 2026-07-02 17:12:50 +02:00
Ethanfel 34e53e8692 Invalidate namespace lookup mutations 2026-07-02 17:07:25 +02:00
Ethanfel 97e0126a1d Detect getattr mutating method calls 2026-07-02 17:01:08 +02:00
Ethanfel 2ad3cd3a09 Invalidate dynamic namespace mutations 2026-07-02 16:55:52 +02:00
Ethanfel d1f49e7c95 Track mapping and class attribute aliases 2026-07-02 16:47:39 +02:00
Ethanfel f26e441e03 Fail closed on invalid node mapping keys 2026-07-02 16:39:06 +02:00
Ethanfel 2c9452ae67 Fail closed on invalid display mappings 2026-07-02 16:35:19 +02:00
Ethanfel 7e4e85a0bd Fail closed on dynamic patches and displays 2026-07-02 16:27:48 +02:00
Ethanfel 9752248ee9 Track unpacked and class attribute aliases 2026-07-02 16:12:32 +02:00
Ethanfel 05fa411d47 Fail closed on walrus bindings and invalid input sections 2026-07-02 16:00:05 +02:00
Ethanfel f5d72b494d Fail closed on decorated input types and nested aliases 2026-07-02 15:47:17 +02:00
Ethanfel 86ea12924c Invalidate mappings on duplicate keys and class aliases 2026-07-02 15:34:50 +02:00
Ethanfel 51db0d16e5 Skip decorated and patched mapped classes 2026-07-02 15:19:22 +02:00
Ethanfel fc92d1db24 Invalidate static extraction for exception and type alias bindings 2026-07-02 15:08:19 +02:00
Ethanfel 8f872baf0b Invalidate inputs from class definition-time mutations 2026-07-02 14:56:13 +02:00
Ethanfel 317788572e Detect definition-time mutating expressions 2026-07-02 14:50:03 +02:00
Ethanfel 65c3a57052 Resolve node mappings at assignment time 2026-07-02 14:40:16 +02:00
Ethanfel 45e3cbaad8 Detect mutating calls inside statements 2026-07-02 14:29:04 +02:00
Ethanfel 6c2653c803 Fail closed on final input bindings and transitive aliases 2026-07-02 14:18:38 +02:00
Ethanfel 99d2bb25da Fail closed on mutable module captures in class signatures 2026-07-02 14:09:07 +02:00
Ethanfel 034e07269d Fail closed on class alias mutations 2026-07-02 13:58:58 +02:00
Ethanfel bebd4e09aa Resolve input and class attribute environments correctly 2026-07-02 13:53:45 +02:00
Ethanfel 67b875cdd5 Require mapped classes to remain top-level bindings 2026-07-02 13:45:45 +02:00
Ethanfel 90b7e3e872 Fail closed on invalid return name declarations 2026-07-02 13:34:13 +02:00
Ethanfel 0456e8033a Fail closed on invalid return names 2026-07-02 13:29:51 +02:00
Ethanfel 479a70f377 Evaluate class signatures with definition-time env 2026-07-02 13:24:02 +02:00
Ethanfel c8c1205bde Skip extraction after wildcard imports 2026-07-02 13:14:16 +02:00
Ethanfel b2b1bd16bd Invalidate static extraction on nested wildcard imports 2026-07-02 13:06:51 +02:00
Ethanfel 2845daf90c Invalidate static extraction on annotated aliases and wildcard imports 2026-07-02 12:58:24 +02:00
Ethanfel fae0c312bc Invalidate static extraction on rebinding and alias mutation 2026-07-02 12:50:06 +02:00
Ethanfel 21a29b8846 Invalidate static extraction on deletion and mutation 2026-07-02 12:39:38 +02:00
Ethanfel 6be0fe9d1e Fail closed on dynamic node mapping extraction 2026-07-02 12:29:27 +02:00
Ethanfel 6a4617f002 Fail closed on dynamic static extraction inputs 2026-07-02 12:23:09 +02:00
Ethanfel 960c41b330 Harden static signature extraction 2026-07-02 12:13:50 +02:00
Ethanfel 669f209930 Add popular node signature extractor 2026-07-02 12:06:19 +02:00