{"bundle_type":"pith_open_graph_bundle","bundle_version":"1.0","pith_number":"pith:2025:TDON3U2PKPUZFX6O6VTDTI6RVR","short_pith_number":"pith:TDON3U2P","canonical_record":{"source":{"id":"2508.00422","kind":"arxiv","version":1},"metadata":{"license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","primary_cat":"cs.PL","submitted_at":"2025-08-01T08:24:14Z","cross_cats_sorted":["cs.LG"],"title_canon_sha256":"bba7110ab352752d7f783c71ad16afb751b524be5e07a6631a0cfdc166841ba4","abstract_canon_sha256":"f8ba242ec45cbcdbfa4ea042f888ceea8caf3cf3c11dea0c71d0be87f63aa9b5"},"schema_version":"1.0"},"canonical_sha256":"98dcddd34f53e992dfcef56639a3d1ac52f635c03824e9c2dd1c80be9779a13f","source":{"kind":"arxiv","id":"2508.00422","version":1},"source_aliases":[{"alias_kind":"arxiv","alias_value":"2508.00422","created_at":"2026-07-05T11:46:55Z"},{"alias_kind":"arxiv_version","alias_value":"2508.00422v1","created_at":"2026-07-05T11:46:55Z"},{"alias_kind":"doi","alias_value":"10.48550/arxiv.2508.00422","created_at":"2026-07-05T11:46:55Z"},{"alias_kind":"pith_short_12","alias_value":"TDON3U2PKPUZ","created_at":"2026-07-05T11:46:55Z"},{"alias_kind":"pith_short_16","alias_value":"TDON3U2PKPUZFX6O","created_at":"2026-07-05T11:46:55Z"},{"alias_kind":"pith_short_8","alias_value":"TDON3U2P","created_at":"2026-07-05T11:46:55Z"}],"events":[{"event_type":"record_created","subject_pith_number":"pith:2025:TDON3U2PKPUZFX6O6VTDTI6RVR","target":"record","payload":{"canonical_record":{"source":{"id":"2508.00422","kind":"arxiv","version":1},"metadata":{"license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","primary_cat":"cs.PL","submitted_at":"2025-08-01T08:24:14Z","cross_cats_sorted":["cs.LG"],"title_canon_sha256":"bba7110ab352752d7f783c71ad16afb751b524be5e07a6631a0cfdc166841ba4","abstract_canon_sha256":"f8ba242ec45cbcdbfa4ea042f888ceea8caf3cf3c11dea0c71d0be87f63aa9b5"},"schema_version":"1.0"},"canonical_sha256":"98dcddd34f53e992dfcef56639a3d1ac52f635c03824e9c2dd1c80be9779a13f","receipt":{"kind":"pith_receipt","key_id":"pith-v1-2026-05","algorithm":"ed25519","signed_at":"2026-07-05T11:46:55.848964Z","signature_b64":"DmsnH2GZY1IOIYQvMBhm0cGbNKp5fvRlrPTtvQhR2xAWd0eFr5Vb4I50t7rRTGLluQLeJQUnjDjunXfO1KjWDg==","signed_message":"canonical_sha256_bytes","builder_version":"pith-number-builder-2026-05-17-v1","receipt_version":"0.3","canonical_sha256":"98dcddd34f53e992dfcef56639a3d1ac52f635c03824e9c2dd1c80be9779a13f","last_reissued_at":"2026-07-05T11:46:55.848448Z","signature_status":"signed_v1","first_computed_at":"2026-07-05T11:46:55.848448Z","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54"},"source_kind":"arxiv","source_id":"2508.00422","source_version":1,"attestation_state":"computed"},"signer":{"signer_id":"pith.science","signer_type":"pith_registry","key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54"},"created_at":"2026-07-05T11:46:55Z","supersedes":[],"prev_event":null,"signature":{"signature_status":"signed_v1","algorithm":"ed25519","key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54","signature_b64":"L/4bd6W9UO41/U39hbtDW0DTIC7NuOp08DW3TeHZe6mbc/uCqF9VJDzZmJlR1Ddltt2IfTrGuXEbogzo4E9wBg==","signed_message":"open_graph_event_sha256_bytes","signed_at":"2026-08-05T03:25:11.775992Z"},"content_sha256":"8ed2f516c780386a1ba3ebfa486190daf2cf30f2ca9d255d11e94caa92d22ece","schema_version":"1.0","event_id":"sha256:8ed2f516c780386a1ba3ebfa486190daf2cf30f2ca9d255d11e94caa92d22ece"},{"event_type":"graph_snapshot","subject_pith_number":"pith:2025:TDON3U2PKPUZFX6O6VTDTI6RVR","target":"graph","payload":{"graph_snapshot":{"paper":{"title":"Automated Type Annotation in Python Using Large Language Models","license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","headline":"","cross_cats":["cs.LG"],"primary_cat":"cs.PL","authors_text":"Dhruv Kumar, Pankaj Jalote, Shashwat Jha, Varun Bharti","submitted_at":"2025-08-01T08:24:14Z","abstract_excerpt":"Type annotations in Python enhance maintainability and error detection. However, generating these annotations manually is error prone and requires extra effort. Traditional automation approaches like static analysis, machine learning, and deep learning struggle with limited type vocabularies, behavioral over approximation, and reliance on large labeled datasets. In this work, we explore the use of LLMs for generating type annotations in Python. We develop a generate check repair pipeline: the LLM proposes annotations guided by a Concrete Syntax Tree representation, a static type checker (Mypy)"},"claims":{"count":0,"items":[],"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"source":{"id":"2508.00422","kind":"arxiv","version":1},"verdict":{"id":null,"model_set":{},"created_at":null,"strongest_claim":"","one_line_summary":"","pipeline_version":null,"weakest_assumption":"","pith_extraction_headline":""},"integrity":{"clean":true,"summary":{"advisory":0,"critical":0,"by_detector":{},"informational":0},"endpoint":"/pith/2508.00422/integrity.json","findings":[],"available":true,"detectors_run":[],"snapshot_sha256":"c28c3603d3b5d939e8dc4c7e95fa8dfce3d595e45f758748cecf8e644a296938"},"references":{"count":0,"sample":[],"resolved_work":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57","internal_anchors":0},"formal_canon":{"evidence_count":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"author_claims":{"count":0,"strong_count":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"builder_version":"pith-number-builder-2026-05-17-v1"},"verdict_id":null},"signer":{"signer_id":"pith.science","signer_type":"pith_registry","key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54"},"created_at":"2026-07-05T11:46:55Z","supersedes":[],"prev_event":null,"signature":{"signature_status":"signed_v1","algorithm":"ed25519","key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54","signature_b64":"DorqwSdPk92KqRBjcDlx3pJgH1GYhpGBqMWap188etiNdKruOLzA5NplqwpgYdSCVFoApm0r+KMXv0C6OQJ5BA==","signed_message":"open_graph_event_sha256_bytes","signed_at":"2026-08-05T03:25:11.776881Z"},"content_sha256":"e24196e410b2d9737c52bc5a484bbb6d78536bd073bd86b4ad04c704d4d92087","schema_version":"1.0","event_id":"sha256:e24196e410b2d9737c52bc5a484bbb6d78536bd073bd86b4ad04c704d4d92087"}],"timestamp_proofs":[],"mirror_hints":[{"mirror_type":"https","name":"Pith Resolver","base_url":"https://pith.science","bundle_url":"https://pith.science/pith/TDON3U2PKPUZFX6O6VTDTI6RVR/bundle.json","state_url":"https://pith.science/pith/TDON3U2PKPUZFX6O6VTDTI6RVR/state.json","well_known_bundle_url":"https://pith.science/.well-known/pith/TDON3U2PKPUZFX6O6VTDTI6RVR/bundle.json","status":"primary"}],"public_keys":[{"key_id":"pith-v1-2026-05","algorithm":"ed25519","format":"raw","public_key_b64":"stVStoiQhXFxp4s2pdzPNoqVNBMojDU/fJ2db5S3CbM=","public_key_hex":"b2d552b68890857171a78b36a5dccf368a953413288c353f7c9d9d6f94b709b3","fingerprint_sha256_b32_first128bits":"RVFV5Z2OI2J3ZUO7ERDEBCYNKS","fingerprint_sha256_hex":"8d4b5ee74e4693bcd1df2446408b0d54","rotates_at":null,"url":"https://pith.science/pith-signing-key.json","notes":"Pith uses this Ed25519 key to sign canonical record SHA-256 digests. Verify with: ed25519_verify(public_key, message=canonical_sha256_bytes, signature=base64decode(signature_b64))."}],"merge_version":"pith-open-graph-merge-v1","built_at":"2026-08-05T03:25:11Z","links":{"resolver":"https://pith.science/pith/TDON3U2PKPUZFX6O6VTDTI6RVR","bundle":"https://pith.science/pith/TDON3U2PKPUZFX6O6VTDTI6RVR/bundle.json","state":"https://pith.science/pith/TDON3U2PKPUZFX6O6VTDTI6RVR/state.json","well_known_bundle":"https://pith.science/.well-known/pith/TDON3U2PKPUZFX6O6VTDTI6RVR/bundle.json"},"state":{"state_type":"pith_open_graph_state","state_version":"1.0","pith_number":"pith:2025:TDON3U2PKPUZFX6O6VTDTI6RVR","merge_version":"pith-open-graph-merge-v1","event_count":2,"valid_event_count":2,"invalid_event_count":0,"equivocation_count":0,"current":{"canonical_record":{"metadata":{"abstract_canon_sha256":"f8ba242ec45cbcdbfa4ea042f888ceea8caf3cf3c11dea0c71d0be87f63aa9b5","cross_cats_sorted":["cs.LG"],"license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","primary_cat":"cs.PL","submitted_at":"2025-08-01T08:24:14Z","title_canon_sha256":"bba7110ab352752d7f783c71ad16afb751b524be5e07a6631a0cfdc166841ba4"},"schema_version":"1.0","source":{"id":"2508.00422","kind":"arxiv","version":1}},"source_aliases":[{"alias_kind":"arxiv","alias_value":"2508.00422","created_at":"2026-07-05T11:46:55Z"},{"alias_kind":"arxiv_version","alias_value":"2508.00422v1","created_at":"2026-07-05T11:46:55Z"},{"alias_kind":"doi","alias_value":"10.48550/arxiv.2508.00422","created_at":"2026-07-05T11:46:55Z"},{"alias_kind":"pith_short_12","alias_value":"TDON3U2PKPUZ","created_at":"2026-07-05T11:46:55Z"},{"alias_kind":"pith_short_16","alias_value":"TDON3U2PKPUZFX6O","created_at":"2026-07-05T11:46:55Z"},{"alias_kind":"pith_short_8","alias_value":"TDON3U2P","created_at":"2026-07-05T11:46:55Z"}],"graph_snapshots":[{"event_id":"sha256:e24196e410b2d9737c52bc5a484bbb6d78536bd073bd86b4ad04c704d4d92087","target":"graph","created_at":"2026-07-05T11:46:55Z","signer":{"key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54","signer_id":"pith.science","signer_type":"pith_registry"},"payload":{"graph_snapshot":{"author_claims":{"count":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57","strong_count":0},"builder_version":"pith-number-builder-2026-05-17-v1","claims":{"count":0,"items":[],"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"formal_canon":{"evidence_count":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"integrity":{"available":true,"clean":true,"detectors_run":[],"endpoint":"/pith/2508.00422/integrity.json","findings":[],"snapshot_sha256":"c28c3603d3b5d939e8dc4c7e95fa8dfce3d595e45f758748cecf8e644a296938","summary":{"advisory":0,"by_detector":{},"critical":0,"informational":0}},"paper":{"abstract_excerpt":"Type annotations in Python enhance maintainability and error detection. However, generating these annotations manually is error prone and requires extra effort. Traditional automation approaches like static analysis, machine learning, and deep learning struggle with limited type vocabularies, behavioral over approximation, and reliance on large labeled datasets. In this work, we explore the use of LLMs for generating type annotations in Python. We develop a generate check repair pipeline: the LLM proposes annotations guided by a Concrete Syntax Tree representation, a static type checker (Mypy)","authors_text":"Dhruv Kumar, Pankaj Jalote, Shashwat Jha, Varun Bharti","cross_cats":["cs.LG"],"headline":"","license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","primary_cat":"cs.PL","submitted_at":"2025-08-01T08:24:14Z","title":"Automated Type Annotation in Python Using Large Language Models"},"references":{"count":0,"internal_anchors":0,"resolved_work":0,"sample":[],"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"source":{"id":"2508.00422","kind":"arxiv","version":1},"verdict":{"created_at":null,"id":null,"model_set":{},"one_line_summary":"","pipeline_version":null,"pith_extraction_headline":"","strongest_claim":"","weakest_assumption":""}},"verdict_id":null}}],"author_attestations":[],"timestamp_anchors":[],"storage_attestations":[],"citation_signatures":[],"replication_records":[],"corrections":[],"mirror_hints":[],"record_created":{"event_id":"sha256:8ed2f516c780386a1ba3ebfa486190daf2cf30f2ca9d255d11e94caa92d22ece","target":"record","created_at":"2026-07-05T11:46:55Z","signer":{"key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54","signer_id":"pith.science","signer_type":"pith_registry"},"payload":{"attestation_state":"computed","canonical_record":{"metadata":{"abstract_canon_sha256":"f8ba242ec45cbcdbfa4ea042f888ceea8caf3cf3c11dea0c71d0be87f63aa9b5","cross_cats_sorted":["cs.LG"],"license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","primary_cat":"cs.PL","submitted_at":"2025-08-01T08:24:14Z","title_canon_sha256":"bba7110ab352752d7f783c71ad16afb751b524be5e07a6631a0cfdc166841ba4"},"schema_version":"1.0","source":{"id":"2508.00422","kind":"arxiv","version":1}},"canonical_sha256":"98dcddd34f53e992dfcef56639a3d1ac52f635c03824e9c2dd1c80be9779a13f","receipt":{"algorithm":"ed25519","builder_version":"pith-number-builder-2026-05-17-v1","canonical_sha256":"98dcddd34f53e992dfcef56639a3d1ac52f635c03824e9c2dd1c80be9779a13f","first_computed_at":"2026-07-05T11:46:55.848448Z","key_id":"pith-v1-2026-05","kind":"pith_receipt","last_reissued_at":"2026-07-05T11:46:55.848448Z","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54","receipt_version":"0.3","signature_b64":"DmsnH2GZY1IOIYQvMBhm0cGbNKp5fvRlrPTtvQhR2xAWd0eFr5Vb4I50t7rRTGLluQLeJQUnjDjunXfO1KjWDg==","signature_status":"signed_v1","signed_at":"2026-07-05T11:46:55.848964Z","signed_message":"canonical_sha256_bytes"},"source_id":"2508.00422","source_kind":"arxiv","source_version":1}}},"equivocations":[],"invalid_events":[],"applied_event_ids":["sha256:8ed2f516c780386a1ba3ebfa486190daf2cf30f2ca9d255d11e94caa92d22ece","sha256:e24196e410b2d9737c52bc5a484bbb6d78536bd073bd86b4ad04c704d4d92087"],"state_sha256":"13e85ce6768591e51fcdf14fba5379e6847e9d89de8b7dda1149740a87816cbf"},"bundle_signature":{"signature_status":"signed_v1","algorithm":"ed25519","key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54","signature_b64":"hsB75SZP2lPIW0VbLpOmE51niaUoHrcgsUKo5H0Cs+7rDH60CVl+VEwve+qWH0yYHgkIknN/adrlZqwYVtSqCA==","signed_message":"bundle_sha256_bytes","signed_at":"2026-08-05T03:25:11.782569Z","bundle_sha256":"37ce3a6e15f4f2725954963475ae55769d7407ba56919bf2fe70d872d4119fd4"}}