rigortype 0.4.0 → 0.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (237) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +4 -3
  3. data/data/builtins/ruby_core/io.yml +1 -0
  4. data/data/builtins/ruby_core/proc.yml +4 -0
  5. data/data/builtins/ruby_core/random.yml +4 -0
  6. data/data/builtins/ruby_core/struct.yml +3 -0
  7. data/data/core_overlay/env.rbs +34 -0
  8. data/data/core_overlay/gc.rbs +50 -0
  9. data/data/core_overlay/hash.rbs +45 -0
  10. data/data/core_overlay/integer.rbs +31 -0
  11. data/data/core_overlay/io_buffer.rbs +27 -0
  12. data/data/core_overlay/kernel.rbs +40 -0
  13. data/data/core_overlay/match_data.rbs +28 -0
  14. data/data/core_overlay/module.rbs +51 -0
  15. data/data/core_overlay/object_space.rbs +29 -0
  16. data/data/core_overlay/proc.rbs +45 -0
  17. data/data/core_overlay/range.rbs +40 -0
  18. data/data/core_overlay/source_range.rbs +78 -0
  19. data/data/core_overlay/string.rbs +86 -0
  20. data/data/vendored_gem_sigs/prime/integer-extension.rbs +41 -0
  21. data/data/vendored_gem_sigs/prime/prime.rbs +372 -0
  22. data/docs/handbook/01-getting-started.md +3 -3
  23. data/docs/handbook/06-classes.md +3 -1
  24. data/docs/handbook/08-understanding-errors.md +3 -2
  25. data/docs/handbook/11-sig-gen.md +6 -0
  26. data/docs/handbook/appendix-liskov.md +5 -0
  27. data/docs/install.md +87 -15
  28. data/docs/manual/02-cli-reference.md +2 -2
  29. data/docs/manual/03-configuration.md +6 -1
  30. data/docs/manual/04-diagnostics.md +2 -1
  31. data/docs/manual/06-baseline.md +2 -0
  32. data/docs/manual/07-plugins.md +1 -1
  33. data/docs/manual/08-skills.md +4 -3
  34. data/docs/manual/12-caching.md +43 -4
  35. data/docs/manual/14-rails-quickstart.md +19 -11
  36. data/docs/manual/18-removing-dead-code.md +32 -2
  37. data/docs/manual/plugins/README.md +6 -1
  38. data/docs/manual/plugins/rigor-activerecord.md +21 -0
  39. data/docs/manual/plugins/rigor-alba.md +60 -0
  40. data/docs/manual/plugins/rigor-minitest.md +22 -4
  41. data/docs/manual/plugins/rigor-typelizer.md +71 -0
  42. data/lib/rigor/analysis/check_rules/ivar_write_collector.rb +27 -3
  43. data/lib/rigor/analysis/check_rules/lexical_method_sites.rb +21 -92
  44. data/lib/rigor/analysis/check_rules/ruby_deprecations.rb +275 -0
  45. data/lib/rigor/analysis/check_rules/rule_ids.rb +4 -0
  46. data/lib/rigor/analysis/check_rules/source_arity.rb +184 -61
  47. data/lib/rigor/analysis/check_rules.rb +407 -144
  48. data/lib/rigor/analysis/dependency_recorder.rb +215 -18
  49. data/lib/rigor/analysis/dependency_source_inference/builder.rb +8 -1
  50. data/lib/rigor/analysis/dependency_source_inference/gem_resolver.rb +21 -0
  51. data/lib/rigor/analysis/dependency_source_inference/index.rb +36 -11
  52. data/lib/rigor/analysis/dependency_source_inference/walker.rb +196 -27
  53. data/lib/rigor/analysis/erb_template_detector.rb +2 -1
  54. data/lib/rigor/analysis/incremental.rb +29 -9
  55. data/lib/rigor/analysis/incremental_run_slot/write_guard.rb +291 -0
  56. data/lib/rigor/analysis/incremental_run_slot.rb +173 -0
  57. data/lib/rigor/analysis/incremental_session.rb +287 -50
  58. data/lib/rigor/analysis/plugin_fact_fingerprint.rb +24 -13
  59. data/lib/rigor/analysis/reachability/graph.rb +123 -23
  60. data/lib/rigor/analysis/reachability/scan.rb +290 -36
  61. data/lib/rigor/analysis/reachability/scan_cache.rb +2 -1
  62. data/lib/rigor/analysis/rule_catalog.rb +43 -0
  63. data/lib/rigor/analysis/run_cache_key.rb +43 -9
  64. data/lib/rigor/analysis/run_stats.rb +2 -2
  65. data/lib/rigor/analysis/runner/diagnostic_aggregator.rb +88 -6
  66. data/lib/rigor/analysis/runner/pool_coordinator.rb +52 -13
  67. data/lib/rigor/analysis/runner/project_pre_passes.rb +21 -13
  68. data/lib/rigor/analysis/runner/run_snapshots.rb +6 -1
  69. data/lib/rigor/analysis/runner.rb +371 -49
  70. data/lib/rigor/analysis/shadow_harness.rb +27 -0
  71. data/lib/rigor/analysis/source_rbs_gate.rb +157 -0
  72. data/lib/rigor/analysis/template_unit_paths.rb +6 -4
  73. data/lib/rigor/analysis/template_units.rb +15 -5
  74. data/lib/rigor/analysis/worker_session.rb +11 -7
  75. data/lib/rigor/cache/descriptor.rb +40 -1
  76. data/lib/rigor/cache/file_digest.rb +28 -0
  77. data/lib/rigor/cache/incremental_snapshot.rb +92 -8
  78. data/lib/rigor/cache/store.rb +63 -3
  79. data/lib/rigor/cache/value_digest.rb +325 -0
  80. data/lib/rigor/cli/annotate_command.rb +5 -0
  81. data/lib/rigor/cli/baseline_command.rb +7 -18
  82. data/lib/rigor/cli/check_command.rb +85 -14
  83. data/lib/rigor/cli/doctor_command.rb +1 -1
  84. data/lib/rigor/cli/effects_report.rb +2 -2
  85. data/lib/rigor/cli/trace_command.rb +5 -0
  86. data/lib/rigor/cli/type_of_command.rb +5 -3
  87. data/lib/rigor/cli/unused_command.rb +16 -10
  88. data/lib/rigor/cli.rb +11 -3
  89. data/lib/rigor/config_audit.rb +3 -2
  90. data/lib/rigor/config_path.rb +29 -0
  91. data/lib/rigor/configuration/severity_profile.rb +11 -0
  92. data/lib/rigor/configuration.rb +52 -7
  93. data/lib/rigor/effects/plugin_facts.rb +6 -6
  94. data/lib/rigor/environment/bundle_sig_discovery.rb +5 -3
  95. data/lib/rigor/environment/gated_signature_guard.rb +43 -0
  96. data/lib/rigor/environment/gated_signature_plan.rb +339 -0
  97. data/lib/rigor/environment/lockfile_resolver.rb +10 -1
  98. data/lib/rigor/environment/rbs_collection_discovery.rb +10 -1
  99. data/lib/rigor/environment/rbs_coverage_report.rb +1 -1
  100. data/lib/rigor/environment/rbs_loader.rb +284 -15
  101. data/lib/rigor/environment/required_features.rb +206 -0
  102. data/lib/rigor/environment/source_rbs_synthesis.rb +147 -0
  103. data/lib/rigor/environment.rb +34 -73
  104. data/lib/rigor/inference/acceptance.rb +28 -3
  105. data/lib/rigor/inference/block_parameter_binder.rb +29 -13
  106. data/lib/rigor/inference/builtins/cruby_definers.rb +61 -0
  107. data/lib/rigor/inference/builtins/method_catalog.rb +3 -0
  108. data/lib/rigor/inference/captured_locals.rb +7 -1
  109. data/lib/rigor/inference/declaration_walk/context.rb +195 -0
  110. data/lib/rigor/inference/declaration_walk/errors.rb +18 -0
  111. data/lib/rigor/inference/declaration_walk/shadow.rb +147 -0
  112. data/lib/rigor/inference/declaration_walk/traversal.rb +441 -0
  113. data/lib/rigor/inference/declaration_walk.rb +7 -0
  114. data/lib/rigor/inference/def_node_resolver.rb +26 -3
  115. data/lib/rigor/inference/definer_resolution.rb +266 -0
  116. data/lib/rigor/inference/expression_typer.rb +351 -61
  117. data/lib/rigor/inference/external_ancestor_resolution.rb +13 -16
  118. data/lib/rigor/inference/global_write_census.rb +7 -4
  119. data/lib/rigor/inference/guard_rebinding.rb +54 -13
  120. data/lib/rigor/inference/in_effect_refinements/proc_literals.rb +83 -0
  121. data/lib/rigor/inference/in_effect_refinements/refine_defs.rb +54 -0
  122. data/lib/rigor/inference/in_effect_refinements/scope_reads.rb +282 -0
  123. data/lib/rigor/inference/in_effect_refinements/walk.rb +276 -0
  124. data/lib/rigor/inference/in_effect_refinements.rb +256 -0
  125. data/lib/rigor/inference/key_presence_guard/scan.rb +281 -0
  126. data/lib/rigor/inference/key_presence_guard.rb +303 -0
  127. data/lib/rigor/inference/macro_block_self_type.rb +73 -14
  128. data/lib/rigor/inference/method_dispatcher/alias_strict_nominals.rb +36 -0
  129. data/lib/rigor/inference/method_dispatcher/arithmetic_sequence_elements.rb +73 -0
  130. data/lib/rigor/inference/method_dispatcher/imprecise_argument.rb +68 -0
  131. data/lib/rigor/inference/method_dispatcher/integer_step_block_params.rb +81 -0
  132. data/lib/rigor/inference/method_dispatcher/iterator_dispatch.rb +6 -0
  133. data/lib/rigor/inference/method_dispatcher/keyword_arguments.rb +267 -0
  134. data/lib/rigor/inference/method_dispatcher/method_folding.rb +2 -1
  135. data/lib/rigor/inference/method_dispatcher/overload_selector.rb +122 -105
  136. data/lib/rigor/inference/method_dispatcher/rbs_dispatch.rb +305 -54
  137. data/lib/rigor/inference/method_dispatcher/splat_arity.rb +71 -0
  138. data/lib/rigor/inference/method_dispatcher.rb +44 -11
  139. data/lib/rigor/inference/module_function_state.rb +214 -0
  140. data/lib/rigor/inference/multi_target_binder.rb +21 -16
  141. data/lib/rigor/inference/narrowing.rb +166 -22
  142. data/lib/rigor/inference/object_mixins.rb +180 -0
  143. data/lib/rigor/inference/parameter_inference_collector.rb +10 -9
  144. data/lib/rigor/inference/project_patched_methods.rb +10 -5
  145. data/lib/rigor/inference/project_patched_scanner.rb +71 -3
  146. data/lib/rigor/inference/refine_census.rb +239 -0
  147. data/lib/rigor/inference/refine_self.rb +317 -0
  148. data/lib/rigor/inference/refined_dispatch/own_method.rb +403 -0
  149. data/lib/rigor/inference/refined_dispatch.rb +272 -0
  150. data/lib/rigor/inference/scope_indexer/certainty.rb +176 -0
  151. data/lib/rigor/inference/scope_indexer/class_cvars_collector.rb +35 -0
  152. data/lib/rigor/inference/scope_indexer/def_nestings_collector.rb +47 -0
  153. data/lib/rigor/inference/scope_indexer/layered_def_nestings.rb +36 -0
  154. data/lib/rigor/inference/scope_indexer/member_layouts_collector.rb +61 -0
  155. data/lib/rigor/inference/scope_indexer/mixin_accumulator.rb +143 -0
  156. data/lib/rigor/inference/scope_indexer/superclasses_collector.rb +64 -0
  157. data/lib/rigor/inference/scope_indexer.rb +2129 -354
  158. data/lib/rigor/inference/singleton_hook_decline.rb +253 -0
  159. data/lib/rigor/inference/statement_evaluator.rb +149 -32
  160. data/lib/rigor/inference/string_mutation.rb +9 -3
  161. data/lib/rigor/inference/synthetic_method_scanner.rb +2 -1
  162. data/lib/rigor/inference/version_guard.rb +19 -10
  163. data/lib/rigor/language_server/project_context.rb +31 -0
  164. data/lib/rigor/language_server/server.rb +18 -0
  165. data/lib/rigor/plugin/base.rb +28 -8
  166. data/lib/rigor/plugin/inflector.rb +1 -1
  167. data/lib/rigor/plugin/io_boundary.rb +124 -7
  168. data/lib/rigor/plugin/isolation.rb +1 -1
  169. data/lib/rigor/plugin/macro/block_as_method.rb +51 -8
  170. data/lib/rigor/plugin/trust_policy.rb +3 -3
  171. data/lib/rigor/project_environment.rb +29 -6
  172. data/lib/rigor/protection/discovery_seed.rb +18 -9
  173. data/lib/rigor/protection/mutation_cache.rb +4 -4
  174. data/lib/rigor/protection/mutator.rb +1 -1
  175. data/lib/rigor/reflection/constant_ancestors.rb +211 -46
  176. data/lib/rigor/reflection/constant_path.rb +33 -7
  177. data/lib/rigor/reflection.rb +41 -10
  178. data/lib/rigor/scope/discovery_index.rb +258 -3
  179. data/lib/rigor/scope/resolution_chain/relevance.rb +165 -0
  180. data/lib/rigor/scope/resolution_chain.rb +1032 -0
  181. data/lib/rigor/scope.rb +480 -328
  182. data/lib/rigor/sig_gen/alias_index.rb +1 -1
  183. data/lib/rigor/sig_gen/classification.rb +4 -1
  184. data/lib/rigor/sig_gen/effect_annotation.rb +2 -2
  185. data/lib/rigor/sig_gen/generator.rb +77 -21
  186. data/lib/rigor/sig_gen/method_candidate.rb +2 -2
  187. data/lib/rigor/sig_gen/skip_reason_catalog.rb +12 -0
  188. data/lib/rigor/source/alias_names.rb +52 -0
  189. data/lib/rigor/source/literals.rb +3 -2
  190. data/lib/rigor/source/symbol_name.rb +20 -0
  191. data/lib/rigor/type/combinator.rb +59 -3
  192. data/lib/rigor/type/float_range.rb +4 -1
  193. data/lib/rigor/type/nominal.rb +6 -1
  194. data/lib/rigor/version.rb +1 -1
  195. data/plugins/rigor-ac-library-rb/lib/rigor/plugin/ac_library_rb.rb +28 -0
  196. data/plugins/rigor-ac-library-rb/lib/rigor-ac-library-rb.rb +3 -0
  197. data/plugins/rigor-ac-library-rb/sig/ac_library_rb/convolution.rbs +7 -0
  198. data/plugins/rigor-ac-library-rb/sig/ac_library_rb/data_structures.rbs +160 -0
  199. data/plugins/rigor-ac-library-rb/sig/ac_library_rb/graph.rbs +94 -0
  200. data/plugins/rigor-ac-library-rb/sig/ac_library_rb/math.rbs +42 -0
  201. data/plugins/rigor-ac-library-rb/sig/ac_library_rb/modint.rbs +71 -0
  202. data/plugins/rigor-ac-library-rb/sig/ac_library_rb/object.rbs +37 -0
  203. data/plugins/rigor-ac-library-rb/sig/ac_library_rb/segtree.rbs +83 -0
  204. data/plugins/rigor-actionpack/lib/rigor/plugin/actionpack/analyzer.rb +2 -1
  205. data/plugins/rigor-activerecord/lib/rigor/plugin/activerecord/association_roots.rb +100 -0
  206. data/plugins/rigor-activerecord/lib/rigor/plugin/activerecord/model_discoverer.rb +94 -10
  207. data/plugins/rigor-activerecord/lib/rigor/plugin/activerecord.rb +43 -2
  208. data/plugins/rigor-activerecord/sig/active_record/relation.rbs +3 -1
  209. data/plugins/rigor-alba/lib/rigor/plugin/alba/resource_collector.rb +149 -0
  210. data/plugins/rigor-alba/lib/rigor/plugin/alba/resource_discoverer.rb +74 -0
  211. data/plugins/rigor-alba/lib/rigor/plugin/alba/resource_index.rb +104 -0
  212. data/plugins/rigor-alba/lib/rigor/plugin/alba.rb +85 -0
  213. data/plugins/rigor-alba/lib/rigor-alba.rb +3 -0
  214. data/plugins/rigor-alba/sig/alba.rbs +4 -0
  215. data/plugins/rigor-ffi/lib/rigor/plugin/ffi/analyzer.rb +2 -2
  216. data/plugins/rigor-ffi/lib/rigor/plugin/ffi/target_detector.rb +29 -12
  217. data/plugins/rigor-ffi/lib/rigor/plugin/ffi.rb +13 -2
  218. data/plugins/rigor-minitest/lib/rigor/plugin/minitest/assertion_analyzer.rb +130 -21
  219. data/plugins/rigor-minitest/lib/rigor/plugin/minitest.rb +6 -4
  220. data/plugins/rigor-pundit/lib/rigor/plugin/pundit/analyzer.rb +4 -4
  221. data/plugins/rigor-rails-i18n/lib/rigor/plugin/rails_i18n/analyzer.rb +1 -1
  222. data/plugins/rigor-rails-routes/lib/rigor/plugin/rails_routes/routes_parser.rb +1 -1
  223. data/plugins/rigor-rbs-inline/lib/rigor/plugin/rbs_inline.rb +31 -0
  224. data/plugins/rigor-typelizer/lib/rigor/plugin/typelizer/serializer_collector.rb +102 -0
  225. data/plugins/rigor-typelizer/lib/rigor/plugin/typelizer/serializer_discoverer.rb +87 -0
  226. data/plugins/rigor-typelizer/lib/rigor/plugin/typelizer/serializer_index.rb +76 -0
  227. data/plugins/rigor-typelizer/lib/rigor/plugin/typelizer.rb +73 -0
  228. data/plugins/rigor-typelizer/lib/rigor-typelizer.rb +3 -0
  229. data/sig/rigor/analysis/dependency_source_inference/index.rbs +1 -1
  230. data/sig/rigor/environment.rbs +2 -0
  231. data/sig/rigor/plugin/io_boundary.rbs +4 -0
  232. data/sig/rigor/scope.rbs +69 -4
  233. data/sig/rigor/source.rbs +4 -0
  234. data/sig/rigor.rbs +3 -1
  235. data/skills/rigor-project-init/SKILL.md +37 -11
  236. data/skills/rigor-project-init/references/02-configure.md +7 -2
  237. metadata +90 -1
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rigortype
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rigor contributors
@@ -310,12 +310,25 @@ files:
310
310
  - data/core_overlay/csv.rbs
