ibex 0.2.0 → 0.3.0
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.
- checksums.yaml +4 -4
- data/README.md +95 -272
- data/docs/architecture.md +187 -35
- data/docs/bison-import.md +103 -0
- data/docs/comparison-policy.md +127 -0
- data/docs/configuration-model.md +59 -0
- data/docs/configuration-report.md +28 -0
- data/docs/conflict-explanation-reviews/v1/records/README.md +28 -0
- data/docs/conflict-explanation-study.md +62 -0
- data/docs/construction-profiling.md +157 -0
- data/docs/cst-migration.md +3 -4
- data/docs/cst.md +24 -0
- data/docs/decisions/0000-template.md +24 -0
- data/docs/decisions/0001-separate-ir-pipeline.md +34 -0
- data/docs/decisions/0002-opaque-user-code-boundary.md +32 -0
- data/docs/decisions/0003-self-hosted-grammar-frontend.md +32 -0
- data/docs/decisions/0004-shared-semantic-and-lossless-source-model.md +33 -0
- data/docs/decisions/0005-contained-grammar-composition.md +34 -0
- data/docs/decisions/0006-bounded-structural-grammar-lowering.md +32 -0
- data/docs/decisions/0007-shared-parser-construction-pipeline.md +33 -0
- data/docs/decisions/0008-versioned-runtime-package-boundary.md +36 -0
- data/docs/decisions/0009-isolated-parser-sessions.md +34 -0
- data/docs/decisions/0010-committed-runtime-observation.md +34 -0
- data/docs/decisions/0011-versioned-semantic-action-boundary.md +37 -0
- data/docs/decisions/0012-bounded-nonexecuting-analysis.md +37 -0
- data/docs/decisions/0013-transactional-generation-publication.md +37 -0
- data/docs/decisions/0014-versioned-generated-lexer.md +35 -0
- data/docs/decisions/0015-worker-isolated-browser-analysis.md +32 -0
- data/docs/decisions/0016-red-green-concrete-syntax.md +34 -0
- data/docs/decisions/0017-persistent-syntax-artifacts.md +35 -0
- data/docs/decisions/0018-conservative-incremental-syntax-reuse.md +38 -0
- data/docs/decisions/0019-runtime-syntax-session-boundary.md +51 -0
- data/docs/decisions/0020-grammar-ir-parser-contract.md +65 -0
- data/docs/decisions/0021-data-only-parser-table-sidecar.md +50 -0
- data/docs/decisions/0022-manifest-bound-verification-report.md +77 -0
- data/docs/decisions/0023-syntax-only-repair-results.md +48 -0
- data/docs/decisions/0024-direct-ielr-construction.md +42 -0
- data/docs/decisions/README.md +74 -0
- data/docs/declarative-configuration.md +262 -0
- data/docs/development.md +179 -2
- data/docs/direct-ielr-decision.md +120 -0
- data/docs/direct-multi-entry-decision.md +82 -0
- data/docs/editor-setup.md +2 -1
- data/docs/error-ux-review-rubric-v1.md +117 -0
- data/docs/error-ux-reviews/v1/records/README.md +22 -0
- data/docs/error-ux-round2-review-status-v1.json +27 -0
- data/docs/error-ux-round2-reviews/v1/records/README.md +30 -0
- data/docs/error-ux-round2-v1.json +1581 -0
- data/docs/error-ux-round2.md +111 -0
- data/docs/error-ux.md +54 -0
- data/docs/getting-started.md +80 -0
- data/docs/grammar-reference.md +184 -13
- data/docs/ielr-design.md +43 -0
- data/docs/ielr.md +92 -0
- data/docs/ja/bison-import.md +51 -0
- data/docs/ja/stable-api.md +53 -0
- data/docs/lexer-construction-profile.md +109 -0
- data/docs/lexer-migration.md +5 -0
- data/docs/maturity.md +128 -0
- data/docs/project-site-strategy.md +54 -0
- data/docs/racc-migration-evidence.md +45 -0
- data/docs/racc-migration.md +11 -0
- data/docs/release-readiness.md +126 -68
- data/docs/repair-semantics.md +123 -0
- data/docs/runtime-abi-evolution.md +307 -0
- data/docs/stability.md +144 -34
- data/docs/status.md +43 -0
- data/docs/syntax-sessions.md +183 -0
- data/docs/table-artifact.md +125 -0
- data/docs/test-interactions.md +219 -0
- data/docs/verification-report.md +137 -0
- data/docs/verifier-trust-boundary.md +199 -0
- data/docs/workloads.md +132 -0
- data/lib/ibex/analysis/digraph.rb +128 -0
- data/lib/ibex/analysis.rb +1 -0
- data/lib/ibex/bison_import/importer.rb +516 -0
- data/lib/ibex/bison_import/tokenizer.rb +260 -0
- data/lib/ibex/bison_import.rb +200 -0
- data/lib/ibex/bounded_subprocess.rb +171 -0
- data/lib/ibex/cli/ambiguity.rb +14 -5
- data/lib/ibex/cli/analysis.rb +134 -0
- data/lib/ibex/cli/bison_import.rb +121 -0
- data/lib/ibex/cli/config.rb +128 -0
- data/lib/ibex/cli/diagnostics.rb +31 -11
- data/lib/ibex/cli/documentation.rb +11 -8
- data/lib/ibex/cli/equiv.rb +169 -0
- data/lib/ibex/cli/error_messages.rb +11 -4
- data/lib/ibex/cli/explain.rb +14 -5
- data/lib/ibex/cli/fix.rb +203 -0
- data/lib/ibex/cli/formatting.rb +11 -10
- data/lib/ibex/cli/fuzz.rb +200 -0
- data/lib/ibex/cli/fuzz_regressions.rb +145 -0
- data/lib/ibex/cli/generation_artifacts.rb +53 -2
- data/lib/ibex/cli/generation_error_messages.rb +1 -1
- data/lib/ibex/cli/grammar_tests.rb +32 -14
- data/lib/ibex/cli/ir_tools.rb +5 -61
- data/lib/ibex/cli/outputs.rb +60 -33
- data/lib/ibex/cli/reduce.rb +202 -0
- data/lib/ibex/cli/reduce_reporting.rb +71 -0
- data/lib/ibex/cli/samples.rb +49 -23
- data/lib/ibex/cli/verify.rb +116 -0
- data/lib/ibex/cli/watch.rb +6 -5
- data/lib/ibex/cli.rb +357 -56
- data/lib/ibex/codegen/action_locations.rb +1 -1
- data/lib/ibex/codegen/action_method_source.rb +5 -6
- data/lib/ibex/codegen/action_source.rb +3 -2
- data/lib/ibex/codegen/ambiguity.rb +5 -4
- data/lib/ibex/codegen/explain.rb +123 -55
- data/lib/ibex/codegen/generated_action_abi.rb +10 -5
- data/lib/ibex/codegen/rbs.rb +15 -7
- data/lib/ibex/codegen/report.rb +25 -13
- data/lib/ibex/codegen/ruby.rb +28 -64
- data/lib/ibex/codegen/ruby_actions.rb +9 -6
- data/lib/ibex/codegen/ruby_syntax.rb +15 -9
- data/lib/ibex/configuration/analysis_grammar.rb +35 -0
- data/lib/ibex/configuration/explanation.rb +421 -0
- data/lib/ibex/configuration/inspector.rb +232 -0
- data/lib/ibex/configuration.rb +580 -0
- data/lib/ibex/coverage/collector.rb +21 -11
- data/lib/ibex/coverage/event_stream.rb +13 -7
- data/lib/ibex/coverage/report.rb +26 -18
- data/lib/ibex/coverage/runtime_event_validator.rb +30 -21
- data/lib/ibex/delta_reducer.rb +99 -0
- data/lib/ibex/diff.rb +140 -0
- data/lib/ibex/equiv/machine.rb +135 -0
- data/lib/ibex/equiv.rb +373 -0
- data/lib/ibex/fix.rb +557 -0
- data/lib/ibex/frontend/ast.rb +22 -2
- data/lib/ibex/frontend/bootstrap_parser.rb +6 -13
- data/lib/ibex/frontend/diagnostic.rb +1 -1
- data/lib/ibex/frontend/formatter.rb +72 -26
- data/lib/ibex/frontend/generated_parser.rb +147 -117
- data/lib/ibex/frontend/generated_parser_base.rb +7 -3
- data/lib/ibex/frontend/generated_parser_includes.rb +1 -11
- data/lib/ibex/frontend/generation.rb +1 -1
- data/lib/ibex/frontend/parser/declarations.rb +17 -2
- data/lib/ibex/frontend/parser_configuration_support.rb +56 -0
- data/lib/ibex/frontend/regenerator.rb +1 -0
- data/lib/ibex/frontend/resolution.rb +2 -1
- data/lib/ibex/frontend/resolver.rb +1 -1
- data/lib/ibex/frontend/rule_documentation.rb +2 -1
- data/lib/ibex/frontend/source_cursor.rb +2 -2
- data/lib/ibex/frontend/source_span.rb +9 -1
- data/lib/ibex/frontend/token_adapter/declaration_state.rb +38 -6
- data/lib/ibex/frontend/token_adapter.rb +10 -0
- data/lib/ibex/frontend.rb +1 -0
- data/lib/ibex/fuzz.rb +219 -0
- data/lib/ibex/generation_input.rb +1 -1
- data/lib/ibex/generation_manifest.rb +36 -25
- data/lib/ibex/generation_transaction.rb +1 -1
- data/lib/ibex/generation_transaction_recovery.rb +4 -4
- data/lib/ibex/generation_transaction_validation.rb +2 -2
- data/lib/ibex/grammar_tests.rb +1 -1
- data/lib/ibex/ir/automaton_ir.rb +61 -19
- data/lib/ibex/ir/grammar_ir.rb +76 -45
- data/lib/ibex/ir/lexer_ir.rb +5 -5
- data/lib/ibex/ir/parser_contract.rb +135 -0
- data/lib/ibex/ir/serialize.rb +203 -76
- data/lib/ibex/ir/validator/automaton.rb +64 -34
- data/lib/ibex/ir/validator/base.rb +51 -33
- data/lib/ibex/ir/validator/grammar.rb +113 -83
- data/lib/ibex/ir/validator/lexer.rb +2 -2
- data/lib/ibex/ir/validator.rb +2 -1
- data/lib/ibex/ir.rb +16 -3
- data/lib/ibex/lalr/build_metrics.rb +50 -2
- data/lib/ibex/lalr/builder.rb +191 -56
- data/lib/ibex/lalr/conflict_search.rb +15 -4
- data/lib/ibex/lalr/counterexample.rb +19 -14
- data/lib/ibex/lalr/direct_lookaheads.rb +110 -57
- data/lib/ibex/lalr/goto_follows.rb +229 -0
- data/lib/ibex/lalr/ielr/annotator.rb +214 -0
- data/lib/ibex/lalr/ielr/bits.rb +28 -0
- data/lib/ibex/lalr/ielr/inadequacy.rb +47 -0
- data/lib/ibex/lalr/ielr/item_lookaheads.rb +78 -0
- data/lib/ibex/lalr/ielr/pipeline.rb +75 -0
- data/lib/ibex/lalr/ielr/split_stability.rb +78 -0
- data/lib/ibex/lalr/ielr/split_state.rb +20 -0
- data/lib/ibex/lalr/ielr/state_splitter.rb +258 -0
- data/lib/ibex/lalr/ielr_partition.rb +22 -8
- data/lib/ibex/lalr/inadequacy_report.rb +50 -0
- data/lib/ibex/lalr/lookahead_propagation.rb +111 -0
- data/lib/ibex/lalr/lr0_collection.rb +121 -0
- data/lib/ibex/lalr/unreachable_states.rb +80 -0
- data/lib/ibex/lalr.rb +52 -1
- data/lib/ibex/location.rb +3 -3
- data/lib/ibex/lsp/document_handlers.rb +9 -7
- data/lib/ibex/lsp/initialization_handlers.rb +9 -7
- data/lib/ibex/lsp/navigation_handlers.rb +25 -11
- data/lib/ibex/lsp/parser_configuration_assistance.rb +149 -0
- data/lib/ibex/lsp/position_codec.rb +6 -2
- data/lib/ibex/lsp/request_handlers.rb +3 -2
- data/lib/ibex/lsp/request_support.rb +14 -7
- data/lib/ibex/lsp/server.rb +13 -11
- data/lib/ibex/lsp/symbol_index.rb +13 -13
- data/lib/ibex/lsp/symbol_index_builder.rb +30 -20
- data/lib/ibex/lsp/symbol_occurrence.rb +8 -2
- data/lib/ibex/lsp/transport.rb +13 -3
- data/lib/ibex/lsp/workspace.rb +5 -4
- data/lib/ibex/lsp/workspace_analyzer.rb +1 -1
- data/lib/ibex/lsp.rb +1 -0
- data/lib/ibex/messages/en.yml +28 -0
- data/lib/ibex/messages/ja.yml +28 -0
- data/lib/ibex/messages.rb +68 -0
- data/lib/ibex/metrics.rb +175 -0
- data/lib/ibex/normalize/declarations.rb +2 -0
- data/lib/ibex/normalize/diagnostics.rb +63 -38
- data/lib/ibex/normalize/expander.rb +5 -4
- data/lib/ibex/normalize/expression.rb +8 -6
- data/lib/ibex/normalize/grammar_builder.rb +26 -0
- data/lib/ibex/normalize/inline_expansion.rb +100 -49
- data/lib/ibex/normalize/lexer.rb +3 -3
- data/lib/ibex/normalize/parameter_ebnf_lowering.rb +11 -10
- data/lib/ibex/normalize/parameter_lowering.rb +40 -23
- data/lib/ibex/normalize/parameters.rb +31 -4
- data/lib/ibex/normalize/parser_configuration.rb +70 -0
- data/lib/ibex/normalize.rb +10 -20
- data/lib/ibex/racc_migration/report.rb +6 -3
- data/lib/ibex/rake_task.rb +1 -1
- data/lib/ibex/samples.rb +43 -13
- data/lib/ibex/table_artifact/builder.rb +266 -0
- data/lib/ibex/table_artifact/cst_projection.rb +70 -0
- data/lib/ibex/table_artifact/document.rb +39 -0
- data/lib/ibex/table_artifact/executor.rb +187 -0
- data/lib/ibex/table_artifact/serializer.rb +57 -0
- data/lib/ibex/table_artifact/validator/metadata.rb +179 -0
- data/lib/ibex/table_artifact/validator/support.rb +86 -0
- data/lib/ibex/table_artifact/validator/tables.rb +238 -0
- data/lib/ibex/table_artifact/validator.rb +253 -0
- data/lib/ibex/table_artifact.rb +88 -0
- data/lib/ibex/table_simulation/result.rb +6 -2
- data/lib/ibex/table_simulation/step.rb +3 -1
- data/lib/ibex/tables.rb +14 -0
- data/lib/ibex/verifiable_generation_bundle.rb +86 -0
- data/lib/ibex/verification_report/builder.rb +159 -0
- data/lib/ibex/verification_report/canonical_ir.rb +123 -0
- data/lib/ibex/verification_report/logical_path.rb +68 -0
- data/lib/ibex/verification_report/validator.rb +329 -0
- data/lib/ibex/verification_report.rb +69 -0
- data/lib/ibex/verify/action_correspondence.rb +138 -0
- data/lib/ibex/verify/language_witness.rb +295 -0
- data/lib/ibex/verify/reference_collection.rb +190 -0
- data/lib/ibex/verify/result.rb +73 -0
- data/lib/ibex/verify/verifier.rb +598 -0
- data/lib/ibex/verify.rb +15 -0
- data/lib/ibex/version.rb +1 -1
- data/lib/ibex/watch/runner.rb +10 -1
- data/lib/ibex/watch/source_snapshot.rb +13 -8
- data/lib/ibex.rb +10 -0
- data/schema/{automaton-ir-v1.schema.json → automaton-ir-definitions.schema.json} +6 -6
- data/schema/{automaton-ir-v2.schema.json → automaton-ir.schema.json} +14 -7
- data/schema/bison-import-v1.schema.json +106 -0
- data/schema/conflict-explanation-review-v1.schema.json +196 -0
- data/schema/conflict-explanation-study-v1.schema.json +528 -0
- data/schema/construction-profile-v1.schema.json +779 -0
- data/schema/diff-v1.schema.json +41 -0
- data/schema/direct-ielr-decision-v1.schema.json +200 -0
- data/schema/equiv-v1.schema.json +64 -0
- data/schema/error-ux-review-v1.schema.json +609 -0
- data/schema/error-ux-round2-review-v1.schema.json +191 -0
- data/schema/error-ux-round2-v1.schema.json +519 -0
- data/schema/explain-v1.schema.json +63 -1
- data/schema/fix-v1.schema.json +64 -0
- data/schema/fix-v2.schema.json +66 -0
- data/schema/fix-v3.schema.json +101 -0
- data/schema/fuzz-regression-v1.schema.json +79 -0
- data/schema/fuzz-v1.schema.json +114 -0
- data/schema/{grammar-ir-v2.schema.json → grammar-ir-extensions.schema.json} +20 -65
- data/schema/{grammar-ir-v1.schema.json → grammar-ir-foundation.schema.json} +3 -3
- data/schema/grammar-ir.schema.json +271 -0
- data/schema/ielr-benchmark-v1.schema.json +85 -0
- data/schema/lexer-profile-v1.schema.json +491 -0
- data/schema/metrics-v1.schema.json +60 -0
- data/schema/reduce-v1.schema.json +22 -0
- data/schema/reduce-v2.schema.json +63 -0
- data/schema/table-artifact-v1.schema.json +377 -0
- data/schema/verification-report-v1.schema.json +222 -0
- data/schema/verify-v1.schema.json +42 -0
- data/sig/ibex/analysis/digraph.rbs +19 -0
- data/sig/ibex/bison_import/importer.rbs +140 -0
- data/sig/ibex/bison_import/tokenizer.rbs +91 -0
- data/sig/ibex/bison_import.rbs +95 -0
- data/sig/ibex/bounded_subprocess.rbs +76 -0
- data/sig/ibex/cli/ambiguity.rbs +6 -0
- data/sig/ibex/cli/analysis.rbs +43 -0
- data/sig/ibex/cli/bison_import.rbs +32 -0
- data/sig/ibex/cli/config.rbs +35 -0
- data/sig/ibex/cli/diagnostics.rbs +16 -3
- data/sig/ibex/cli/documentation.rbs +5 -1
- data/sig/ibex/cli/equiv.rbs +49 -0
- data/sig/ibex/cli/error_messages.rbs +6 -0
- data/sig/ibex/cli/explain.rbs +6 -0
- data/sig/ibex/cli/fix.rbs +53 -0
- data/sig/ibex/cli/formatting.rbs +5 -1
- data/sig/ibex/cli/fuzz.rbs +47 -0
- data/sig/ibex/cli/fuzz_regressions.rbs +40 -0
- data/sig/ibex/cli/generation_artifacts.rbs +21 -2
- data/sig/ibex/cli/generation_error_messages.rbs +2 -2
- data/sig/ibex/cli/grammar_tests.rbs +15 -3
- data/sig/ibex/cli/ir_tools.rbs +7 -19
- data/sig/ibex/cli/outputs.rbs +9 -3
- data/sig/ibex/cli/reduce.rbs +60 -0
- data/sig/ibex/cli/reduce_reporting.rbs +27 -0
- data/sig/ibex/cli/samples.rbs +8 -0
- data/sig/ibex/cli/verify.rbs +28 -0
- data/sig/ibex/cli/watch.rbs +2 -2
- data/sig/ibex/cli.rbs +79 -5
- data/sig/ibex/codegen/action_method_source.rbs +4 -4
- data/sig/ibex/codegen/explain.rbs +45 -25
- data/sig/ibex/codegen/generated_action_abi.rbs +14 -10
- data/sig/ibex/codegen/rbs.rbs +12 -10
- data/sig/ibex/codegen/report.rbs +12 -12
- data/sig/ibex/codegen/ruby.rbs +18 -15
- data/sig/ibex/codegen/ruby_actions.rbs +6 -6
- data/sig/ibex/codegen/ruby_syntax.rbs +10 -8
- data/sig/ibex/configuration/analysis_grammar.rbs +13 -0
- data/sig/ibex/configuration/explanation.rbs +195 -0
- data/sig/ibex/configuration/inspector.rbs +53 -0
- data/sig/ibex/configuration.rbs +242 -0
- data/sig/ibex/coverage/collector.rbs +16 -14
- data/sig/ibex/coverage/event_stream.rbs +12 -10
- data/sig/ibex/coverage/report.rbs +20 -18
- data/sig/ibex/coverage/runtime_event_validator.rbs +38 -36
- data/sig/ibex/delta_reducer.rbs +38 -0
- data/sig/ibex/diff.rbs +47 -0
- data/sig/ibex/equiv/machine.rbs +54 -0
- data/sig/ibex/equiv.rbs +129 -0
- data/sig/ibex/fix.rbs +138 -0
- data/sig/ibex/frontend/ast.rbs +33 -7
- data/sig/ibex/frontend/bootstrap_parser.rbs +2 -0
- data/sig/ibex/frontend/diagnostic.rbs +2 -2
- data/sig/ibex/frontend/formatter.rbs +38 -30
- data/sig/ibex/frontend/generated_parser.rbs +87 -77
- data/sig/ibex/frontend/generated_parser_base.rbs +4 -2
- data/sig/ibex/frontend/parser/declarations.rbs +3 -0
- data/sig/ibex/frontend/parser_configuration_support.rbs +27 -0
- data/sig/ibex/frontend/resolution.rbs +3 -2
- data/sig/ibex/frontend/source_cursor.rbs +2 -2
- data/sig/ibex/frontend/source_span.rbs +5 -2
- data/sig/ibex/frontend/token_adapter/declaration_state.rbs +13 -1
- data/sig/ibex/frontend/token_adapter.rbs +6 -0
- data/sig/ibex/fuzz.rbs +71 -0
- data/sig/ibex/generation_input.rbs +2 -2
- data/sig/ibex/generation_manifest.rbs +35 -32
- data/sig/ibex/generation_transaction_recovery.rbs +2 -2
- data/sig/ibex/generation_transaction_validation.rbs +2 -2
- data/sig/ibex/grammar_tests.rbs +2 -2
- data/sig/ibex/ir/automaton_ir.rbs +30 -11
- data/sig/ibex/ir/grammar_ir.rbs +41 -27
- data/sig/ibex/ir/lexer_ir.rbs +8 -8
- data/sig/ibex/ir/parser_contract.rbs +69 -0
- data/sig/ibex/ir/serialize.rbs +63 -28
- data/sig/ibex/ir/validator/automaton.rbs +47 -44
- data/sig/ibex/ir/validator/base.rbs +35 -31
- data/sig/ibex/ir/validator/grammar.rbs +78 -67
- data/sig/ibex/ir/validator/lexer.rbs +4 -4
- data/sig/ibex/ir.rbs +9 -3
- data/sig/ibex/lalr/build_metrics.rbs +42 -2
- data/sig/ibex/lalr/builder.rbs +75 -24
- data/sig/ibex/lalr/conflict_search.rbs +5 -2
- data/sig/ibex/lalr/counterexample.rbs +17 -14
- data/sig/ibex/lalr/direct_lookaheads.rbs +35 -28
- data/sig/ibex/lalr/goto_follows.rbs +89 -0
- data/sig/ibex/lalr/ielr/annotator.rbs +67 -0
- data/sig/ibex/lalr/ielr/bits.rbs +14 -0
- data/sig/ibex/lalr/ielr/inadequacy.rbs +24 -0
- data/sig/ibex/lalr/ielr/item_lookaheads.rbs +35 -0
- data/sig/ibex/lalr/ielr/pipeline.rbs +17 -0
- data/sig/ibex/lalr/ielr/split_stability.rbs +27 -0
- data/sig/ibex/lalr/ielr/split_state.rbs +14 -0
- data/sig/ibex/lalr/ielr/state_splitter.rbs +76 -0
- data/sig/ibex/lalr/ielr_partition.rbs +17 -5
- data/sig/ibex/lalr/inadequacy_report.rbs +21 -0
- data/sig/ibex/lalr/lookahead_propagation.rbs +38 -0
- data/sig/ibex/lalr/lr0_collection.rbs +50 -0
- data/sig/ibex/lalr/unreachable_states.rbs +25 -0
- data/sig/ibex/lalr.rbs +11 -1
- data/sig/ibex/location.rbs +6 -6
- data/sig/ibex/lsp/document_handlers.rbs +8 -8
- data/sig/ibex/lsp/initialization_handlers.rbs +12 -12
- data/sig/ibex/lsp/navigation_handlers.rbs +15 -12
- data/sig/ibex/lsp/parser_configuration_assistance.rbs +49 -0
- data/sig/ibex/lsp/position_codec.rbs +8 -4
- data/sig/ibex/lsp/request_handlers.rbs +4 -4
- data/sig/ibex/lsp/request_support.rbs +8 -8
- data/sig/ibex/lsp/server.rbs +16 -16
- data/sig/ibex/lsp/symbol_index.rbs +20 -21
- data/sig/ibex/lsp/symbol_index_builder.rbs +9 -8
- data/sig/ibex/lsp/symbol_occurrence.rbs +11 -5
- data/sig/ibex/lsp/transport.rbs +18 -6
- data/sig/ibex/lsp/workspace.rbs +3 -2
- data/sig/ibex/lsp/workspace_analyzer.rbs +1 -1
- data/sig/ibex/messages.rbs +26 -0
- data/sig/ibex/metrics.rbs +50 -0
- data/sig/ibex/normalize/diagnostics.rbs +4 -4
- data/sig/ibex/normalize/expander.rbs +2 -2
- data/sig/ibex/normalize/expression.rbs +10 -8
- data/sig/ibex/normalize/grammar_builder.rbs +11 -0
- data/sig/ibex/normalize/inline_expansion.rbs +59 -50
- data/sig/ibex/normalize/lexer.rbs +4 -4
- data/sig/ibex/normalize/parameter_ebnf_lowering.rbs +15 -14
- data/sig/ibex/normalize/parameter_lowering.rbs +18 -18
- data/sig/ibex/normalize/parameters.rbs +13 -8
- data/sig/ibex/normalize/parser_configuration.rbs +23 -0
- data/sig/ibex/normalize.rbs +11 -5
- data/sig/ibex/racc_migration/report.rbs +8 -6
- data/sig/ibex/rake_task.rbs +1 -1
- data/sig/ibex/samples.rbs +13 -4
- data/sig/ibex/table_artifact/builder.rbs +93 -0
- data/sig/ibex/table_artifact/cst_projection.rbs +20 -0
- data/sig/ibex/table_artifact/document.rbs +27 -0
- data/sig/ibex/table_artifact/executor.rbs +66 -0
- data/sig/ibex/table_artifact/serializer.rbs +25 -0
- data/sig/ibex/table_artifact/validator/metadata.rbs +52 -0
- data/sig/ibex/table_artifact/validator/support.rbs +46 -0
- data/sig/ibex/table_artifact/validator/tables.rbs +63 -0
- data/sig/ibex/table_artifact/validator.rbs +66 -0
- data/sig/ibex/table_artifact.rbs +32 -0
- data/sig/ibex/table_simulation/result.rbs +8 -4
- data/sig/ibex/table_simulation/step.rbs +4 -2
- data/sig/ibex/tables.rbs +10 -9
- data/sig/ibex/verifiable_generation_bundle.rbs +24 -0
- data/sig/ibex/verification_report/builder.rbs +53 -0
- data/sig/ibex/verification_report/canonical_ir.rbs +41 -0
- data/sig/ibex/verification_report/logical_path.rbs +34 -0
- data/sig/ibex/verification_report/validator.rbs +114 -0
- data/sig/ibex/verification_report.rbs +44 -0
- data/sig/ibex/verify/action_correspondence.rbs +50 -0
- data/sig/ibex/verify/language_witness.rbs +112 -0
- data/sig/ibex/verify/reference_collection.rbs +63 -0
- data/sig/ibex/verify/result.rbs +52 -0
- data/sig/ibex/verify/verifier.rbs +170 -0
- data/sig/ibex/verify.rbs +6 -0
- data/sig/ibex/watch/runner.rbs +12 -2
- data/sig/ibex/watch/source_snapshot.rbs +13 -9
- metadata +232 -12
- data/lib/ibex/ir/migration.rb +0 -120
- data/sig/ibex/ir/migration.rbs +0 -34
|
@@ -0,0 +1,1581 @@
|
|
|
1
|
+
{
|
|
2
|
+
"ibex_error_ux_round2": "repository-capture",
|
|
3
|
+
"schema_version": 1,
|
|
4
|
+
"repository_capture": {
|
|
5
|
+
"status": "complete",
|
|
6
|
+
"generator": "tool/error_ux_round2.rb",
|
|
7
|
+
"corpus": {
|
|
8
|
+
"path": "test/fixtures/error_ux_round2/corpus-v1.json",
|
|
9
|
+
"sha256": "b3545aea560ac5b8d23589124fb5d2276673e5c84e69eca61f5da233c2f5bfb9"
|
|
10
|
+
},
|
|
11
|
+
"implementation_sources": [
|
|
12
|
+
{
|
|
13
|
+
"path": "lib/ibex.rb",
|
|
14
|
+
"sha256": "8da8f2b43bd71fbf359aba4d28d23fc4366b9b4a696a35ecb2eea9dbed0d889a"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"path": "lib/ibex/analysis.rb",
|
|
18
|
+
"sha256": "66a7ce62e3e877d084deb3de720055e9e9a1f3081f9903a3c5f948bb496394b5"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"path": "lib/ibex/analysis/digraph.rb",
|
|
22
|
+
"sha256": "470aa4ed7af53c60993044667ed74813e15c19d3f0450a3404f12c10a88f9b98"
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"path": "lib/ibex/analysis/sets.rb",
|
|
26
|
+
"sha256": "9fd97106dacd8dea5f342a422c961a6e71a94370bf97bbabf6abe201137a180d"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"path": "lib/ibex/artifact_set.rb",
|
|
30
|
+
"sha256": "79a350a24af5aaa47515c396b737870ab748db0c7e94fa8b90ea79ef23535bb5"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"path": "lib/ibex/bison_import.rb",
|
|
34
|
+
"sha256": "ba25097d5f4342406f5d358bcdb3614fe17f363c15f1a5364eaf4f69b28a642a"
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"path": "lib/ibex/bison_import/importer.rb",
|
|
38
|
+
"sha256": "458f80fc482246e35c40612b78adf88177db045bd082ce4305c21fe6a6f82c46"
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"path": "lib/ibex/bison_import/tokenizer.rb",
|
|
42
|
+
"sha256": "1aef258c1399a24509f37be2e4a136063bbf1c0ea557515a1f0dc567727223e8"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"path": "lib/ibex/codegen/action_locations.rb",
|
|
46
|
+
"sha256": "39e3abb50898da471cbadd35ee8943038960c34ad58b29f2c0e9db01e64c1fdc"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"path": "lib/ibex/codegen/action_method_source.rb",
|
|
50
|
+
"sha256": "4331c52fd0e478e864f4fa52c1c66212529fb17597f2e6b543a8d88dd4682291"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"path": "lib/ibex/codegen/action_source.rb",
|
|
54
|
+
"sha256": "14fdb71504bc6ce4e93aaf21053c2cc17188bbc9d3ef406cfb1c809393fbbaac"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"path": "lib/ibex/codegen/ambiguity.rb",
|
|
58
|
+
"sha256": "23dcf6a3f9318b611a41cc05ecaecbeaa122b76dab614ad857ddfcd0b7820e4b"
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"path": "lib/ibex/codegen/cst_metadata.rb",
|
|
62
|
+
"sha256": "fc2ed04a48d7a0199d4b20967673c6f97f6e2b373e0aac616124eae286c2c6ee"
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"path": "lib/ibex/codegen/documentation.rb",
|
|
66
|
+
"sha256": "6551a3dc29862c1de172ee75681f20b234f7c271891419d9a997d61e1b69e5c9"
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"path": "lib/ibex/codegen/dot.rb",
|
|
70
|
+
"sha256": "92111bc3bc75d6e1e285a39717d04652e539ca096f5c33531efb3064b7fe2447"
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
"path": "lib/ibex/codegen/explain.rb",
|
|
74
|
+
"sha256": "f8c9123224ee6ab443a8ead6c7a2773655a7884756a3202120293c06d151b061"
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
"path": "lib/ibex/codegen/generated_action_abi.rb",
|
|
78
|
+
"sha256": "5c6b56e424869af9b5d921b6a6ad6093948dc6d051b22e4f2e8bbf4fbcfc755c"
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
"path": "lib/ibex/codegen/html.rb",
|
|
82
|
+
"sha256": "79bc81557be7874877a86a40ccb367b35f1815bf057827b228fcda905d2d19e8"
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"path": "lib/ibex/codegen/mermaid.rb",
|
|
86
|
+
"sha256": "423dc0ec00b80e31f828a1470bf925d9d6d6ca22e6a5e919558a1cb342bfbcf3"
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
"path": "lib/ibex/codegen/railroad.rb",
|
|
90
|
+
"sha256": "512f0a8f904934ba6e4856d386d4f08817c19ad07a61d8ec0c86b4da08c505a5"
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"path": "lib/ibex/codegen/railroad_documentation.rb",
|
|
94
|
+
"sha256": "fb3f39420d793903a0a5292743241d39bfc5d7e9691a9a23c8542935fc26f355"
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
"path": "lib/ibex/codegen/rbs.rb",
|
|
98
|
+
"sha256": "80dead575a27ed8c4d78d57e7d47bbab815864c474b170ffd3da4411e7c74c4a"
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"path": "lib/ibex/codegen/report.rb",
|
|
102
|
+
"sha256": "8cb444f1375a2457a5b10ad38fc3afd6db27f2548fabb2bcc463d07c709282fa"
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
"path": "lib/ibex/codegen/ruby.rb",
|
|
106
|
+
"sha256": "933a156a39aa4dcbfe3396da0262054378ca3c73c7f651561b24347997fdd3dc"
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
"path": "lib/ibex/codegen/ruby_actions.rb",
|
|
110
|
+
"sha256": "8ccb5550a8996ee6ff18a31541d5205dde9d4837c8544cb7628e9bf4a5335460"
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
"path": "lib/ibex/codegen/ruby_ast.rb",
|
|
114
|
+
"sha256": "d7a2b97ce75a9ee3aba1097634dcb175a791e1d05ad085b1cf5e2aeffa41eab5"
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
"path": "lib/ibex/codegen/ruby_error_messages.rb",
|
|
118
|
+
"sha256": "088ef1cd4a583c80e11802f025de18e255a4fb634328c46696f0876c74808b71"
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
"path": "lib/ibex/codegen/ruby_lexer.rb",
|
|
122
|
+
"sha256": "683558eb0560201d6cda7dd241203375874952b803f41eb51ee7ef24bf1d9b81"
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
"path": "lib/ibex/codegen/ruby_syntax.rb",
|
|
126
|
+
"sha256": "553b4a002337b7d82fc91eec6efe3a866aa35040cba9185016d3491589cba734"
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
"path": "lib/ibex/codegen/ruby_table_metadata.rb",
|
|
130
|
+
"sha256": "b9df0e8ba6ced2b1d099fccb85127c9fd55ea69ce22a77c3226c3056fe955bad"
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
"path": "lib/ibex/codegen/ruby_value_printers.rb",
|
|
134
|
+
"sha256": "fcacd00a33b8dca75c95f3f89ec7fc655406c596f6e183224ad90c5b7d854e7b"
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
"path": "lib/ibex/codegen/symbol_labels.rb",
|
|
138
|
+
"sha256": "f29d9b3c80e2030303c44d6c011efad1ee9e6307ae9041a189a0753a39a94cdf"
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
"path": "lib/ibex/configuration.rb",
|
|
142
|
+
"sha256": "94a5f8ec80e1d28ca1254720128f3b703e20321e8989442f516548b210c92aa6"
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
"path": "lib/ibex/configuration/analysis_grammar.rb",
|
|
146
|
+
"sha256": "da24d7fdd07ec0b0238040e857998c75ede8e958db3795930687f8e8fca68f74"
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
"path": "lib/ibex/configuration/explanation.rb",
|
|
150
|
+
"sha256": "6016b85c5c55f8a0ac2bf5927de9d0d0ecb1e39386be451f9aafb39b0d98a8f9"
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
"path": "lib/ibex/coverage.rb",
|
|
154
|
+
"sha256": "8578aadb7e8b1b7e89d106e4f19f45fe400b1461531fd74eca7495b1bcded30a"
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
"path": "lib/ibex/coverage/collector.rb",
|
|
158
|
+
"sha256": "8e573956fe787766c40f45eacab484995e7ff453e3045e3ea4188e21396069a5"
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
"path": "lib/ibex/coverage/event_stream.rb",
|
|
162
|
+
"sha256": "cc7665a0a5681eb5f88ecbb2c13e877f200e657a593a9e48252fe3ae9648141f"
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
"path": "lib/ibex/coverage/report.rb",
|
|
166
|
+
"sha256": "73647f9207d53c5c18a077ff0faf4b933b51b173a29fa0526f95a21c9fc61fca"
|
|
167
|
+
},
|
|
168
|
+
{
|
|
169
|
+
"path": "lib/ibex/coverage/runtime_event_validator.rb",
|
|
170
|
+
"sha256": "72a1ab41d460fb292f31b9669ab241f9830e77c6ec913491b452edb5edc52ae8"
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
"path": "lib/ibex/delta_reducer.rb",
|
|
174
|
+
"sha256": "fac7b70b174a279fb3122b31fc8bbfbbf9ff66938bab5b998c7756f22fd8498a"
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
"path": "lib/ibex/diff.rb",
|
|
178
|
+
"sha256": "59bf6a408b344557fcfd4106a082ea9ecf00dc7b788e163f0ff023c587f05355"
|
|
179
|
+
},
|
|
180
|
+
{
|
|
181
|
+
"path": "lib/ibex/equiv.rb",
|
|
182
|
+
"sha256": "37e6ec2228ca70720702367087bebfa4d87047ba2422b86f855c6047a364d217"
|
|
183
|
+
},
|
|
184
|
+
{
|
|
185
|
+
"path": "lib/ibex/equiv/machine.rb",
|
|
186
|
+
"sha256": "c4977be48906668087f5654029e065b9d24d0dfdf1ae708f7fdafe1e1bd46751"
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
"path": "lib/ibex/error.rb",
|
|
190
|
+
"sha256": "d9ea061a96dae780e52c6dbe947416f92ae901bd270aef587f8961cd558b623e"
|
|
191
|
+
},
|
|
192
|
+
{
|
|
193
|
+
"path": "lib/ibex/error_messages.rb",
|
|
194
|
+
"sha256": "55d26c809659e46688b759a2be3823a7bd1385a8a738852e5c03c49152d677c4"
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
"path": "lib/ibex/error_messages/parser.rb",
|
|
198
|
+
"sha256": "8158c0feec56b4e7656d1c78e64cd075a115f74a48426254eb7ea0781bb546bd"
|
|
199
|
+
},
|
|
200
|
+
{
|
|
201
|
+
"path": "lib/ibex/error_messages/parser_v2.rb",
|
|
202
|
+
"sha256": "50df0e76ceaea93a11ca662e1015f7ec68050ddbda58e8302c74f32d7e5c67bb"
|
|
203
|
+
},
|
|
204
|
+
{
|
|
205
|
+
"path": "lib/ibex/error_messages/renderer.rb",
|
|
206
|
+
"sha256": "ace98678c537f6e42b88bfafd978400bb71f40703f441bf987d0d4300101edaf"
|
|
207
|
+
},
|
|
208
|
+
{
|
|
209
|
+
"path": "lib/ibex/error_messages/sentence_search.rb",
|
|
210
|
+
"sha256": "602a0196340ff6bd4a202e48d60f3ac39734dcbcb860503f7867ad2f36b5f014"
|
|
211
|
+
},
|
|
212
|
+
{
|
|
213
|
+
"path": "lib/ibex/error_messages/update.rb",
|
|
214
|
+
"sha256": "64df37e83ae380a57a7e15a663772b1c81a117722da60be344bb4f1a277d79ab"
|
|
215
|
+
},
|
|
216
|
+
{
|
|
217
|
+
"path": "lib/ibex/fix.rb",
|
|
218
|
+
"sha256": "ba706969093bca0bafcc514324871c3de8d9cc9e54c8738dd1892dd0239508fc"
|
|
219
|
+
},
|
|
220
|
+
{
|
|
221
|
+
"path": "lib/ibex/frontend.rb",
|
|
222
|
+
"sha256": "332550c378c40abdc6011d96a925ad6cf39257728b370eaece6d644f5796a981"
|
|
223
|
+
},
|
|
224
|
+
{
|
|
225
|
+
"path": "lib/ibex/frontend/action_scanner.rb",
|
|
226
|
+
"sha256": "bc8388401500590e60699b2a23a570dc5793e372c124029c061036561a67f68d"
|
|
227
|
+
},
|
|
228
|
+
{
|
|
229
|
+
"path": "lib/ibex/frontend/ast.rb",
|
|
230
|
+
"sha256": "375868cac068483b08f8e5cffe78ad4d475955c96054aa113ad19d6f364ff1d7"
|
|
231
|
+
},
|
|
232
|
+
{
|
|
233
|
+
"path": "lib/ibex/frontend/diagnostic.rb",
|
|
234
|
+
"sha256": "fa0c7df1d775ba678444eacbc52de6e0db4d4be7d500affb818859b81d784422"
|
|
235
|
+
},
|
|
236
|
+
{
|
|
237
|
+
"path": "lib/ibex/frontend/diagnostic_recovery.rb",
|
|
238
|
+
"sha256": "9ec381cdef8b0020f8f9ad811e9651c59e85b3221ac0ae41b8feeadd76d34af7"
|
|
239
|
+
},
|
|
240
|
+
{
|
|
241
|
+
"path": "lib/ibex/frontend/dsl.rb",
|
|
242
|
+
"sha256": "d372c12d8bd8c35edb533aac3f9349859d4f01d38eb9767c25f5d3e56747aa49"
|
|
243
|
+
},
|
|
244
|
+
{
|
|
245
|
+
"path": "lib/ibex/frontend/formatter.rb",
|
|
246
|
+
"sha256": "93c65ffab32c0ce5bdc7583bf2bc5cd8e1ca290d8fe40eceb846dabf99cc392b"
|
|
247
|
+
},
|
|
248
|
+
{
|
|
249
|
+
"path": "lib/ibex/frontend/generated_parser.rb",
|
|
250
|
+
"sha256": "a9c909a60c9e9b44e10a417e9c80098f03217399726542936cebcfe2a35ed88a"
|
|
251
|
+
},
|
|
252
|
+
{
|
|
253
|
+
"path": "lib/ibex/frontend/generated_parser_base.rb",
|
|
254
|
+
"sha256": "50ba7a94e3c33704a4627c047328bebb55c2a5d5afcb0afa22c6ae57753d608a"
|
|
255
|
+
},
|
|
256
|
+
{
|
|
257
|
+
"path": "lib/ibex/frontend/generated_parser_includes.rb",
|
|
258
|
+
"sha256": "0a616acbe04b8660aae2581c08b75726c92f5a92fabc298be4f6204c7dd7c159"
|
|
259
|
+
},
|
|
260
|
+
{
|
|
261
|
+
"path": "lib/ibex/frontend/generated_parser_metadata.rb",
|
|
262
|
+
"sha256": "27fdc65dd639fe8c7766bcaaa6c8e495948405e1e37b49edf042cf9cd34664b7"
|
|
263
|
+
},
|
|
264
|
+
{
|
|
265
|
+
"path": "lib/ibex/frontend/generated_parser_parameters.rb",
|
|
266
|
+
"sha256": "47ecaaf7e87c7a9c025aed44a7fad9149dbad11324200c34dd88588f3c898bad"
|
|
267
|
+
},
|
|
268
|
+
{
|
|
269
|
+
"path": "lib/ibex/frontend/lexer.rb",
|
|
270
|
+
"sha256": "9aa2d3e780b1a50c605b8d6ea7ecd3f278ad25ba90205c204995bc94ed521f2c"
|
|
271
|
+
},
|
|
272
|
+
{
|
|
273
|
+
"path": "lib/ibex/frontend/lexer_recovery.rb",
|
|
274
|
+
"sha256": "97bc85b832b4e69691bbbf6256892a3a480d9a4a61244121073f50434e81d516"
|
|
275
|
+
},
|
|
276
|
+
{
|
|
277
|
+
"path": "lib/ibex/frontend/parser.rb",
|
|
278
|
+
"sha256": "a7ca03ed4092c476cef2ca05f22831438b6688b65f6abbbb446dd91b2966e17f"
|
|
279
|
+
},
|
|
280
|
+
{
|
|
281
|
+
"path": "lib/ibex/frontend/parser_configuration_support.rb",
|
|
282
|
+
"sha256": "d742ac1908ccad9b3cfe610921fd698c3d8aca33ae611ad9e8572ef3993a3c2a"
|
|
283
|
+
},
|
|
284
|
+
{
|
|
285
|
+
"path": "lib/ibex/frontend/resolution.rb",
|
|
286
|
+
"sha256": "b6ab6eed610a75c2e900304c68b9b68b0387028ed1fc06e304d270bd89bc9812"
|
|
287
|
+
},
|
|
288
|
+
{
|
|
289
|
+
"path": "lib/ibex/frontend/resolver.rb",
|
|
290
|
+
"sha256": "2d4d8d481a0d7bfacc068869d88564f4673a79b458b4e7debbcdc24b8fe53de3"
|
|
291
|
+
},
|
|
292
|
+
{
|
|
293
|
+
"path": "lib/ibex/frontend/rule_documentation.rb",
|
|
294
|
+
"sha256": "f0dcf27145a407ad253ec553b08d3004618248bc805d97a6f2b20f66765396b6"
|
|
295
|
+
},
|
|
296
|
+
{
|
|
297
|
+
"path": "lib/ibex/frontend/source_cursor.rb",
|
|
298
|
+
"sha256": "61ebec80cd3c69eaecfb61f94b1e918b32382a14a185a42f8716a1df4104642e"
|
|
299
|
+
},
|
|
300
|
+
{
|
|
301
|
+
"path": "lib/ibex/frontend/source_document.rb",
|
|
302
|
+
"sha256": "1d4d8aeb8f920b63d102453e9e8b8c8487571368d1239bcc7eae16ac011c1bd0"
|
|
303
|
+
},
|
|
304
|
+
{
|
|
305
|
+
"path": "lib/ibex/frontend/source_loader.rb",
|
|
306
|
+
"sha256": "8a5c95b5e7a66475b240ed630d06ecf98321c8335d2e9163a5c64d46bae0e27c"
|
|
307
|
+
},
|
|
308
|
+
{
|
|
309
|
+
"path": "lib/ibex/frontend/source_span.rb",
|
|
310
|
+
"sha256": "e8cafbfd62a8e13a30665bd1fae00a013f78da22aabfa229c924cec9694e0b14"
|
|
311
|
+
},
|
|
312
|
+
{
|
|
313
|
+
"path": "lib/ibex/frontend/token_adapter.rb",
|
|
314
|
+
"sha256": "5c12f66069c1162021f1b1d0b452b752168f2588fdc98811bbcc04962450f778"
|
|
315
|
+
},
|
|
316
|
+
{
|
|
317
|
+
"path": "lib/ibex/frontend/token_adapter/declaration_document_state.rb",
|
|
318
|
+
"sha256": "dc8fc43ce3872d69c271ae0e00d7a240da26bc188928ad48d6f720bf50163f9b"
|
|
319
|
+
},
|
|
320
|
+
{
|
|
321
|
+
"path": "lib/ibex/frontend/token_adapter/declaration_lexer_state.rb",
|
|
322
|
+
"sha256": "0063fc8b18f713b826f893cfa9aef1f9fa8257a2fab1485f61ca4d3f954e1def"
|
|
323
|
+
},
|
|
324
|
+
{
|
|
325
|
+
"path": "lib/ibex/frontend/token_adapter/declaration_state.rb",
|
|
326
|
+
"sha256": "b586ae991e9d70b4490f0c860e0f5160d810556581067232dfcd6f127fc7f4ba"
|
|
327
|
+
},
|
|
328
|
+
{
|
|
329
|
+
"path": "lib/ibex/frontend/token_adapter/delimiter_tracker.rb",
|
|
330
|
+
"sha256": "ee700ff1f8f9b49e16874226d4250de2175bb1fd2504f84c855f1cd7a72bad51"
|
|
331
|
+
},
|
|
332
|
+
{
|
|
333
|
+
"path": "lib/ibex/frontend/token_adapter/rule_state.rb",
|
|
334
|
+
"sha256": "bf3da6774b77224e9f3ce3f6eba43d532b632688c645f03951ad3216d0497430"
|
|
335
|
+
},
|
|
336
|
+
{
|
|
337
|
+
"path": "lib/ibex/fuzz.rb",
|
|
338
|
+
"sha256": "b9527e38fc6087c4d5abac30d11b7adf18dd2dc92610400064e02c6ed0ad85ac"
|
|
339
|
+
},
|
|
340
|
+
{
|
|
341
|
+
"path": "lib/ibex/generation_input.rb",
|
|
342
|
+
"sha256": "12b9c3f6461dbaa3e9893e4c8d0b64e64cf51201074ded3f7b6178874e8a854a"
|
|
343
|
+
},
|
|
344
|
+
{
|
|
345
|
+
"path": "lib/ibex/generation_manifest.rb",
|
|
346
|
+
"sha256": "d753ec8e50662c02d2eaf7074e0d6fa1d4cc5c219c06ffc9c3387075c17c962c"
|
|
347
|
+
},
|
|
348
|
+
{
|
|
349
|
+
"path": "lib/ibex/generation_transaction.rb",
|
|
350
|
+
"sha256": "3fb2aa0549b67fd8ebb2bff0a357e7b9df193c08b5a482d4cbbdaae77fae3867"
|
|
351
|
+
},
|
|
352
|
+
{
|
|
353
|
+
"path": "lib/ibex/generation_transaction_recovery.rb",
|
|
354
|
+
"sha256": "f8a110e9a7996a17cf9a02d46f6c9b66c5321274da6f9b00c0090d8d71c7efae"
|
|
355
|
+
},
|
|
356
|
+
{
|
|
357
|
+
"path": "lib/ibex/generation_transaction_validation.rb",
|
|
358
|
+
"sha256": "3d96fbbe2e40f88a063361623e680f62464b3876e01b930067ea87630b9fe9d6"
|
|
359
|
+
},
|
|
360
|
+
{
|
|
361
|
+
"path": "lib/ibex/grammar_tests.rb",
|
|
362
|
+
"sha256": "9b14fcf8b027ce005d270976679da3af223a0ed3f555aaa53593a6f3761ab29a"
|
|
363
|
+
},
|
|
364
|
+
{
|
|
365
|
+
"path": "lib/ibex/ir.rb",
|
|
366
|
+
"sha256": "897997bd1459f1024d06002ddd210c917ec6dc12e9b87855a2c9ba3929fedddb"
|
|
367
|
+
},
|
|
368
|
+
{
|
|
369
|
+
"path": "lib/ibex/ir/automaton_ir.rb",
|
|
370
|
+
"sha256": "eb36c3e9f4dd2c28072f899894515054dedea4510b6b436953fa364587205dbe"
|
|
371
|
+
},
|
|
372
|
+
{
|
|
373
|
+
"path": "lib/ibex/ir/grammar_ir.rb",
|
|
374
|
+
"sha256": "cb48ee7c493b6db6bf7c33c08057c5ebf8ab615a917863ce0384bea0119d65a0"
|
|
375
|
+
},
|
|
376
|
+
{
|
|
377
|
+
"path": "lib/ibex/ir/lexer_ir.rb",
|
|
378
|
+
"sha256": "17b4239b55f8e5b4c5e6edac7e75b7af746340a257c727a8c37d4671330b69bc"
|
|
379
|
+
},
|
|
380
|
+
{
|
|
381
|
+
"path": "lib/ibex/ir/parser_contract.rb",
|
|
382
|
+
"sha256": "b7a09c8f2d801e91eeacaf70e510d924e5d13999166587b3b420ec71fed7b1d6"
|
|
383
|
+
},
|
|
384
|
+
{
|
|
385
|
+
"path": "lib/ibex/ir/serialize.rb",
|
|
386
|
+
"sha256": "95fa5a97e57640c7aec935b02e87b00da269871060ad7023e3b83a9ca4a52a1a"
|
|
387
|
+
},
|
|
388
|
+
{
|
|
389
|
+
"path": "lib/ibex/ir/validator.rb",
|
|
390
|
+
"sha256": "7d92701a65114efb03ecafe2bf7ad6482f8a4144e5cadccde4e9215c6689563b"
|
|
391
|
+
},
|
|
392
|
+
{
|
|
393
|
+
"path": "lib/ibex/ir/validator/automaton.rb",
|
|
394
|
+
"sha256": "c60a3fc165bbed63160a805649c63f9d56bbb6ed21a6e2c1348ed416a4594f3a"
|
|
395
|
+
},
|
|
396
|
+
{
|
|
397
|
+
"path": "lib/ibex/ir/validator/base.rb",
|
|
398
|
+
"sha256": "4e90584f0ddce8b775d30329520307540cafe02eb556e70cb4c600cba97479ad"
|
|
399
|
+
},
|
|
400
|
+
{
|
|
401
|
+
"path": "lib/ibex/ir/validator/grammar.rb",
|
|
402
|
+
"sha256": "d966e322757d09b0de439119b2894dd96859b01ee2d4e15d7015a27fbc404579"
|
|
403
|
+
},
|
|
404
|
+
{
|
|
405
|
+
"path": "lib/ibex/ir/validator/lexer.rb",
|
|
406
|
+
"sha256": "ffcc66abdfc770fffca59ac22cbf67eff9003274168810c66c63ad4a71c6bc79"
|
|
407
|
+
},
|
|
408
|
+
{
|
|
409
|
+
"path": "lib/ibex/lalr.rb",
|
|
410
|
+
"sha256": "d34c440528243db95343666e66c66f8af5bfb509b8676b7216d5db40b7804a4f"
|
|
411
|
+
},
|
|
412
|
+
{
|
|
413
|
+
"path": "lib/ibex/lalr/build_metrics.rb",
|
|
414
|
+
"sha256": "eadf2b10f366c110a4110592b6cfe3e221b69577cb1b7993c6ebc5d4d8c31717"
|
|
415
|
+
},
|
|
416
|
+
{
|
|
417
|
+
"path": "lib/ibex/lalr/builder.rb",
|
|
418
|
+
"sha256": "69a4b832abf5c1d6332049fc584b9c46f8b43609fad65dc0682e618e84ea52ad"
|
|
419
|
+
},
|
|
420
|
+
{
|
|
421
|
+
"path": "lib/ibex/lalr/conflict.rb",
|
|
422
|
+
"sha256": "eb3660e187447a5da5e52f12281054159d0c39d541dab1f7e11582529a545d60"
|
|
423
|
+
},
|
|
424
|
+
{
|
|
425
|
+
"path": "lib/ibex/lalr/conflict_search.rb",
|
|
426
|
+
"sha256": "e1856b7c08fbbadd0297c1c5477a32d1aa5fe1c871bb119c8be89433cf8732f2"
|
|
427
|
+
},
|
|
428
|
+
{
|
|
429
|
+
"path": "lib/ibex/lalr/conflict_search_limits.rb",
|
|
430
|
+
"sha256": "5be7e568f532c8c2305e2dd581258e041aba670c4f84279c6e7c1e41be4b6b0c"
|
|
431
|
+
},
|
|
432
|
+
{
|
|
433
|
+
"path": "lib/ibex/lalr/counterexample.rb",
|
|
434
|
+
"sha256": "6977f5181ad3728d7a6237dc7868e2805018ec7f0d0aa5b2f7ec2d51e4497a73"
|
|
435
|
+
},
|
|
436
|
+
{
|
|
437
|
+
"path": "lib/ibex/lalr/default_reductions.rb",
|
|
438
|
+
"sha256": "9a25433955895039ee34400e182f3c6603a2893575f91517e4bc14e42d3889d2"
|
|
439
|
+
},
|
|
440
|
+
{
|
|
441
|
+
"path": "lib/ibex/lalr/direct_lookaheads.rb",
|
|
442
|
+
"sha256": "b3fe129a688994c14105653ecf74c3e4ed37d3a3bd3ba9fbd7410dc06684f254"
|
|
443
|
+
},
|
|
444
|
+
{
|
|
445
|
+
"path": "lib/ibex/lalr/goto_follows.rb",
|
|
446
|
+
"sha256": "45afbbbc0242b5129e832c3078e77542e42cb7707792d653f582bf8fe4d6f22f"
|
|
447
|
+
},
|
|
448
|
+
{
|
|
449
|
+
"path": "lib/ibex/lalr/ielr/annotator.rb",
|
|
450
|
+
"sha256": "0215d424e69e43127a3da025b4618ccdb5148ea84deaa2fb65a45bf7e9fa0246"
|
|
451
|
+
},
|
|
452
|
+
{
|
|
453
|
+
"path": "lib/ibex/lalr/ielr/bits.rb",
|
|
454
|
+
"sha256": "dc04aa752f6eae4f88bbbaabe0435f8367b8866c88fda89785065d2578d3544e"
|
|
455
|
+
},
|
|
456
|
+
{
|
|
457
|
+
"path": "lib/ibex/lalr/ielr/inadequacy.rb",
|
|
458
|
+
"sha256": "d2a36a3a3e430fc4566d87f7957df05a7a37aed0844617f0159bb6a09542481b"
|
|
459
|
+
},
|
|
460
|
+
{
|
|
461
|
+
"path": "lib/ibex/lalr/ielr/item_lookaheads.rb",
|
|
462
|
+
"sha256": "359d3448117447909143c815ef0c53b081893100982aa608ae50f32aa48cdd80"
|
|
463
|
+
},
|
|
464
|
+
{
|
|
465
|
+
"path": "lib/ibex/lalr/ielr/pipeline.rb",
|
|
466
|
+
"sha256": "c5dd215e3ab13482d11fb4ef7b5aa49d170dbb5456e396b57b74fe8baa1aea0b"
|
|
467
|
+
},
|
|
468
|
+
{
|
|
469
|
+
"path": "lib/ibex/lalr/ielr/split_stability.rb",
|
|
470
|
+
"sha256": "08402d91c0fe4e39d449cbf55617cee04fc73dd3aae2be8207e62b4590ccbcd3"
|
|
471
|
+
},
|
|
472
|
+
{
|
|
473
|
+
"path": "lib/ibex/lalr/ielr/split_state.rb",
|
|
474
|
+
"sha256": "a930eb4a1f0bd3ec62cc4474225f63803c5f7085bcc4a397296a81ac15ac8b36"
|
|
475
|
+
},
|
|
476
|
+
{
|
|
477
|
+
"path": "lib/ibex/lalr/ielr/state_splitter.rb",
|
|
478
|
+
"sha256": "75c3cef68be399e893a1a160027fb9abc6410e0f12adaed8acbad09c8093568c"
|
|
479
|
+
},
|
|
480
|
+
{
|
|
481
|
+
"path": "lib/ibex/lalr/ielr_partition.rb",
|
|
482
|
+
"sha256": "842610d6ce3e2ae0850807e340a38864c85c27f513e42c26a6759cd865d9a506"
|
|
483
|
+
},
|
|
484
|
+
{
|
|
485
|
+
"path": "lib/ibex/lalr/lookahead_propagation.rb",
|
|
486
|
+
"sha256": "08ebf8de10e734242f719d6d0dcd7ce658d2d222c74049d33f580b124eb0c189"
|
|
487
|
+
},
|
|
488
|
+
{
|
|
489
|
+
"path": "lib/ibex/lalr/lr0_collection.rb",
|
|
490
|
+
"sha256": "abfcca1bd7da9006be889a092af35083a8211cce4655a7c893bee91109ddd1d8"
|
|
491
|
+
},
|
|
492
|
+
{
|
|
493
|
+
"path": "lib/ibex/lalr/on_error_reductions.rb",
|
|
494
|
+
"sha256": "a906e648908960f83d0a6ba52fd26607b0b87dcd5ecf9e0d448d15ef1cb92df7"
|
|
495
|
+
},
|
|
496
|
+
{
|
|
497
|
+
"path": "lib/ibex/lalr/unreachable_states.rb",
|
|
498
|
+
"sha256": "d2abb577b11337a36ab729e705bbfc145ebc3405a6ab07a12f969a6622d5cf75"
|
|
499
|
+
},
|
|
500
|
+
{
|
|
501
|
+
"path": "lib/ibex/location.rb",
|
|
502
|
+
"sha256": "1803a2746028b22108e213bb4421751f658e068adb622217958568c81d97a9af"
|
|
503
|
+
},
|
|
504
|
+
{
|
|
505
|
+
"path": "lib/ibex/messages.rb",
|
|
506
|
+
"sha256": "c2fb8e72ce1d0a24f0aae3a418b164bc65ce394e31dddb0995d723b1dc92453e"
|
|
507
|
+
},
|
|
508
|
+
{
|
|
509
|
+
"path": "lib/ibex/metrics.rb",
|
|
510
|
+
"sha256": "4734fa25fe8a733f8828a31cb9f975b8147ea283e48bab506f7c6d4adc296003"
|
|
511
|
+
},
|
|
512
|
+
{
|
|
513
|
+
"path": "lib/ibex/normalize.rb",
|
|
514
|
+
"sha256": "f21abb211db32700c2df4f7bee8830c0541dab3b2993beb8d618e48e0b560319"
|
|
515
|
+
},
|
|
516
|
+
{
|
|
517
|
+
"path": "lib/ibex/normalize/declarations.rb",
|
|
518
|
+
"sha256": "879fe8f37e3b02252f1f166d96615dcd1023ac237de5371fe7f925d46659d9c0"
|
|
519
|
+
},
|
|
520
|
+
{
|
|
521
|
+
"path": "lib/ibex/normalize/diagnostics.rb",
|
|
522
|
+
"sha256": "7d99bd4a15dd3170863d90005d1bd1308e9730534297ecc5ca3c8c5ec4fbbcfa"
|
|
523
|
+
},
|
|
524
|
+
{
|
|
525
|
+
"path": "lib/ibex/normalize/expander.rb",
|
|
526
|
+
"sha256": "980501cbc4e119d69d9d9a7d68fe9557346f06a65d70b5595d003e24f21009ad"
|
|
527
|
+
},
|
|
528
|
+
{
|
|
529
|
+
"path": "lib/ibex/normalize/expression.rb",
|
|
530
|
+
"sha256": "665a2cf8764439cd9c3b5c87a8dc002f4e65a1049f6df003f781ac27dfa66f2a"
|
|
531
|
+
},
|
|
532
|
+
{
|
|
533
|
+
"path": "lib/ibex/normalize/grammar_builder.rb",
|
|
534
|
+
"sha256": "15f955c7807f20987d9d998e136d16675a8f8686842695e6e6c1107c33b2c022"
|
|
535
|
+
},
|
|
536
|
+
{
|
|
537
|
+
"path": "lib/ibex/normalize/inline_expansion.rb",
|
|
538
|
+
"sha256": "a4cac4b0b875e37554edea5f7570ee68b466958344bed455c98bc20487223cb9"
|
|
539
|
+
},
|
|
540
|
+
{
|
|
541
|
+
"path": "lib/ibex/normalize/inline_validation.rb",
|
|
542
|
+
"sha256": "f686c817256770c6d707ff2bc82cc06004b2068fa5fec4d4df0fde16e640091d"
|
|
543
|
+
},
|
|
544
|
+
{
|
|
545
|
+
"path": "lib/ibex/normalize/lexer.rb",
|
|
546
|
+
"sha256": "bc98cf4ae5a4a0c7ffd8d08423c2207486d8c553e369c4360a55db023119fe32"
|
|
547
|
+
},
|
|
548
|
+
{
|
|
549
|
+
"path": "lib/ibex/normalize/named_references.rb",
|
|
550
|
+
"sha256": "0dd6625a8e5c4e3137561f3c8516677bd20297956352510391b60ef74982686e"
|
|
551
|
+
},
|
|
552
|
+
{
|
|
553
|
+
"path": "lib/ibex/normalize/nodes.rb",
|
|
554
|
+
"sha256": "098e52fba16dabf57666dcc8719adec72921fbc4bdc4ccfe1a5d5ced5e22b640"
|
|
555
|
+
},
|
|
556
|
+
{
|
|
557
|
+
"path": "lib/ibex/normalize/parameter_ebnf_lowering.rb",
|
|
558
|
+
"sha256": "9bf94cf4ebdba927b0043c7e844b390a58b60157d7e7e2aa42db53896ee53e6a"
|
|
559
|
+
},
|
|
560
|
+
{
|
|
561
|
+
"path": "lib/ibex/normalize/parameter_lowering.rb",
|
|
562
|
+
"sha256": "a69b822214311b9f5ae50efdc70418afa5cf236f1e4ee892b06d0b29ff2ba789"
|
|
563
|
+
},
|
|
564
|
+
{
|
|
565
|
+
"path": "lib/ibex/normalize/parameter_substitution.rb",
|
|
566
|
+
"sha256": "9f990c5760a26d4315b414e92a04b66cf002b9029d0021c17e470054d677b714"
|
|
567
|
+
},
|
|
568
|
+
{
|
|
569
|
+
"path": "lib/ibex/normalize/parameter_validation.rb",
|
|
570
|
+
"sha256": "379cd0f7b781d69e77e711b2f80a7d4b7fcdebbd5b358239e6594c29b872c06c"
|
|
571
|
+
},
|
|
572
|
+
{
|
|
573
|
+
"path": "lib/ibex/normalize/parameters.rb",
|
|
574
|
+
"sha256": "62f01879b1d945b65a8434fd2704d08318af17add6263fb76fd72fd61b421bb9"
|
|
575
|
+
},
|
|
576
|
+
{
|
|
577
|
+
"path": "lib/ibex/normalize/parser_configuration.rb",
|
|
578
|
+
"sha256": "79424dc443d89fc6bb00102d37627fdde11a1d53e06df7ed254968a5d466b589"
|
|
579
|
+
},
|
|
580
|
+
{
|
|
581
|
+
"path": "lib/ibex/normalize/recovery_declarations.rb",
|
|
582
|
+
"sha256": "0d31899c592f9b69ad0e92193698add61c7eaad414bf84e3a778c01c39db19dd"
|
|
583
|
+
},
|
|
584
|
+
{
|
|
585
|
+
"path": "lib/ibex/racc_migration.rb",
|
|
586
|
+
"sha256": "078c3b3ac774531ca152f694c63ca6221d133cd80e29585f163584a5842013c0"
|
|
587
|
+
},
|
|
588
|
+
{
|
|
589
|
+
"path": "lib/ibex/racc_migration/checker.rb",
|
|
590
|
+
"sha256": "316865179c49de72a25e94f23b85b6a6741f6511b17f9198ff706cb024447016"
|
|
591
|
+
},
|
|
592
|
+
{
|
|
593
|
+
"path": "lib/ibex/racc_migration/harness.rb",
|
|
594
|
+
"sha256": "6aa57c8419805f4955e964d4588e4e016321c596987af44d74d31874e4b4e99f"
|
|
595
|
+
},
|
|
596
|
+
{
|
|
597
|
+
"path": "lib/ibex/racc_migration/report.rb",
|
|
598
|
+
"sha256": "ab2aacf6d0a4b34795950fb350d94a578377d7827fdf2820836d9339e88d996f"
|
|
599
|
+
},
|
|
600
|
+
{
|
|
601
|
+
"path": "lib/ibex/runtime.rb",
|
|
602
|
+
"sha256": "ff3acecc17a199bafc92c2bf7c9c8adda7bac9949b2a449920f92b88c7cc5f68"
|
|
603
|
+
},
|
|
604
|
+
{
|
|
605
|
+
"path": "lib/ibex/runtime/ast_data.rb",
|
|
606
|
+
"sha256": "1789723c3100218de1025886e90d3e465df8fc95d243f0f3f31c85dff0c83044"
|
|
607
|
+
},
|
|
608
|
+
{
|
|
609
|
+
"path": "lib/ibex/runtime/cst.rb",
|
|
610
|
+
"sha256": "451f752b9823fb78513d453270fb4562ff4438ba43122a5b99614d6fb364e734"
|
|
611
|
+
},
|
|
612
|
+
{
|
|
613
|
+
"path": "lib/ibex/runtime/cst/annotation.rb",
|
|
614
|
+
"sha256": "61891907ef3524b709fb1b00a31c9aad498804e0d35cc074c8dbc122e538df02"
|
|
615
|
+
},
|
|
616
|
+
{
|
|
617
|
+
"path": "lib/ibex/runtime/cst/cursor.rb",
|
|
618
|
+
"sha256": "3b5ed23c7db29afada8f7292b41169d92c7d016b8ab7c984e1521d8713175649"
|
|
619
|
+
},
|
|
620
|
+
{
|
|
621
|
+
"path": "lib/ibex/runtime/cst/diff.rb",
|
|
622
|
+
"sha256": "a69e9f9eab058f0bd44776aa915d7e5c4a0b09dc57cd51e7776f60650d4bb4ff"
|
|
623
|
+
},
|
|
624
|
+
{
|
|
625
|
+
"path": "lib/ibex/runtime/cst/editing.rb",
|
|
626
|
+
"sha256": "66bc38c8684b223f30a19190aed701af1468fec86d6c9ef9ce6827d5274d9d50"
|
|
627
|
+
},
|
|
628
|
+
{
|
|
629
|
+
"path": "lib/ibex/runtime/cst/editor.rb",
|
|
630
|
+
"sha256": "6b19310409cfd1a3d561b9a22f4f0e76f80b956c799be56d44b5faec180d3f45"
|
|
631
|
+
},
|
|
632
|
+
{
|
|
633
|
+
"path": "lib/ibex/runtime/cst/green/builder.rb",
|
|
634
|
+
"sha256": "d56fcd613d654ebf57908565111877b64d2b5df141fdadbe090e341094a2e042"
|
|
635
|
+
},
|
|
636
|
+
{
|
|
637
|
+
"path": "lib/ibex/runtime/cst/green/cache.rb",
|
|
638
|
+
"sha256": "26223513301890764dc7653d7421a9f6d7eecfdec1316a3710ac4ad8bd943139"
|
|
639
|
+
},
|
|
640
|
+
{
|
|
641
|
+
"path": "lib/ibex/runtime/cst/green/node.rb",
|
|
642
|
+
"sha256": "261d88683b8d7d2e1e674c57afa2f9b114c511b0c0d61b21c00680d22fa68c11"
|
|
643
|
+
},
|
|
644
|
+
{
|
|
645
|
+
"path": "lib/ibex/runtime/cst/green/token.rb",
|
|
646
|
+
"sha256": "442b1c197c6c890b3cf5b8106692effa4b9e01ab977dde5d513b42207f369530"
|
|
647
|
+
},
|
|
648
|
+
{
|
|
649
|
+
"path": "lib/ibex/runtime/cst/green/trivia.rb",
|
|
650
|
+
"sha256": "1d7f33933403b92af3c8c806b0fa3a1f8e9798f14c0d67fd2d675a74049f1b7e"
|
|
651
|
+
},
|
|
652
|
+
{
|
|
653
|
+
"path": "lib/ibex/runtime/cst/incremental/blender.rb",
|
|
654
|
+
"sha256": "1d8ce24e72860c8f6f65b2f60601752db4d206cb38b7d4e753a10309c4b302c9"
|
|
655
|
+
},
|
|
656
|
+
{
|
|
657
|
+
"path": "lib/ibex/runtime/cst/incremental/lexed_syntax.rb",
|
|
658
|
+
"sha256": "c2304108def950fdbfb5ba78c23c05bdc0720587ed66fa43c5b38eb666c5f2d0"
|
|
659
|
+
},
|
|
660
|
+
{
|
|
661
|
+
"path": "lib/ibex/runtime/cst/incremental/parse_memo.rb",
|
|
662
|
+
"sha256": "3c2c2493a7d89901dc60589ce42388e4cb3bd36b5c155a38af4a633cc1796d82"
|
|
663
|
+
},
|
|
664
|
+
{
|
|
665
|
+
"path": "lib/ibex/runtime/cst/incremental/relexer.rb",
|
|
666
|
+
"sha256": "14157088f33f4517cfe91af7de5fc428bd0f114222b31d3c3ea7ff7ce257dfb3"
|
|
667
|
+
},
|
|
668
|
+
{
|
|
669
|
+
"path": "lib/ibex/runtime/cst/incremental/session.rb",
|
|
670
|
+
"sha256": "8092f39b1a57d29d89188ec0189923a78063ec9d05cceff300b7158b87afe806"
|
|
671
|
+
},
|
|
672
|
+
{
|
|
673
|
+
"path": "lib/ibex/runtime/cst/incremental/token_memo.rb",
|
|
674
|
+
"sha256": "ee8d8ece9a2b20261680bdf1d7cefdb2472a28f8ad8d37fab356f869b3e5d933"
|
|
675
|
+
},
|
|
676
|
+
{
|
|
677
|
+
"path": "lib/ibex/runtime/cst/kind.rb",
|
|
678
|
+
"sha256": "8f38c35cb46d829282abe229f06a46837c567dc871bd0e331f5bcb832cb5e5cb"
|
|
679
|
+
},
|
|
680
|
+
{
|
|
681
|
+
"path": "lib/ibex/runtime/cst/parse_result.rb",
|
|
682
|
+
"sha256": "1343782fc10b6597b21f22aebd1abfdf08c77d79c234e3947dd4df6d156e767f"
|
|
683
|
+
},
|
|
684
|
+
{
|
|
685
|
+
"path": "lib/ibex/runtime/cst/rewriter.rb",
|
|
686
|
+
"sha256": "3948178830fc91ab9c1bb54784103dc7bda5c7875882ec83b1c4a3c0c6eac141"
|
|
687
|
+
},
|
|
688
|
+
{
|
|
689
|
+
"path": "lib/ibex/runtime/cst/serialize.rb",
|
|
690
|
+
"sha256": "82d6bf47730641ea0dd896f9af3238a31631f45faf741e92dfa445533c030c3c"
|
|
691
|
+
},
|
|
692
|
+
{
|
|
693
|
+
"path": "lib/ibex/runtime/cst/serialized_tree.rb",
|
|
694
|
+
"sha256": "39031ae83edc03934202a38c7f827dd2b70f3c32d0d7d3ca8042c952a01a1646"
|
|
695
|
+
},
|
|
696
|
+
{
|
|
697
|
+
"path": "lib/ibex/runtime/cst/source_text.rb",
|
|
698
|
+
"sha256": "c20b8800b4ca1ff23412e92bee16ad4b5bbfe8d20f557ceede4bf2a18b5cd909"
|
|
699
|
+
},
|
|
700
|
+
{
|
|
701
|
+
"path": "lib/ibex/runtime/cst/syntax_node.rb",
|
|
702
|
+
"sha256": "5587f00adeb99378beb3f698b09ba1ff4e64fcdc6512822fb6f2fdefd3151649"
|
|
703
|
+
},
|
|
704
|
+
{
|
|
705
|
+
"path": "lib/ibex/runtime/cst/syntax_token.rb",
|
|
706
|
+
"sha256": "b04044b301a451e24cd505efa531dd334a6d018fe6227920f698644f6e4313f6"
|
|
707
|
+
},
|
|
708
|
+
{
|
|
709
|
+
"path": "lib/ibex/runtime/cst/text_edit.rb",
|
|
710
|
+
"sha256": "3628f7061f0d65f4234c08b0e9779b0f41735ff7b51559553844a9b23175bde1"
|
|
711
|
+
},
|
|
712
|
+
{
|
|
713
|
+
"path": "lib/ibex/runtime/cst/typed_node.rb",
|
|
714
|
+
"sha256": "b61beeaef352c66a656c6553d89878bdd40cf9f06d38ddf73c6ce881fda2e474"
|
|
715
|
+
},
|
|
716
|
+
{
|
|
717
|
+
"path": "lib/ibex/runtime/cst/validator.rb",
|
|
718
|
+
"sha256": "236ab49d36d7d32bb425aa21564f958d342929c811a9a0ea286a47590ef00795"
|
|
719
|
+
},
|
|
720
|
+
{
|
|
721
|
+
"path": "lib/ibex/runtime/embedded_source.rb",
|
|
722
|
+
"sha256": "76b933beec10a8202e93cf92eb825226fcb1d085f281645399c83734e06b5fc3"
|
|
723
|
+
},
|
|
724
|
+
{
|
|
725
|
+
"path": "lib/ibex/runtime/event.rb",
|
|
726
|
+
"sha256": "9c6d15fe7a8635c704caaf217b61532d13c9bbcf39eb7f04689d65cc6e2b0bc8"
|
|
727
|
+
},
|
|
728
|
+
{
|
|
729
|
+
"path": "lib/ibex/runtime/event_jsonl_tracer.rb",
|
|
730
|
+
"sha256": "21ca6f0909b1298cad21aad190f229e61c07a199431249d662761c5e2885ba5b"
|
|
731
|
+
},
|
|
732
|
+
{
|
|
733
|
+
"path": "lib/ibex/runtime/event_sanitizer.rb",
|
|
734
|
+
"sha256": "fe24d2075e108c776be52c956b1490ae23c82b57bfb451b3af88b2eb60db692f"
|
|
735
|
+
},
|
|
736
|
+
{
|
|
737
|
+
"path": "lib/ibex/runtime/generated_lexer.rb",
|
|
738
|
+
"sha256": "f2a798d9f45ced3a6dba12a9473b40fb0b904e2f8f3e0875ee88b49a4daf0f55"
|
|
739
|
+
},
|
|
740
|
+
{
|
|
741
|
+
"path": "lib/ibex/runtime/lexer_input.rb",
|
|
742
|
+
"sha256": "ce01d07b9d1ddf0bad6aff025ebf56805762a2124ddee854e54750f9711dd890"
|
|
743
|
+
},
|
|
744
|
+
{
|
|
745
|
+
"path": "lib/ibex/runtime/location_span.rb",
|
|
746
|
+
"sha256": "b3d899acd6b224b33611c545e782ff25f399ca6c65df2ff6102281bd27ee0357"
|
|
747
|
+
},
|
|
748
|
+
{
|
|
749
|
+
"path": "lib/ibex/runtime/observation.rb",
|
|
750
|
+
"sha256": "b521e6e5702a7ae90480febd5ca5b3ab91e2f3cfbf3e0a4ea59e2aa094d3c93d"
|
|
751
|
+
},
|
|
752
|
+
{
|
|
753
|
+
"path": "lib/ibex/runtime/parser.rb",
|
|
754
|
+
"sha256": "61a0b1fedc16cacf6386e2a3eb1d0381e72698c7562f920c9b763b476f5f23dd"
|
|
755
|
+
},
|
|
756
|
+
{
|
|
757
|
+
"path": "lib/ibex/runtime/parser_sync_recovery.rb",
|
|
758
|
+
"sha256": "f8dfce48fc13f49dd90959f04c01d372c02c9046ab73565e050bba3bb3b10363"
|
|
759
|
+
},
|
|
760
|
+
{
|
|
761
|
+
"path": "lib/ibex/runtime/repair.rb",
|
|
762
|
+
"sha256": "ebc613ae0a6e5a11723097c8141748edeeeb5ae9e9051937690cb0823eda9e43"
|
|
763
|
+
},
|
|
764
|
+
{
|
|
765
|
+
"path": "lib/ibex/runtime/repair_priority_queue.rb",
|
|
766
|
+
"sha256": "e3240a816f3877790988455745521883aa50907ea802094fd5b79b69998c400f"
|
|
767
|
+
},
|
|
768
|
+
{
|
|
769
|
+
"path": "lib/ibex/runtime/repair_search.rb",
|
|
770
|
+
"sha256": "c3d4fe2446676f5d43787732dc029835316c1125e28e7f2d87bf8d91b06d381a"
|
|
771
|
+
},
|
|
772
|
+
{
|
|
773
|
+
"path": "lib/ibex/runtime/resource_limits.rb",
|
|
774
|
+
"sha256": "476cc7d6dedbeb9a14bcc612277f38c9ac839148cee593f3a8df445f3175f329"
|
|
775
|
+
},
|
|
776
|
+
{
|
|
777
|
+
"path": "lib/ibex/runtime/syntax_repair.rb",
|
|
778
|
+
"sha256": "70c84b2b76a59f9427638d53af1f3bb5e4e1679f985678edb4add461687af9f7"
|
|
779
|
+
},
|
|
780
|
+
{
|
|
781
|
+
"path": "lib/ibex/runtime/syntax_session.rb",
|
|
782
|
+
"sha256": "75c35d1cfcc68258b1981e7543942597348936e25427c7b4615be89d18cea12e"
|
|
783
|
+
},
|
|
784
|
+
{
|
|
785
|
+
"path": "lib/ibex/runtime/table_format.rb",
|
|
786
|
+
"sha256": "7a792b78f825759d6ff11dbce5a33be679445bdfbb24875cea801c9df70951dd"
|
|
787
|
+
},
|
|
788
|
+
{
|
|
789
|
+
"path": "lib/ibex/samples.rb",
|
|
790
|
+
"sha256": "d65c379dc456aea2facf0e482a7e90aa663f6668412063ea05992780b889cc25"
|
|
791
|
+
},
|
|
792
|
+
{
|
|
793
|
+
"path": "lib/ibex/table_simulation.rb",
|
|
794
|
+
"sha256": "dcf21feb35440673e7eff60d910a158696563c6569a912b213c1ddb27c0bbcf9"
|
|
795
|
+
},
|
|
796
|
+
{
|
|
797
|
+
"path": "lib/ibex/table_simulation/result.rb",
|
|
798
|
+
"sha256": "4df57806b245e76732d9de08f0e2ef9478b511674456bbbe1136a5d853dc7d2b"
|
|
799
|
+
},
|
|
800
|
+
{
|
|
801
|
+
"path": "lib/ibex/table_simulation/simulator.rb",
|
|
802
|
+
"sha256": "7437bbd174569db33e310e7df1af3ba30c74303ba65b1e23554f929104a90f7c"
|
|
803
|
+
},
|
|
804
|
+
{
|
|
805
|
+
"path": "lib/ibex/table_simulation/step.rb",
|
|
806
|
+
"sha256": "1438f959bed880a0f644ffb1d8809590919162ac23d2da90af6d44cd35376837"
|
|
807
|
+
},
|
|
808
|
+
{
|
|
809
|
+
"path": "lib/ibex/table_simulation/text.rb",
|
|
810
|
+
"sha256": "7e8fc3cd122f36a758de28aef001e17f9d2f95b85ebde5e3c547e8e648077d8e"
|
|
811
|
+
},
|
|
812
|
+
{
|
|
813
|
+
"path": "lib/ibex/tables.rb",
|
|
814
|
+
"sha256": "c11c96de7eaa3f996360bd2386c2be66092f8600110d0327d861fc73c1de1a60"
|
|
815
|
+
},
|
|
816
|
+
{
|
|
817
|
+
"path": "lib/ibex/tables/compact.rb",
|
|
818
|
+
"sha256": "92005ede6302ce7d9054774f6c25fa2fdb77fe95b30cc044c63de34104fc3561"
|
|
819
|
+
},
|
|
820
|
+
{
|
|
821
|
+
"path": "lib/ibex/tables/compact_actions.rb",
|
|
822
|
+
"sha256": "6f341f467827ac0976734be03219df903834397cf667015a30b097f9bb5a83bc"
|
|
823
|
+
},
|
|
824
|
+
{
|
|
825
|
+
"path": "lib/ibex/tables/compact_productions.rb",
|
|
826
|
+
"sha256": "69dacb2962b30c11c3cdd53a5391307a3e41712f1dc93b07d4dd3af8dcaca92c"
|
|
827
|
+
},
|
|
828
|
+
{
|
|
829
|
+
"path": "lib/ibex/verify.rb",
|
|
830
|
+
"sha256": "8ded291c2e33e6e763b894f92b66230610763331801c35569c0420581c5f00de"
|
|
831
|
+
},
|
|
832
|
+
{
|
|
833
|
+
"path": "lib/ibex/verify/action_correspondence.rb",
|
|
834
|
+
"sha256": "881a726059f0ce3dd2451111b3bf4a7c82dee5b796d4976af4f7bb2630f17c49"
|
|
835
|
+
},
|
|
836
|
+
{
|
|
837
|
+
"path": "lib/ibex/verify/language_witness.rb",
|
|
838
|
+
"sha256": "0ca62fd96bd0e9976b542fd41bcf9270c4dffd7964db31c8ec6a15a9c6cf10d1"
|
|
839
|
+
},
|
|
840
|
+
{
|
|
841
|
+
"path": "lib/ibex/verify/reference_collection.rb",
|
|
842
|
+
"sha256": "d07e900652c61ddd942380d49edce0a3c811605cd82490c1e0e6db54010746fb"
|
|
843
|
+
},
|
|
844
|
+
{
|
|
845
|
+
"path": "lib/ibex/verify/result.rb",
|
|
846
|
+
"sha256": "bafe8474cfa9a60f810461593833b75c1e840007d8ee83d31c1b3272256e6719"
|
|
847
|
+
},
|
|
848
|
+
{
|
|
849
|
+
"path": "lib/ibex/verify/verifier.rb",
|
|
850
|
+
"sha256": "934ae84111581d2edd4230b06733f259bbf72839042a67c62d20558973af2e2e"
|
|
851
|
+
},
|
|
852
|
+
{
|
|
853
|
+
"path": "lib/ibex/watch.rb",
|
|
854
|
+
"sha256": "818710c2fc444ae7910bf98d3b3c0a2cedd425115936b4f10a659a52cc09ac33"
|
|
855
|
+
},
|
|
856
|
+
{
|
|
857
|
+
"path": "lib/ibex/watch/runner.rb",
|
|
858
|
+
"sha256": "0011eab3c3d059e4f89048e12b934984ecbe031aa1c9d023821cf8807af418e9"
|
|
859
|
+
},
|
|
860
|
+
{
|
|
861
|
+
"path": "lib/ibex/watch/source_snapshot.rb",
|
|
862
|
+
"sha256": "cd4b7f425b4fc7346897644942a43711e23613b07787f9b10deb776912d6e1ef"
|
|
863
|
+
},
|
|
864
|
+
{
|
|
865
|
+
"path": "tool/error_ux_round2.rb",
|
|
866
|
+
"sha256": "5dd51f74c5f356b1fce9081eb7408331c36d5b64ad075fac69962d715b28ffc7"
|
|
867
|
+
},
|
|
868
|
+
{
|
|
869
|
+
"path": "tool/error_ux_round2/capture.rb",
|
|
870
|
+
"sha256": "d3b8daf79d7364b728bec8dc3356643b235b9f5e0b6c0716e6f346a3e524d795"
|
|
871
|
+
},
|
|
872
|
+
{
|
|
873
|
+
"path": "tool/error_ux_round2/case_runner.rb",
|
|
874
|
+
"sha256": "c4f083c00a85cc15ab52ef860d83de760a150c2d5bd4eeecc2ed8d961a214f23"
|
|
875
|
+
},
|
|
876
|
+
{
|
|
877
|
+
"path": "tool/error_ux_round2/implementation_closure.rb",
|
|
878
|
+
"sha256": "60f1fac3f41ea5246809bb6050fb7bf74e442079df6c45d5b2d14fa88b14a1b2"
|
|
879
|
+
},
|
|
880
|
+
{
|
|
881
|
+
"path": "tool/error_ux_round2/policy.rb",
|
|
882
|
+
"sha256": "16f078d4b329c2fedf079eb262e5429c3bb8753b2353d190909ce5f4ce79d94e"
|
|
883
|
+
},
|
|
884
|
+
{
|
|
885
|
+
"path": "tool/error_ux_round2/source_edit.rb",
|
|
886
|
+
"sha256": "3da949a34e99b537688dd41691de8726f1674925587378730ddf0f7eb88c1409"
|
|
887
|
+
}
|
|
888
|
+
],
|
|
889
|
+
"case_count": 7,
|
|
890
|
+
"deterministic_regeneration": true,
|
|
891
|
+
"r001_normative_snapshot": {
|
|
892
|
+
"path": "test/fixtures/error_ux/json-errors-v1.json",
|
|
893
|
+
"sha256": "bf49b2f8ba5329f1984d6e90e4b170b5811f4c800536fca56eba1f2725189dbf",
|
|
894
|
+
"expected_sha256": "bf49b2f8ba5329f1984d6e90e4b170b5811f4c800536fca56eba1f2725189dbf",
|
|
895
|
+
"status": "unchanged"
|
|
896
|
+
}
|
|
897
|
+
},
|
|
898
|
+
"problem": {
|
|
899
|
+
"statement": "Repository evidence must test diagnostic and repair behavior beyond the ten R001 JSON cases.",
|
|
900
|
+
"required_dimensions": [
|
|
901
|
+
"delimiter-heavy",
|
|
902
|
+
"statement-language",
|
|
903
|
+
"stateful-string-lexer",
|
|
904
|
+
"eof-error",
|
|
905
|
+
"multi-error-continuation",
|
|
906
|
+
"unknown-token",
|
|
907
|
+
"lexer-failure"
|
|
908
|
+
],
|
|
909
|
+
"excluded_dimensions": [
|
|
910
|
+
{
|
|
911
|
+
"dimension": "indentation-sensitive-language",
|
|
912
|
+
"status": "excluded-unimplemented",
|
|
913
|
+
"reason": "ibex-has-no-indentation-tokenization-contract"
|
|
914
|
+
}
|
|
915
|
+
]
|
|
916
|
+
},
|
|
917
|
+
"semantics": {
|
|
918
|
+
"expected_tokens": "Parser diagnostics report the exact runtime expected-token set; lexer failures have no parser state.",
|
|
919
|
+
"proposed_edit": "A repository-authored source edit is evaluated separately from the bounded runtime repair plan.",
|
|
920
|
+
"fresh_reparse": "Edits are applied by byte range and parsed by a newly allocated generated parser.",
|
|
921
|
+
"semantic_value_risk": "Syntactic acceptance does not establish that inserted, deleted, or replaced semantic values match user intent."
|
|
922
|
+
},
|
|
923
|
+
"trust_boundary": {
|
|
924
|
+
"execution_trust_label": "executes-application-code",
|
|
925
|
+
"fixture_code": "repository-owned-trusted",
|
|
926
|
+
"generated_code_execution": "enabled-for-listed-fixtures-only",
|
|
927
|
+
"external_code_execution": "forbidden",
|
|
928
|
+
"statement": "The capture executes generated lexer and action code only from the four allowlisted repository fixtures."
|
|
929
|
+
},
|
|
930
|
+
"external_subjective_gate": {
|
|
931
|
+
"status": "HOLD",
|
|
932
|
+
"reason": "no-external-review-records",
|
|
933
|
+
"allowed_labels": [
|
|
934
|
+
"useful",
|
|
935
|
+
"misleading",
|
|
936
|
+
"unsafe",
|
|
937
|
+
"unclear"
|
|
938
|
+
],
|
|
939
|
+
"records": []
|
|
940
|
+
},
|
|
941
|
+
"limitations": [
|
|
942
|
+
{
|
|
943
|
+
"code": "repository-only",
|
|
944
|
+
"statement": "No external workload or reviewer is represented."
|
|
945
|
+
},
|
|
946
|
+
{
|
|
947
|
+
"code": "single-selected-repair",
|
|
948
|
+
"statement": "Bounded repair reports one selected plan, not every equal-cost edit."
|
|
949
|
+
},
|
|
950
|
+
{
|
|
951
|
+
"code": "acceptance-not-intent",
|
|
952
|
+
"statement": "A successful fresh parse does not prove intended program semantics."
|
|
953
|
+
},
|
|
954
|
+
{
|
|
955
|
+
"code": "no-indentation",
|
|
956
|
+
"statement": "Indentation diagnostics are excluded because no indentation contract exists."
|
|
957
|
+
}
|
|
958
|
+
],
|
|
959
|
+
"kill_conditions": [
|
|
960
|
+
{
|
|
961
|
+
"code": "fixture-drift",
|
|
962
|
+
"statement": "Fail when a fixture or corpus digest changes without regenerated evidence."
|
|
963
|
+
},
|
|
964
|
+
{
|
|
965
|
+
"code": "coverage-loss",
|
|
966
|
+
"statement": "Fail when a required H003 dimension has no case."
|
|
967
|
+
},
|
|
968
|
+
{
|
|
969
|
+
"code": "r001-mutation",
|
|
970
|
+
"statement": "Fail when the normative R001 snapshot digest changes."
|
|
971
|
+
},
|
|
972
|
+
{
|
|
973
|
+
"code": "review-overclaim",
|
|
974
|
+
"statement": "Fail when HOLD has a review record or a pending case has labels."
|
|
975
|
+
},
|
|
976
|
+
{
|
|
977
|
+
"code": "fresh-reparse-regression",
|
|
978
|
+
"statement": "Fail when a proposed edit no longer produces its committed fresh outcome."
|
|
979
|
+
}
|
|
980
|
+
],
|
|
981
|
+
"cases": [
|
|
982
|
+
{
|
|
983
|
+
"id": "H003-DELIMITER-01",
|
|
984
|
+
"dimensions": [
|
|
985
|
+
"delimiter-heavy"
|
|
986
|
+
],
|
|
987
|
+
"grammar": "test/fixtures/error_ux_round2/delimiters.y",
|
|
988
|
+
"input": "outer(inner(a,b),c]",
|
|
989
|
+
"input_sha256": "f2039b19d0256dada39bdc4861df60f81c176348dfbe66d57db9bf06ea204926",
|
|
990
|
+
"observation": {
|
|
991
|
+
"mode": "single-rejection",
|
|
992
|
+
"parse_status": "rejected",
|
|
993
|
+
"diagnostics": [
|
|
994
|
+
{
|
|
995
|
+
"phase": "parser",
|
|
996
|
+
"message": "(h003-delimiters):1:19: unexpected \"]\"; expected '(', ')', ',' (nil)\nouter(inner(a,b),c]\n ^",
|
|
997
|
+
"token": "\"]\"",
|
|
998
|
+
"expected_tokens": {
|
|
999
|
+
"availability": "available",
|
|
1000
|
+
"tokens": [
|
|
1001
|
+
"'('",
|
|
1002
|
+
"')'",
|
|
1003
|
+
"','"
|
|
1004
|
+
],
|
|
1005
|
+
"reason": null
|
|
1006
|
+
},
|
|
1007
|
+
"state": 5,
|
|
1008
|
+
"location": {
|
|
1009
|
+
"line": 1,
|
|
1010
|
+
"column": 19,
|
|
1011
|
+
"start_byte": 18,
|
|
1012
|
+
"source_line": "outer(inner(a,b),c]",
|
|
1013
|
+
"caret": " ^"
|
|
1014
|
+
}
|
|
1015
|
+
}
|
|
1016
|
+
]
|
|
1017
|
+
},
|
|
1018
|
+
"bounded_repair": {
|
|
1019
|
+
"status": "selected",
|
|
1020
|
+
"parse_status": "accepted",
|
|
1021
|
+
"plan": {
|
|
1022
|
+
"cost": 2,
|
|
1023
|
+
"configurations": 73,
|
|
1024
|
+
"edits": [
|
|
1025
|
+
{
|
|
1026
|
+
"kind": "delete",
|
|
1027
|
+
"position": 0,
|
|
1028
|
+
"token_id": null,
|
|
1029
|
+
"token_name": "\"]\"",
|
|
1030
|
+
"cost": 1,
|
|
1031
|
+
"token_id_scope": "temporary-external"
|
|
1032
|
+
},
|
|
1033
|
+
{
|
|
1034
|
+
"kind": "insert",
|
|
1035
|
+
"position": 1,
|
|
1036
|
+
"token_id": 8,
|
|
1037
|
+
"token_name": "')'",
|
|
1038
|
+
"cost": 1,
|
|
1039
|
+
"token_id_scope": "grammar"
|
|
1040
|
+
}
|
|
1041
|
+
]
|
|
1042
|
+
}
|
|
1043
|
+
},
|
|
1044
|
+
"proposed_edit": {
|
|
1045
|
+
"summary": "replace the mismatched closing bracket with a parenthesis",
|
|
1046
|
+
"operations": [
|
|
1047
|
+
{
|
|
1048
|
+
"start_byte": 18,
|
|
1049
|
+
"end_byte": 19,
|
|
1050
|
+
"replacement": ")"
|
|
1051
|
+
}
|
|
1052
|
+
],
|
|
1053
|
+
"applied_source_sha256": "66a840098bcc1fc9ae297a6d420f064c4b8d131fff6d4007fd2f0887780239af"
|
|
1054
|
+
},
|
|
1055
|
+
"fresh_reparse": {
|
|
1056
|
+
"status": "accepted",
|
|
1057
|
+
"diagnostic_count": 0,
|
|
1058
|
+
"value_class": "Array"
|
|
1059
|
+
},
|
|
1060
|
+
"semantic_value_risk": {
|
|
1061
|
+
"level": "low",
|
|
1062
|
+
"category": "structural-delimiter",
|
|
1063
|
+
"statement": "The edit changes only a nil-valued delimiter token."
|
|
1064
|
+
},
|
|
1065
|
+
"external_review": {
|
|
1066
|
+
"status": "pending",
|
|
1067
|
+
"labels": []
|
|
1068
|
+
},
|
|
1069
|
+
"grammar_sha256": "dba52fd7b54466caab8c7dc29534e1df1ef2673c7c13816e4c15fe33750b5045"
|
|
1070
|
+
},
|
|
1071
|
+
{
|
|
1072
|
+
"id": "H003-STATEMENT-01",
|
|
1073
|
+
"dimensions": [
|
|
1074
|
+
"statement-language"
|
|
1075
|
+
],
|
|
1076
|
+
"grammar": "test/fixtures/error_ux_round2/statements.y",
|
|
1077
|
+
"input": "answer = ;",
|
|
1078
|
+
"input_sha256": "0eb15eaab4e30f29b570c3a33f6592e23048d802a6062a95208bb03930837174",
|
|
1079
|
+
"observation": {
|
|
1080
|
+
"mode": "single-rejection",
|
|
1081
|
+
"parse_status": "rejected",
|
|
1082
|
+
"diagnostics": [
|
|
1083
|
+
{
|
|
1084
|
+
"phase": "parser",
|
|
1085
|
+
"message": "(h003-statements):1:10: unexpected ';'; expected NUMBER (nil)\nanswer = ;\n ^",
|
|
1086
|
+
"token": "';'",
|
|
1087
|
+
"expected_tokens": {
|
|
1088
|
+
"availability": "available",
|
|
1089
|
+
"tokens": [
|
|
1090
|
+
"NUMBER"
|
|
1091
|
+
],
|
|
1092
|
+
"reason": null
|
|
1093
|
+
},
|
|
1094
|
+
"state": 8,
|
|
1095
|
+
"location": {
|
|
1096
|
+
"line": 1,
|
|
1097
|
+
"column": 10,
|
|
1098
|
+
"start_byte": 9,
|
|
1099
|
+
"source_line": "answer = ;",
|
|
1100
|
+
"caret": " ^"
|
|
1101
|
+
}
|
|
1102
|
+
}
|
|
1103
|
+
]
|
|
1104
|
+
},
|
|
1105
|
+
"bounded_repair": {
|
|
1106
|
+
"status": "selected",
|
|
1107
|
+
"parse_status": "accepted",
|
|
1108
|
+
"plan": {
|
|
1109
|
+
"cost": 1,
|
|
1110
|
+
"configurations": 37,
|
|
1111
|
+
"edits": [
|
|
1112
|
+
{
|
|
1113
|
+
"kind": "insert",
|
|
1114
|
+
"position": 0,
|
|
1115
|
+
"token_id": 3,
|
|
1116
|
+
"token_name": "NUMBER",
|
|
1117
|
+
"cost": 1,
|
|
1118
|
+
"token_id_scope": "grammar"
|
|
1119
|
+
}
|
|
1120
|
+
]
|
|
1121
|
+
}
|
|
1122
|
+
},
|
|
1123
|
+
"proposed_edit": {
|
|
1124
|
+
"summary": "insert an explicit numeric value before the terminator",
|
|
1125
|
+
"operations": [
|
|
1126
|
+
{
|
|
1127
|
+
"start_byte": 9,
|
|
1128
|
+
"end_byte": 9,
|
|
1129
|
+
"replacement": "0"
|
|
1130
|
+
}
|
|
1131
|
+
],
|
|
1132
|
+
"applied_source_sha256": "11f279e93ac4b68690d617af80227eb97f850aaa143cbb43060064f4b7342183"
|
|
1133
|
+
},
|
|
1134
|
+
"fresh_reparse": {
|
|
1135
|
+
"status": "accepted",
|
|
1136
|
+
"diagnostic_count": 0,
|
|
1137
|
+
"value_class": "Array"
|
|
1138
|
+
},
|
|
1139
|
+
"semantic_value_risk": {
|
|
1140
|
+
"level": "high",
|
|
1141
|
+
"category": "invented-literal",
|
|
1142
|
+
"statement": "The repair invents the numeric semantic value zero and may change program meaning."
|
|
1143
|
+
},
|
|
1144
|
+
"external_review": {
|
|
1145
|
+
"status": "pending",
|
|
1146
|
+
"labels": []
|
|
1147
|
+
},
|
|
1148
|
+
"grammar_sha256": "7dee0cf9174a4fc59746a215b50aedc21643a3f213d056f819ca7eafee1f27f5"
|
|
1149
|
+
},
|
|
1150
|
+
{
|
|
1151
|
+
"id": "H003-STATEFUL-01",
|
|
1152
|
+
"dimensions": [
|
|
1153
|
+
"stateful-string-lexer"
|
|
1154
|
+
],
|
|
1155
|
+
"grammar": "test/fixtures/error_ux_round2/stateful_strings.y",
|
|
1156
|
+
"input": "\"hello",
|
|
1157
|
+
"input_sha256": "196d3d58bf5c0427d2b094fb9b2c70b277ac1b4b96de1d191de8f1abe90ce149",
|
|
1158
|
+
"observation": {
|
|
1159
|
+
"mode": "single-rejection",
|
|
1160
|
+
"parse_status": "rejected",
|
|
1161
|
+
"diagnostics": [
|
|
1162
|
+
{
|
|
1163
|
+
"phase": "parser",
|
|
1164
|
+
"message": "(h003-stateful-string):1:7: unexpected $eof; expected STRING_END (nil)",
|
|
1165
|
+
"token": "$eof",
|
|
1166
|
+
"expected_tokens": {
|
|
1167
|
+
"availability": "available",
|
|
1168
|
+
"tokens": [
|
|
1169
|
+
"STRING_END"
|
|
1170
|
+
],
|
|
1171
|
+
"reason": null
|
|
1172
|
+
},
|
|
1173
|
+
"state": 3,
|
|
1174
|
+
"location": {
|
|
1175
|
+
"line": 1,
|
|
1176
|
+
"column": 7,
|
|
1177
|
+
"start_byte": 6,
|
|
1178
|
+
"source_line": "\"hello",
|
|
1179
|
+
"caret": " ^"
|
|
1180
|
+
}
|
|
1181
|
+
}
|
|
1182
|
+
]
|
|
1183
|
+
},
|
|
1184
|
+
"bounded_repair": {
|
|
1185
|
+
"status": "selected",
|
|
1186
|
+
"parse_status": "accepted",
|
|
1187
|
+
"plan": {
|
|
1188
|
+
"cost": 1,
|
|
1189
|
+
"configurations": 9,
|
|
1190
|
+
"edits": [
|
|
1191
|
+
{
|
|
1192
|
+
"kind": "insert",
|
|
1193
|
+
"position": 0,
|
|
1194
|
+
"token_id": 4,
|
|
1195
|
+
"token_name": "STRING_END",
|
|
1196
|
+
"cost": 1,
|
|
1197
|
+
"token_id_scope": "grammar"
|
|
1198
|
+
}
|
|
1199
|
+
]
|
|
1200
|
+
}
|
|
1201
|
+
},
|
|
1202
|
+
"proposed_edit": {
|
|
1203
|
+
"summary": "close the string at end of input",
|
|
1204
|
+
"operations": [
|
|
1205
|
+
{
|
|
1206
|
+
"start_byte": 6,
|
|
1207
|
+
"end_byte": 6,
|
|
1208
|
+
"replacement": "\""
|
|
1209
|
+
}
|
|
1210
|
+
],
|
|
1211
|
+
"applied_source_sha256": "5aa762ae383fbb727af3c7a36d4940a5b8c40a989452d2304fc958ff3f354e7a"
|
|
1212
|
+
},
|
|
1213
|
+
"fresh_reparse": {
|
|
1214
|
+
"status": "accepted",
|
|
1215
|
+
"diagnostic_count": 0,
|
|
1216
|
+
"value_class": "String"
|
|
1217
|
+
},
|
|
1218
|
+
"semantic_value_risk": {
|
|
1219
|
+
"level": "low",
|
|
1220
|
+
"category": "lexer-state-closure",
|
|
1221
|
+
"statement": "The edit closes the active lexer state without inventing string content."
|
|
1222
|
+
},
|
|
1223
|
+
"external_review": {
|
|
1224
|
+
"status": "pending",
|
|
1225
|
+
"labels": []
|
|
1226
|
+
},
|
|
1227
|
+
"grammar_sha256": "65a2f83c108ad5aa10c7d31eeafae9bd8241beac91d6dea40f81256cac5f9438"
|
|
1228
|
+
},
|
|
1229
|
+
{
|
|
1230
|
+
"id": "H003-EOF-01",
|
|
1231
|
+
"dimensions": [
|
|
1232
|
+
"eof-error",
|
|
1233
|
+
"delimiter-heavy"
|
|
1234
|
+
],
|
|
1235
|
+
"grammar": "test/fixtures/error_ux_round2/delimiters.y",
|
|
1236
|
+
"input": "outer(inner(a,b),c",
|
|
1237
|
+
"input_sha256": "402db8f3f0246976daa0ceabd406ef527179a49b51eccca85c6a3387cde76883",
|
|
1238
|
+
"observation": {
|
|
1239
|
+
"mode": "single-rejection",
|
|
1240
|
+
"parse_status": "rejected",
|
|
1241
|
+
"diagnostics": [
|
|
1242
|
+
{
|
|
1243
|
+
"phase": "parser",
|
|
1244
|
+
"message": "(h003-delimiters):1:19: unexpected $eof; expected '(', ')', ',' (nil)",
|
|
1245
|
+
"token": "$eof",
|
|
1246
|
+
"expected_tokens": {
|
|
1247
|
+
"availability": "available",
|
|
1248
|
+
"tokens": [
|
|
1249
|
+
"'('",
|
|
1250
|
+
"')'",
|
|
1251
|
+
"','"
|
|
1252
|
+
],
|
|
1253
|
+
"reason": null
|
|
1254
|
+
},
|
|
1255
|
+
"state": 5,
|
|
1256
|
+
"location": {
|
|
1257
|
+
"line": 1,
|
|
1258
|
+
"column": 19,
|
|
1259
|
+
"start_byte": 18,
|
|
1260
|
+
"source_line": "outer(inner(a,b),c",
|
|
1261
|
+
"caret": " ^"
|
|
1262
|
+
}
|
|
1263
|
+
}
|
|
1264
|
+
]
|
|
1265
|
+
},
|
|
1266
|
+
"bounded_repair": {
|
|
1267
|
+
"status": "selected",
|
|
1268
|
+
"parse_status": "accepted",
|
|
1269
|
+
"plan": {
|
|
1270
|
+
"cost": 1,
|
|
1271
|
+
"configurations": 21,
|
|
1272
|
+
"edits": [
|
|
1273
|
+
{
|
|
1274
|
+
"kind": "insert",
|
|
1275
|
+
"position": 0,
|
|
1276
|
+
"token_id": 8,
|
|
1277
|
+
"token_name": "')'",
|
|
1278
|
+
"cost": 1,
|
|
1279
|
+
"token_id_scope": "grammar"
|
|
1280
|
+
}
|
|
1281
|
+
]
|
|
1282
|
+
}
|
|
1283
|
+
},
|
|
1284
|
+
"proposed_edit": {
|
|
1285
|
+
"summary": "insert two candidate closing parentheses and let a fresh parse expose over-closure",
|
|
1286
|
+
"operations": [
|
|
1287
|
+
{
|
|
1288
|
+
"start_byte": 18,
|
|
1289
|
+
"end_byte": 18,
|
|
1290
|
+
"replacement": "))"
|
|
1291
|
+
}
|
|
1292
|
+
],
|
|
1293
|
+
"applied_source_sha256": "251c7dfb6f215074b56a3a638b1c7986debc833228f676015b43db200205261a"
|
|
1294
|
+
},
|
|
1295
|
+
"fresh_reparse": {
|
|
1296
|
+
"status": "progress",
|
|
1297
|
+
"diagnostic_count": 1,
|
|
1298
|
+
"value_class": null,
|
|
1299
|
+
"diagnostic": {
|
|
1300
|
+
"phase": "parser",
|
|
1301
|
+
"message": "(h003-delimiters):1:20: unexpected ')'; expected $eof (nil)\nouter(inner(a,b),c))\n ^",
|
|
1302
|
+
"token": "')'",
|
|
1303
|
+
"expected_tokens": {
|
|
1304
|
+
"availability": "available",
|
|
1305
|
+
"tokens": [
|
|
1306
|
+
"$eof"
|
|
1307
|
+
],
|
|
1308
|
+
"reason": null
|
|
1309
|
+
},
|
|
1310
|
+
"state": 3,
|
|
1311
|
+
"location": {
|
|
1312
|
+
"line": 1,
|
|
1313
|
+
"column": 20,
|
|
1314
|
+
"start_byte": 19,
|
|
1315
|
+
"source_line": "outer(inner(a,b),c))",
|
|
1316
|
+
"caret": " ^"
|
|
1317
|
+
}
|
|
1318
|
+
}
|
|
1319
|
+
},
|
|
1320
|
+
"semantic_value_risk": {
|
|
1321
|
+
"level": "low",
|
|
1322
|
+
"category": "structural-delimiter",
|
|
1323
|
+
"statement": "The edit adds only nil-valued closing delimiters."
|
|
1324
|
+
},
|
|
1325
|
+
"external_review": {
|
|
1326
|
+
"status": "pending",
|
|
1327
|
+
"labels": []
|
|
1328
|
+
},
|
|
1329
|
+
"grammar_sha256": "dba52fd7b54466caab8c7dc29534e1df1ef2673c7c13816e4c15fe33750b5045"
|
|
1330
|
+
},
|
|
1331
|
+
{
|
|
1332
|
+
"id": "H003-MULTI-01",
|
|
1333
|
+
"dimensions": [
|
|
1334
|
+
"multi-error-continuation",
|
|
1335
|
+
"statement-language"
|
|
1336
|
+
],
|
|
1337
|
+
"grammar": "test/fixtures/error_ux_round2/statements.y",
|
|
1338
|
+
"input": "first = ; good = 1; second = = 2; third = 3;",
|
|
1339
|
+
"input_sha256": "7a6b365f7aa15f0c579d63197b78908d2ba27be901a263b8029c4f23c12478e5",
|
|
1340
|
+
"observation": {
|
|
1341
|
+
"mode": "synchronized-continuation",
|
|
1342
|
+
"parse_status": "accepted-after-recovery",
|
|
1343
|
+
"diagnostics": [
|
|
1344
|
+
{
|
|
1345
|
+
"phase": "parser",
|
|
1346
|
+
"message": "(h003-statements):1:9: unexpected ';'; expected NUMBER (nil)\nfirst = ; good = 1; second = = 2; third = 3;\n ^",
|
|
1347
|
+
"token": "';'",
|
|
1348
|
+
"expected_tokens": {
|
|
1349
|
+
"availability": "available",
|
|
1350
|
+
"tokens": [
|
|
1351
|
+
"NUMBER"
|
|
1352
|
+
],
|
|
1353
|
+
"reason": null
|
|
1354
|
+
},
|
|
1355
|
+
"state": 8,
|
|
1356
|
+
"location": {
|
|
1357
|
+
"line": 1,
|
|
1358
|
+
"column": 9,
|
|
1359
|
+
"start_byte": 8,
|
|
1360
|
+
"source_line": "first = ; good = 1; second = = 2; third = 3;",
|
|
1361
|
+
"caret": " ^"
|
|
1362
|
+
}
|
|
1363
|
+
},
|
|
1364
|
+
{
|
|
1365
|
+
"phase": "parser",
|
|
1366
|
+
"message": "(h003-statements):1:30: unexpected '='; expected NUMBER (nil)\nfirst = ; good = 1; second = = 2; third = 3;\n ^",
|
|
1367
|
+
"token": "'='",
|
|
1368
|
+
"expected_tokens": {
|
|
1369
|
+
"availability": "available",
|
|
1370
|
+
"tokens": [
|
|
1371
|
+
"NUMBER"
|
|
1372
|
+
],
|
|
1373
|
+
"reason": null
|
|
1374
|
+
},
|
|
1375
|
+
"state": 8,
|
|
1376
|
+
"location": {
|
|
1377
|
+
"line": 1,
|
|
1378
|
+
"column": 30,
|
|
1379
|
+
"start_byte": 29,
|
|
1380
|
+
"source_line": "first = ; good = 1; second = = 2; third = 3;",
|
|
1381
|
+
"caret": " ^"
|
|
1382
|
+
}
|
|
1383
|
+
}
|
|
1384
|
+
]
|
|
1385
|
+
},
|
|
1386
|
+
"bounded_repair": {
|
|
1387
|
+
"status": "selected",
|
|
1388
|
+
"parse_status": "accepted",
|
|
1389
|
+
"plan": {
|
|
1390
|
+
"cost": 1,
|
|
1391
|
+
"configurations": 61,
|
|
1392
|
+
"edits": [
|
|
1393
|
+
{
|
|
1394
|
+
"kind": "insert",
|
|
1395
|
+
"position": 0,
|
|
1396
|
+
"token_id": 3,
|
|
1397
|
+
"token_name": "NUMBER",
|
|
1398
|
+
"cost": 1,
|
|
1399
|
+
"token_id_scope": "grammar"
|
|
1400
|
+
}
|
|
1401
|
+
]
|
|
1402
|
+
}
|
|
1403
|
+
},
|
|
1404
|
+
"proposed_edit": {
|
|
1405
|
+
"summary": "supply the first value and remove the second extra equals sign",
|
|
1406
|
+
"operations": [
|
|
1407
|
+
{
|
|
1408
|
+
"start_byte": 8,
|
|
1409
|
+
"end_byte": 8,
|
|
1410
|
+
"replacement": "0"
|
|
1411
|
+
},
|
|
1412
|
+
{
|
|
1413
|
+
"start_byte": 29,
|
|
1414
|
+
"end_byte": 31,
|
|
1415
|
+
"replacement": ""
|
|
1416
|
+
}
|
|
1417
|
+
],
|
|
1418
|
+
"applied_source_sha256": "c94f3324600f050b42f7ea9a1573be95f37d1723a0bbf0aaaf6c3b603ff8946d"
|
|
1419
|
+
},
|
|
1420
|
+
"fresh_reparse": {
|
|
1421
|
+
"status": "accepted",
|
|
1422
|
+
"diagnostic_count": 0,
|
|
1423
|
+
"value_class": "Array"
|
|
1424
|
+
},
|
|
1425
|
+
"semantic_value_risk": {
|
|
1426
|
+
"level": "high",
|
|
1427
|
+
"category": "invented-literal",
|
|
1428
|
+
"statement": "The first edit invents zero while the second deletes syntax; accepting input does not prove intended semantics."
|
|
1429
|
+
},
|
|
1430
|
+
"external_review": {
|
|
1431
|
+
"status": "pending",
|
|
1432
|
+
"labels": []
|
|
1433
|
+
},
|
|
1434
|
+
"grammar_sha256": "7dee0cf9174a4fc59746a215b50aedc21643a3f213d056f819ca7eafee1f27f5"
|
|
1435
|
+
},
|
|
1436
|
+
{
|
|
1437
|
+
"id": "H003-UNKNOWN-01",
|
|
1438
|
+
"dimensions": [
|
|
1439
|
+
"unknown-token"
|
|
1440
|
+
],
|
|
1441
|
+
"grammar": "test/fixtures/error_ux_round2/unknown_token.y",
|
|
1442
|
+
"input": "ok @",
|
|
1443
|
+
"input_sha256": "f90789301474fba9a4cbfc7ba17120391ca3cb1ba10a61f7e2035922246073ce",
|
|
1444
|
+
"observation": {
|
|
1445
|
+
"mode": "single-rejection",
|
|
1446
|
+
"parse_status": "rejected",
|
|
1447
|
+
"diagnostics": [
|
|
1448
|
+
{
|
|
1449
|
+
"phase": "parser",
|
|
1450
|
+
"message": "(h003-unknown-token):1:4: unexpected :H003_UNKNOWN; expected $eof (\"@\")\nok @\n ^",
|
|
1451
|
+
"token": ":H003_UNKNOWN",
|
|
1452
|
+
"expected_tokens": {
|
|
1453
|
+
"availability": "available",
|
|
1454
|
+
"tokens": [
|
|
1455
|
+
"$eof"
|
|
1456
|
+
],
|
|
1457
|
+
"reason": null
|
|
1458
|
+
},
|
|
1459
|
+
"state": 1,
|
|
1460
|
+
"location": {
|
|
1461
|
+
"line": 1,
|
|
1462
|
+
"column": 4,
|
|
1463
|
+
"start_byte": 3,
|
|
1464
|
+
"source_line": "ok @",
|
|
1465
|
+
"caret": " ^"
|
|
1466
|
+
}
|
|
1467
|
+
}
|
|
1468
|
+
]
|
|
1469
|
+
},
|
|
1470
|
+
"bounded_repair": {
|
|
1471
|
+
"status": "selected",
|
|
1472
|
+
"parse_status": "accepted",
|
|
1473
|
+
"plan": {
|
|
1474
|
+
"cost": 1,
|
|
1475
|
+
"configurations": 8,
|
|
1476
|
+
"edits": [
|
|
1477
|
+
{
|
|
1478
|
+
"kind": "delete",
|
|
1479
|
+
"position": 0,
|
|
1480
|
+
"token_id": null,
|
|
1481
|
+
"token_name": ":H003_UNKNOWN",
|
|
1482
|
+
"cost": 1,
|
|
1483
|
+
"token_id_scope": "temporary-external"
|
|
1484
|
+
}
|
|
1485
|
+
]
|
|
1486
|
+
}
|
|
1487
|
+
},
|
|
1488
|
+
"proposed_edit": {
|
|
1489
|
+
"summary": "delete the unknown external token",
|
|
1490
|
+
"operations": [
|
|
1491
|
+
{
|
|
1492
|
+
"start_byte": 3,
|
|
1493
|
+
"end_byte": 4,
|
|
1494
|
+
"replacement": ""
|
|
1495
|
+
}
|
|
1496
|
+
],
|
|
1497
|
+
"applied_source_sha256": "bf2a63ad5d209b2be8586a0f249aac31e432115a64d4fb93433d702564be2469"
|
|
1498
|
+
},
|
|
1499
|
+
"fresh_reparse": {
|
|
1500
|
+
"status": "accepted",
|
|
1501
|
+
"diagnostic_count": 0,
|
|
1502
|
+
"value_class": "String"
|
|
1503
|
+
},
|
|
1504
|
+
"semantic_value_risk": {
|
|
1505
|
+
"level": "medium",
|
|
1506
|
+
"category": "deleted-input",
|
|
1507
|
+
"statement": "Deleting an unknown token can discard user intent even when the remaining parse succeeds."
|
|
1508
|
+
},
|
|
1509
|
+
"external_review": {
|
|
1510
|
+
"status": "pending",
|
|
1511
|
+
"labels": []
|
|
1512
|
+
},
|
|
1513
|
+
"grammar_sha256": "aca5bdcba455fab8c924737bb901ea5dd1a247c1325000a3c8979bd29aed83cc"
|
|
1514
|
+
},
|
|
1515
|
+
{
|
|
1516
|
+
"id": "H003-LEXER-01",
|
|
1517
|
+
"dimensions": [
|
|
1518
|
+
"lexer-failure"
|
|
1519
|
+
],
|
|
1520
|
+
"grammar": "test/fixtures/error_ux_round2/delimiters.y",
|
|
1521
|
+
"input": "outer($)",
|
|
1522
|
+
"input_sha256": "314a7b267053917af6ec13c39c8624c674384991fc20c09a2331528026f4ce4e",
|
|
1523
|
+
"observation": {
|
|
1524
|
+
"mode": "single-rejection",
|
|
1525
|
+
"parse_status": "lexer-failure",
|
|
1526
|
+
"diagnostics": [
|
|
1527
|
+
{
|
|
1528
|
+
"phase": "lexer",
|
|
1529
|
+
"message": "(h003-delimiters):1:7: no lexer rule matches \"$)\" in state INITIAL",
|
|
1530
|
+
"token": "lexer input",
|
|
1531
|
+
"expected_tokens": {
|
|
1532
|
+
"availability": "not-available",
|
|
1533
|
+
"tokens": [],
|
|
1534
|
+
"reason": "lexer-failure-precedes-parser-state"
|
|
1535
|
+
},
|
|
1536
|
+
"state": null,
|
|
1537
|
+
"location": {
|
|
1538
|
+
"line": 1,
|
|
1539
|
+
"column": 7,
|
|
1540
|
+
"start_byte": 6,
|
|
1541
|
+
"source_line": "outer($)",
|
|
1542
|
+
"caret": " ^"
|
|
1543
|
+
}
|
|
1544
|
+
}
|
|
1545
|
+
]
|
|
1546
|
+
},
|
|
1547
|
+
"bounded_repair": {
|
|
1548
|
+
"status": "not-applicable",
|
|
1549
|
+
"parse_status": "lexer-failure",
|
|
1550
|
+
"plan": null,
|
|
1551
|
+
"reason": "lexer-failure-precedes-parser-repair"
|
|
1552
|
+
},
|
|
1553
|
+
"proposed_edit": {
|
|
1554
|
+
"summary": "replace unmatched lexer input with a valid name",
|
|
1555
|
+
"operations": [
|
|
1556
|
+
{
|
|
1557
|
+
"start_byte": 6,
|
|
1558
|
+
"end_byte": 7,
|
|
1559
|
+
"replacement": "item"
|
|
1560
|
+
}
|
|
1561
|
+
],
|
|
1562
|
+
"applied_source_sha256": "17675879754586465963dc4ee6dde8631d1ead4252f6d6ca2c0a4d4c60291a74"
|
|
1563
|
+
},
|
|
1564
|
+
"fresh_reparse": {
|
|
1565
|
+
"status": "accepted",
|
|
1566
|
+
"diagnostic_count": 0,
|
|
1567
|
+
"value_class": "Array"
|
|
1568
|
+
},
|
|
1569
|
+
"semantic_value_risk": {
|
|
1570
|
+
"level": "high",
|
|
1571
|
+
"category": "invented-lexeme",
|
|
1572
|
+
"statement": "The edit invents a semantic name and only demonstrates a syntactically accepted alternative."
|
|
1573
|
+
},
|
|
1574
|
+
"external_review": {
|
|
1575
|
+
"status": "pending",
|
|
1576
|
+
"labels": []
|
|
1577
|
+
},
|
|
1578
|
+
"grammar_sha256": "dba52fd7b54466caab8c7dc29534e1df1ef2673c7c13816e4c15fe33750b5045"
|
|
1579
|
+
}
|
|
1580
|
+
]
|
|
1581
|
+
}
|