Skip to main content

Crate perl_lsp_feature_governance

Crate perl_lsp_feature_governance 

Source
Expand description

Feature governance façade for Perl LSP.

This crate consolidates profile policy and BDD-grid reporting APIs into a single stability boundary so runtime startup and external tooling share one canonical implementation.

Modules§

catalog
Auto-generated feature catalog from features.toml.

Structs§

BddFeatureRow
Human-readable BDD-oriented feature row for automation and reporting.
Feature
Represents a single LSP feature with its metadata and implementation status
FeatureProfileSpec
Canonical metadata for profile aliases and normalization behavior.
UnsupportedFeatureProfileError
Structured parse error for invalid profile tokens.

Enums§

FeatureProfile
Known feature profiles for runtime capability selection.
FeatureProfileKind
Canonical profile definitions and alias map.

Constants§

FEATURE_GRID_COLUMNS
Stable BDD grid column order used by reporting tools.
LSP_VERSION
LSP protocol version supported by this parser implementation
VERSION
Current parser version extracted from features.toml metadata

Functions§

advertised_features
Returns advertised feature IDs (GA/production and advertised = true).
advertised_trackable_feature_count_for_grid
Number of advertised BDD rows that participate in coverage accounting.
all_features
All discovered LSP features in canonical declaration order.
bdd_feature_rows
Export feature rows suitable for BDD matrices and acceptance criteria tooling.
caps_from_feature_ids
Build LSP ServerCapabilities from feature IDs.
catalog_advertised_feature_ids
Return advertised feature IDs from the current profile, intersecting with the catalog so this API remains aligned to the BDD grid.
compliance_percent
Returns the current LSP compliance percentage as a float.
compliance_percent_for_grid
Compliance percentage for the BDD grid (advertised / trackable, rounded).
compliance_percent_for_profile
Compliance percent for a specific runtime profile, using the same grid semantics.
feature_ids_from_caps
Extract feature IDs from LSP ServerCapabilities.
feature_ids_from_flags
Convert BuildFlags into canonical LSP feature identifiers.
feature_profile_contracts
Return profile metadata for interoperability with CLI and editor tooling.
feature_profile_label
Canonical profile label for logs and diagnostics.
feature_profile_metadata
Return the canonical profile metadata contract rows used by BDD reporting.
feature_profile_specs
Return canonical feature profile descriptors for tooling.
feature_profile_supported_tokens
Supported CLI tokens accepted by the profile parser.
flags_for_profile
Resolve BuildFlags for the profile.
flags_for_runtime
Resolve BuildFlags for runtime startup where formatting is conditional on external tooling availability.
has_feature
Checks whether a feature is currently advertised.
parse_feature_profile_arg
Parse a --feature-profile argument into a runtime policy.
parse_feature_profile_arg_or_current
Parse a profile argument and fall back to FeatureProfile::current().
parse_profile_name
Parse a raw profile token into canonical form.
parse_profile_token
Parse and normalize user input with trimming and legacy delimiter compatibility.
supported_cli_profiles
Return every supported CLI token for profile parsing/validation.
to_json
Get the global feature catalog as JSON.
to_json_for_all_profiles
BDD-compatible feature catalog JSON with all canonical profiles.
to_json_for_profile
Profile-aware feature catalog JSON.
to_json_for_profiles
BDD-compatible feature catalog JSON for an explicit profile set.
trackable_feature_count_for_grid
Number of BDD rows that participate in coverage accounting.