311
311
  - data/core_overlay/enumerable.rbs
312
312
  - data/core_overlay/enumerator.rbs
313
+ - data/core_overlay/env.rbs
314
+ - data/core_overlay/gc.rbs
315
+ - data/core_overlay/hash.rbs
313
316
  - data/core_overlay/hash_rbs3.rbs
317
+ - data/core_overlay/integer.rbs
318
+ - data/core_overlay/io_buffer.rbs
319
+ - data/core_overlay/kernel.rbs
320
+ - data/core_overlay/match_data.rbs
321
+ - data/core_overlay/module.rbs
314
322
  - data/core_overlay/numeric.rbs
323
+ - data/core_overlay/object_space.rbs
315
324
  - data/core_overlay/pathname.rbs
325
+ - data/core_overlay/proc.rbs
316
326
  - data/core_overlay/process.rbs
317
327
  - data/core_overlay/psych.rbs
328
+ - data/core_overlay/range.rbs
318
329
  - data/core_overlay/resolv.rbs
330
+ - data/core_overlay/source_range.rbs
331
+ - data/core_overlay/string.rbs
319
332
  - data/core_overlay/string_io.rbs
320
333
  - data/core_overlay/string_scanner.rbs
321
334
  - data/effects/core.yml
@@ -334,6 +347,8 @@ files:
334
347
  - data/vendored_gem_sigs/nokogiri/nokogiri.rbs
335
348
  - data/vendored_gem_sigs/nokogiri/nokogiri_html5.rbs
336
349
  - data/vendored_gem_sigs/pg/pg.rbs
350
+ - data/vendored_gem_sigs/prime/integer-extension.rbs
351
+ - data/vendored_gem_sigs/prime/prime.rbs
337
352
  - data/vendored_gem_sigs/prism/prism_supplement.rbs
338
353
  - data/vendored_gem_sigs/racc/racc.rbs
339
354
  - data/vendored_gem_sigs/redis/errors.rbs
@@ -398,6 +413,7 @@ files:
398
413
  - docs/manual/plugins/rigor-activerecord.md
399
414
  - docs/manual/plugins/rigor-activestorage.md
400
415
  - docs/manual/plugins/rigor-activesupport-core-ext.md
416
+ - docs/manual/plugins/rigor-alba.md
401
417
  - docs/manual/plugins/rigor-devise.md
402
418
  - docs/manual/plugins/rigor-dry-schema.md
403
419
  - docs/manual/plugins/rigor-dry-struct.md
@@ -421,6 +437,7 @@ files:
421
437
  - docs/manual/plugins/rigor-sinatra.md
422
438
  - docs/manual/plugins/rigor-sorbet.md
423
439
  - docs/manual/plugins/rigor-statesman.md
440
+ - docs/manual/plugins/rigor-typelizer.md
424
441
  - docs/manual/plugins/rigor-typescript-utility-types.md
425
442
  - exe/rigor
426
443
  - lib/rigor.rb
@@ -438,6 +455,7 @@ files:
438
455
  - lib/rigor/analysis/check_rules/main_pass_collector.rb
439
456
  - lib/rigor/analysis/check_rules/published_constant_guard.rb
440
457
  - lib/rigor/analysis/check_rules/return_in_ensure_collector.rb
458
+ - lib/rigor/analysis/check_rules/ruby_deprecations.rb
441
459
  - lib/rigor/analysis/check_rules/rule_ids.rb
442
460
  - lib/rigor/analysis/check_rules/rule_walk.rb
443
461
  - lib/rigor/analysis/check_rules/self_closedness_scanner.rb
@@ -460,6 +478,8 @@ files:
460
478
  - lib/rigor/analysis/erb_template_detector.rb
461
479
  - lib/rigor/analysis/fact_store.rb
462
480
  - lib/rigor/analysis/incremental.rb
481
+ - lib/rigor/analysis/incremental_run_slot.rb
482
+ - lib/rigor/analysis/incremental_run_slot/write_guard.rb
463
483
  - lib/rigor/analysis/incremental_session.rb
464
484
  - lib/rigor/analysis/path_expansion.rb
465
485
  - lib/rigor/analysis/plugin_fact_fingerprint.rb
@@ -487,6 +507,8 @@ files:
487
507
  - lib/rigor/analysis/runner/run_snapshots.rb
488
508
  - lib/rigor/analysis/self_call_resolution_recorder.rb
489
509
  - lib/rigor/analysis/severity_stamp.rb
510
+ - lib/rigor/analysis/shadow_harness.rb
511
+ - lib/rigor/analysis/source_rbs_gate.rb
490
512
  - lib/rigor/analysis/template_unit_collector.rb
491
513
  - lib/rigor/analysis/template_unit_paths.rb
492
514
  - lib/rigor/analysis/template_unit_positions.rb
@@ -514,6 +536,7 @@ files:
514
536
  - lib/rigor/cache/rbs_environment_marshal_patch.rb
515
537
  - lib/rigor/cache/rbs_known_class_names.rb
516
538
  - lib/rigor/cache/store.rb
539
+ - lib/rigor/cache/value_digest.rb
517
540
  - lib/rigor/ci_detector.rb
518
541
  - lib/rigor/cli.rb
519
542
  - lib/rigor/cli/annotate_command.rb
@@ -574,6 +597,7 @@ files:
574
597
  - lib/rigor/cli/unused_command.rb
575
598
  - lib/rigor/cli/upgrade_command.rb
576
599
  - lib/rigor/config_audit.rb
600
+ - lib/rigor/config_path.rb
577
601
  - lib/rigor/configuration.rb
578
602
  - lib/rigor/configuration/dependencies.rb
579
603
  - lib/rigor/configuration/severity_profile.rb
@@ -626,6 +650,8 @@ files:
626
650
  - lib/rigor/environment/constant_type_cache_holder.rb
627
651
  - lib/rigor/environment/default_libraries.rb
628
652
  - lib/rigor/environment/failure_slot.rb
653
+ - lib/rigor/environment/gated_signature_guard.rb
654
+ - lib/rigor/environment/gated_signature_plan.rb
629
655
  - lib/rigor/environment/hkt_registry_holder.rb
630
656
  - lib/rigor/environment/installed_gem_set.rb
631
657
  - lib/rigor/environment/lockfile_resolver.rb
@@ -638,6 +664,8 @@ files:
638
664
  - lib/rigor/environment/rbs_loader.rb
639
665
  - lib/rigor/environment/reflection.rb
640
666
  - lib/rigor/environment/reporters.rb
667
+ - lib/rigor/environment/required_features.rb
668
+ - lib/rigor/environment/source_rbs_synthesis.rb
641
669
  - lib/rigor/flow_contribution.rb
642
670
  - lib/rigor/flow_contribution/conflict.rb
643
671
  - lib/rigor/flow_contribution/element.rb
@@ -656,6 +684,7 @@ files:
656
684
  - lib/rigor/inference/builtins/array_catalog.rb
657
685
  - lib/rigor/inference/builtins/comparable_catalog.rb
658
686
  - lib/rigor/inference/builtins/complex_catalog.rb
687
+ - lib/rigor/inference/builtins/cruby_definers.rb
659
688
  - lib/rigor/inference/builtins/date_catalog.rb
660
689
  - lib/rigor/inference/builtins/encoding_catalog.rb
661
690
  - lib/rigor/inference/builtins/enumerable_catalog.rb
@@ -677,10 +706,16 @@ files:
677
706
  - lib/rigor/inference/closure_escape_analyzer.rb
678
707
  - lib/rigor/inference/content_join.rb
679
708
  - lib/rigor/inference/coverage_scanner.rb
709
+ - lib/rigor/inference/declaration_walk.rb
710
+ - lib/rigor/inference/declaration_walk/context.rb
711
+ - lib/rigor/inference/declaration_walk/errors.rb
712
+ - lib/rigor/inference/declaration_walk/shadow.rb
713
+ - lib/rigor/inference/declaration_walk/traversal.rb
680
714
  - lib/rigor/inference/def_handle.rb
681
715
  - lib/rigor/inference/def_node_resolver.rb
682
716
  - lib/rigor/inference/def_return_typer.rb
683
717
  - lib/rigor/inference/define_method_block_self.rb
718
+ - lib/rigor/inference/definer_resolution.rb
684
719
  - lib/rigor/inference/dynamic_origin.rb
685
720
  - lib/rigor/inference/element_read_widening.rb
686
721
  - lib/rigor/inference/error_info.rb
@@ -699,9 +734,16 @@ files:
699
734
  - lib/rigor/inference/hkt_reducer.rb
700
735
  - lib/rigor/inference/hkt_registry.rb
701
736
  - lib/rigor/inference/hkt_sugar_translator.rb
737
+ - lib/rigor/inference/in_effect_refinements.rb
738
+ - lib/rigor/inference/in_effect_refinements/proc_literals.rb
739
+ - lib/rigor/inference/in_effect_refinements/refine_defs.rb
740
+ - lib/rigor/inference/in_effect_refinements/scope_reads.rb
741
+ - lib/rigor/inference/in_effect_refinements/walk.rb
702
742
  - lib/rigor/inference/index_write_widening.rb
703
743
  - lib/rigor/inference/indexed_narrowing.rb
704
744
  - lib/rigor/inference/jump_targets.rb
745
+ - lib/rigor/inference/key_presence_guard.rb
746
+ - lib/rigor/inference/key_presence_guard/scan.rb
705
747
  - lib/rigor/inference/last_line.rb
706
748
  - lib/rigor/inference/last_line/implicit_self.rb
707
749
  - lib/rigor/inference/last_line/self_evidence.rb
@@ -714,6 +756,7 @@ files:
714
756
  - lib/rigor/inference/match_rebinding/self_calls.rb
715
757
  - lib/rigor/inference/method_dispatcher.rb
716
758
  - lib/rigor/inference/method_dispatcher/alias_strict_nominals.rb
759
+ - lib/rigor/inference/method_dispatcher/arithmetic_sequence_elements.rb
717
760
  - lib/rigor/inference/method_dispatcher/array_to_h_folding.rb
718
761
  - lib/rigor/inference/method_dispatcher/block_folding.rb
719
762
  - lib/rigor/inference/method_dispatcher/call_context.rb
@@ -723,9 +766,12 @@ files:
723
766
  - lib/rigor/inference/method_dispatcher/facet_distribution.rb
724
767
  - lib/rigor/inference/method_dispatcher/file_folding.rb
725
768
  - lib/rigor/inference/method_dispatcher/hash_transform_keys_folding.rb
769
+ - lib/rigor/inference/method_dispatcher/imprecise_argument.rb
770
+ - lib/rigor/inference/method_dispatcher/integer_step_block_params.rb
726
771
  - lib/rigor/inference/method_dispatcher/iterator_dispatch.rb
727
772
  - lib/rigor/inference/method_dispatcher/json_folding.rb
728
773
  - lib/rigor/inference/method_dispatcher/kernel_dispatch.rb
774
+ - lib/rigor/inference/method_dispatcher/keyword_arguments.rb
729
775
  - lib/rigor/inference/method_dispatcher/literal_string_folding.rb
730
776
  - lib/rigor/inference/method_dispatcher/match_data_folding.rb
731
777
  - lib/rigor/inference/method_dispatcher/math_folding.rb
@@ -745,16 +791,19 @@ files:
745
791
  - lib/rigor/inference/method_dispatcher/shellwords_folding.rb
746
792
  - lib/rigor/inference/method_dispatcher/singleton_folding.rb
747
793
  - lib/rigor/inference/method_dispatcher/singleton_mixin_dispatch.rb
794
+ - lib/rigor/inference/method_dispatcher/splat_arity.rb
748
795
  - lib/rigor/inference/method_dispatcher/struct_folding.rb
749
796
  - lib/rigor/inference/method_dispatcher/struct_materialization.rb
750
797
  - lib/rigor/inference/method_dispatcher/time_folding.rb
751
798
  - lib/rigor/inference/method_dispatcher/universal_object_dispatch.rb
752
799
  - lib/rigor/inference/method_dispatcher/uri_folding.rb
753
800
  - lib/rigor/inference/method_parameter_binder.rb
801
+ - lib/rigor/inference/module_function_state.rb
754
802
  - lib/rigor/inference/multi_target_binder.rb
755
803
  - lib/rigor/inference/mutation_rejoin.rb
756
804
  - lib/rigor/inference/mutation_widening.rb
757
805
  - lib/rigor/inference/narrowing.rb
806
+ - lib/rigor/inference/object_mixins.rb
758
807
  - lib/rigor/inference/operand_effects.rb
759
808
  - lib/rigor/inference/operand_walk.rb
760
809
  - lib/rigor/inference/optimistic_origin.rb
@@ -770,11 +819,23 @@ files:
770
819
  - lib/rigor/inference/rbs_type_translator.rb
771
820
  - lib/rigor/inference/receiver_alias.rb
772
821
  - lib/rigor/inference/receiver_blind_block.rb
822
+ - lib/rigor/inference/refine_census.rb
823
+ - lib/rigor/inference/refine_self.rb
824
+ - lib/rigor/inference/refined_dispatch.rb
825
+ - lib/rigor/inference/refined_dispatch/own_method.rb
773
826
  - lib/rigor/inference/refinement_mutation.rb
774
827
  - lib/rigor/inference/repeated_or_writes.rb
775
828
  - lib/rigor/inference/return_barrier.rb
776
829
  - lib/rigor/inference/rewrite_mutation.rb
777
830
  - lib/rigor/inference/scope_indexer.rb
831
+ - lib/rigor/inference/scope_indexer/certainty.rb
832
+ - lib/rigor/inference/scope_indexer/class_cvars_collector.rb
833
+ - lib/rigor/inference/scope_indexer/def_nestings_collector.rb
834
+ - lib/rigor/inference/scope_indexer/layered_def_nestings.rb
835
+ - lib/rigor/inference/scope_indexer/member_layouts_collector.rb
836
+ - lib/rigor/inference/scope_indexer/mixin_accumulator.rb
837
+ - lib/rigor/inference/scope_indexer/superclasses_collector.rb
838
+ - lib/rigor/inference/singleton_hook_decline.rb
778
839
  - lib/rigor/inference/singleton_object_constant.rb
779
840
  - lib/rigor/inference/statement_evaluator.rb
780
841
  - lib/rigor/inference/stored_block_call.rb
@@ -868,6 +929,8 @@ files:
868
929
  - lib/rigor/runtime/jit.rb
869
930
  - lib/rigor/scope.rb
870
931
  - lib/rigor/scope/discovery_index.rb
932
+ - lib/rigor/scope/resolution_chain.rb
933
+ - lib/rigor/scope/resolution_chain/relevance.rb
871
934
  - lib/rigor/sig_gen.rb
872
935
  - lib/rigor/sig_gen/alias_index.rb
873
936
  - lib/rigor/sig_gen/classification.rb
@@ -890,12 +953,14 @@ files:
890
953
  - lib/rigor/sig_gen/writer.rb
891
954
  - lib/rigor/signature_path_audit.rb
892
955
  - lib/rigor/source.rb
956
+ - lib/rigor/source/alias_names.rb
893
957
  - lib/rigor/source/constant_path.rb
894
958
  - lib/rigor/source/literals.rb
895
959
  - lib/rigor/source/node_children.rb
896
960
  - lib/rigor/source/node_locator.rb
897
961
  - lib/rigor/source/node_walker.rb
898
962
  - lib/rigor/source/parameter_envelope.rb
963
+ - lib/rigor/source/symbol_name.rb
899
964
  - lib/rigor/testing.rb
900
965
  - lib/rigor/triage.rb
901
966
  - lib/rigor/triage/catalogue.rb
@@ -943,6 +1008,15 @@ files:
943
1008
  - lib/rigor/value_semantics.rb
944
1009
  - lib/rigor/version.rb
945
1010
  - lib/rigortype.rb
1011
+ - plugins/rigor-ac-library-rb/lib/rigor-ac-library-rb.rb
1012
+ - plugins/rigor-ac-library-rb/lib/rigor/plugin/ac_library_rb.rb
1013
+ - plugins/rigor-ac-library-rb/sig/ac_library_rb/convolution.rbs
1014
+ - plugins/rigor-ac-library-rb/sig/ac_library_rb/data_structures.rbs
1015
+ - plugins/rigor-ac-library-rb/sig/ac_library_rb/graph.rbs
1016
+ - plugins/rigor-ac-library-rb/sig/ac_library_rb/math.rbs
1017
+ - plugins/rigor-ac-library-rb/sig/ac_library_rb/modint.rbs
1018
+ - plugins/rigor-ac-library-rb/sig/ac_library_rb/object.rbs
1019
+ - plugins/rigor-ac-library-rb/sig/ac_library_rb/segtree.rbs
946
1020
  - plugins/rigor-actioncable/lib/rigor-actioncable.rb
947
1021
  - plugins/rigor-actioncable/lib/rigor/plugin/actioncable.rb
948
1022
  - plugins/rigor-actioncable/lib/rigor/plugin/actioncable/analyzer.rb
@@ -983,6 +1057,7 @@ files:
983
1057
  - plugins/rigor-activerecord/lib/rigor-activerecord.rb
984
1058
  - plugins/rigor-activerecord/lib/rigor/plugin/activerecord.rb
985
1059
  - plugins/rigor-activerecord/lib/rigor/plugin/activerecord/analyzer.rb
1060
+ - plugins/rigor-activerecord/lib/rigor/plugin/activerecord/association_roots.rb
986
1061
  - plugins/rigor-activerecord/lib/rigor/plugin/activerecord/effects.rb
987
1062
  - plugins/rigor-activerecord/lib/rigor/plugin/activerecord/model_discoverer.rb
988
1063
  - plugins/rigor-activerecord/lib/rigor/plugin/activerecord/model_index.rb
@@ -1001,6 +1076,12 @@ files:
1001
1076
  - plugins/rigor-activesupport-core-ext/lib/rigor/plugin/activesupport_core_ext.rb
1002
1077
  - plugins/rigor-activesupport-core-ext/lib/rigor/plugin/activesupport_core_ext/effects.rb
1003
1078
  - plugins/rigor-activesupport-core-ext/sig/active_support/core_ext.rbs
1079
+ - plugins/rigor-alba/lib/rigor-alba.rb
1080
+ - plugins/rigor-alba/lib/rigor/plugin/alba.rb
1081
+ - plugins/rigor-alba/lib/rigor/plugin/alba/resource_collector.rb
1082
+ - plugins/rigor-alba/lib/rigor/plugin/alba/resource_discoverer.rb
1083
+ - plugins/rigor-alba/lib/rigor/plugin/alba/resource_index.rb
1084
+ - plugins/rigor-alba/sig/alba.rbs
1004
1085
  - plugins/rigor-devise/lib/rigor-devise.rb
1005
1086
  - plugins/rigor-devise/lib/rigor/plugin/devise.rb
1006
1087
  - plugins/rigor-dry-monads/lib/rigor-dry-monads.rb
@@ -1126,6 +1207,11 @@ files:
1126
1207
  - plugins/rigor-sorbet/sig/sorbet.rbs
1127
1208
  - plugins/rigor-statesman/lib/rigor-statesman.rb
1128
1209
  - plugins/rigor-statesman/lib/rigor/plugin/statesman.rb
1210
+ - plugins/rigor-typelizer/lib/rigor-typelizer.rb
1211
+ - plugins/rigor-typelizer/lib/rigor/plugin/typelizer.rb
1212
+ - plugins/rigor-typelizer/lib/rigor/plugin/typelizer/serializer_collector.rb
1213
+ - plugins/rigor-typelizer/lib/rigor/plugin/typelizer/serializer_discoverer.rb
1214
+ - plugins/rigor-typelizer/lib/rigor/plugin/typelizer/serializer_index.rb
1129
1215
  - plugins/rigor-typescript-utility-types/lib/rigor-typescript-utility-types.rb
1130
1216
  - plugins/rigor-typescript-utility-types/lib/rigor/plugin/typescript_utility_types.rb
1131
1217
  - sig/prism_node_children.rbs
@@ -1243,6 +1329,7 @@ post_install_message: |
1243
1329
  rdoc_options: []
1244
1330
  require_paths:
1245
1331
  - lib
1332
+ - plugins/rigor-ac-library-rb/lib
1246
1333
  - plugins/rigor-actioncable/lib
1247
1334
  - plugins/rigor-actionmailer/lib
1248
1335
  - plugins/rigor-actionpack/lib
@@ -1251,6 +1338,7 @@ require_paths:
1251
1338
  - plugins/rigor-activerecord/lib
1252
1339
  - plugins/rigor-activestorage/lib
1253
1340
  - plugins/rigor-activesupport-core-ext/lib
1341
+ - plugins/rigor-alba/lib
1254
1342
  - plugins/rigor-devise/lib
1255
1343
  - plugins/rigor-dry-monads/lib
1256
1344
  - plugins/rigor-dry-schema/lib
@@ -1281,6 +1369,7 @@ require_paths:
1281
1369
  - plugins/rigor-sinatra/lib
1282
1370
  - plugins/rigor-sorbet/lib
1283
1371
  - plugins/rigor-statesman/lib
1372
+ - plugins/rigor-typelizer/lib
1284
1373
  - plugins/rigor-typescript-utility-types/lib
1285
1374
  required_ruby_version: !ruby/object:Gem::Requirement
1286
1375
  requirements: