{"passport":{"unfragile":{"@version":"1.0","version":"2026-05","artifact":{"id":"vscode-aestheticintegration-idfpy-vscode","slug":"pyidf","name":"PyIDF","type":"extension","url":"https://marketplace.visualstudio.com/items?itemName=aestheticintegration.idfpy-vscode","page_url":"https://unfragile.ai/pyidf","categories":["code-editors"],"tags":["artificial intelligence","formal verification","machine learning","python","reinforcement learning"],"pricing":{"model":"freemium","free":true,"starting_price":null},"status":"active","verified":false},"capabilities":[{"id":"vscode-aestheticintegration-idfpy-vscode__cap_0","uri":"capability://code.generation.editing.pyidf.syntax.highlighting.and.language.server.integration","name":"pyidf syntax highlighting and language server integration","description":"Provides real-time syntax highlighting and language intelligence for PyIDF Python files within VS Code through a custom language definition and language server protocol (LSP) integration. The extension registers PyIDF as a distinct language mode, enabling semantic tokenization of PyIDF-specific constructs (formal specifications, constraint declarations, verification directives) alongside standard Python syntax, with server-side analysis for type checking and validation.","intents":["I want to write PyIDF specifications with proper syntax highlighting to catch errors early","I need IDE support that understands PyIDF semantics, not just generic Python","I want to see real-time validation of my formal verification code as I type"],"best_for":["formal verification engineers using Imandra's PyIDF framework","ML/RL researchers embedding formal specifications in Python workflows","teams building safety-critical systems with formal methods"],"limitations":["Syntax highlighting limited to PyIDF grammar version matching the extension build — updates require extension version bump","LSP server latency depends on local machine resources; no async caching of analysis results","No cross-file semantic analysis — each file validated in isolation without project-wide context"],"requires":["VS Code 1.50+","PyIDF language server binary (bundled or separately installed)","Python 3.7+ runtime for language server execution"],"input_types":["PyIDF Python source files (.py with PyIDF directives)"],"output_types":["syntax highlighting tokens","diagnostic messages (errors, warnings)","semantic token classifications"],"categories":["code-generation-editing","developer-tools"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"vscode-aestheticintegration-idfpy-vscode__cap_1","uri":"capability://code.generation.editing.pyidf.code.completion.with.formal.specification.templates","name":"pyidf code completion with formal specification templates","description":"Delivers context-aware code completion for PyIDF constructs by maintaining a registry of formal specification keywords, proof tactics, and constraint declaration patterns. The completion engine analyzes the current cursor position within a PyIDF file, detects incomplete formal directives (e.g., @verify, @invariant, @lemma), and suggests completions with snippet templates that include placeholder parameters for formal properties, enabling developers to scaffold specifications without memorizing PyIDF syntax.","intents":["I want autocomplete suggestions for PyIDF verification directives and formal specification keywords","I need code snippets that scaffold common formal verification patterns (invariants, lemmas, proof strategies)","I want to discover available PyIDF constructs without consulting documentation"],"best_for":["developers new to PyIDF learning formal specification patterns","experienced formal methods engineers accelerating specification writing","teams standardizing on PyIDF verification patterns across a codebase"],"limitations":["Completion suggestions are static keyword-based, not semantic — no analysis of surrounding code to recommend relevant invariants","Snippet templates are generic; no customization per project or team conventions without extension configuration","No completion for user-defined formal properties or project-specific lemma libraries"],"requires":["VS Code 1.50+","PyIDF language server with completion provider capability","PyIDF documentation or schema file defining available directives"],"input_types":["partial PyIDF code at cursor position","surrounding code context (function signature, class definition)"],"output_types":["completion item list with labels, descriptions, and snippet templates"],"categories":["code-generation-editing","developer-tools"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"vscode-aestheticintegration-idfpy-vscode__cap_2","uri":"capability://code.generation.editing.pyidf.error.diagnostics.and.formal.specification.validation","name":"pyidf error diagnostics and formal specification validation","description":"Runs real-time validation on PyIDF files by invoking the language server's diagnostic provider, which parses PyIDF syntax, type-checks formal specifications against the PyIDF type system, and validates constraint declarations for logical consistency. Diagnostics are reported as VS Code inline errors, warnings, and hints, with detailed messages explaining formal specification violations (e.g., 'invariant references undefined variable', 'proof tactic not applicable to goal type'), enabling developers to fix specification errors before runtime verification.","intents":["I want to catch formal specification errors in my editor before running verification","I need clear error messages explaining why my invariant or lemma declaration is invalid","I want to validate that my formal properties are syntactically and semantically correct"],"best_for":["formal verification engineers building safety-critical specifications","teams integrating formal methods into CI/CD pipelines","developers debugging complex formal properties and proof strategies"],"limitations":["Diagnostics are syntactic and type-based only — no deep semantic analysis of proof correctness or logical validity","Validation latency increases with file size; no incremental parsing or caching of previous analysis results","Error messages are generic; no context-aware suggestions for fixing formal specification errors","No integration with Imandra's backend solver — diagnostics cannot verify that a lemma is actually provable"],"requires":["VS Code 1.50+","PyIDF language server with diagnostic provider","Python 3.7+ runtime for language server"],"input_types":["PyIDF Python source files"],"output_types":["diagnostic messages (errors, warnings, hints) with line/column positions and descriptions"],"categories":["code-generation-editing","safety-moderation"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"vscode-aestheticintegration-idfpy-vscode__cap_3","uri":"capability://code.generation.editing.pyidf.documentation.hover.and.definition.navigation","name":"pyidf documentation hover and definition navigation","description":"Implements VS Code's hover provider and definition navigation (go-to-definition, peek definition) for PyIDF constructs by maintaining a symbol table of PyIDF keywords, directives, and user-defined formal properties. When a developer hovers over a PyIDF directive (e.g., @invariant, @lemma) or references a formal property, the extension retrieves documentation from the bundled PyIDF schema or Imandra documentation, displaying inline tooltips with syntax, parameters, and usage examples. Definition navigation allows jumping to the declaration of user-defined lemmas, invariants, or proof strategies within the codebase.","intents":["I want to see documentation for PyIDF directives without leaving the editor","I need to jump to the definition of a lemma or invariant referenced in my code","I want quick reference information about formal specification syntax and parameters"],"best_for":["developers learning PyIDF syntax and semantics","teams navigating large formal specification codebases","engineers integrating formal methods into existing Python projects"],"limitations":["Hover documentation is static and bundled with the extension — no dynamic lookup from Imandra's online documentation","Definition navigation is file-local only; no cross-file symbol resolution for formal properties defined in imported modules","No parameter hints or signature help for formal directives — only static documentation display"],"requires":["VS Code 1.50+","PyIDF language server with hover and definition providers","PyIDF documentation schema (bundled with extension)"],"input_types":["cursor position over PyIDF directive or symbol"],"output_types":["hover tooltip with markdown-formatted documentation","definition location (file path, line number)"],"categories":["code-generation-editing","memory-knowledge"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"vscode-aestheticintegration-idfpy-vscode__cap_4","uri":"capability://code.generation.editing.pyidf.file.template.and.project.scaffolding","name":"pyidf file template and project scaffolding","description":"Provides VS Code command palette actions and file templates to scaffold new PyIDF projects and files with boilerplate formal specification structure. When invoked, the extension generates a PyIDF file template with imports, formal property declarations (invariants, lemmas), and proof strategy stubs, optionally parameterized by user input (e.g., class name, property type). This reduces setup friction for developers starting formal verification workflows and ensures consistency with PyIDF conventions.","intents":["I want to create a new PyIDF file with standard boilerplate structure","I need to scaffold a formal specification for a new class or function","I want to ensure my PyIDF files follow team conventions and best practices"],"best_for":["teams standardizing PyIDF project structure","developers new to formal verification learning PyIDF patterns","organizations scaling formal methods adoption across multiple projects"],"limitations":["Templates are static and bundled with the extension — no dynamic generation based on codebase analysis","No parameterization beyond basic user input (class name, property type) — templates cannot infer formal properties from existing code","Scaffolding is file-level only; no project-wide template generation or multi-file coordination"],"requires":["VS Code 1.50+","PyIDF extension with template provider"],"input_types":["user input (class name, property type, optional parameters)"],"output_types":["PyIDF file template with boilerplate structure"],"categories":["code-generation-editing","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"vscode-aestheticintegration-idfpy-vscode__cap_5","uri":"capability://code.generation.editing.pyidf.formatting.and.code.style.enforcement","name":"pyidf formatting and code style enforcement","description":"Integrates a PyIDF-aware code formatter that enforces consistent style for formal specifications, including indentation, spacing around formal directives (@invariant, @lemma), and alignment of constraint declarations. The formatter is invoked via VS Code's format-on-save or manual format command, parsing the PyIDF file and applying style rules defined in the extension or a project-level PyIDF configuration file. This ensures that formal specifications maintain readability and consistency across team codebases.","intents":["I want to automatically format my PyIDF files to match team style conventions","I need consistent spacing and indentation for formal specifications","I want to enforce style rules for formal directives across my project"],"best_for":["teams with formal verification codebases requiring consistent style","organizations scaling PyIDF adoption and enforcing code quality standards","developers integrating formal methods into existing Python projects with style guidelines"],"limitations":["Formatter is basic and does not perform semantic-aware reformatting — cannot reorganize formal properties for logical clarity","No configuration beyond indentation and spacing — cannot enforce custom style rules per team convention","Formatting latency increases with file size; no incremental formatting or caching"],"requires":["VS Code 1.50+","PyIDF language server with formatting provider","Optional: project-level PyIDF configuration file (.pyidfrc or similar)"],"input_types":["PyIDF Python source files"],"output_types":["formatted PyIDF source code"],"categories":["code-generation-editing","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0}],"trust":{"score":36,"verified":false,"data_access_risk":"moderate","permissions":["VS Code 1.50+","PyIDF language server binary (bundled or separately installed)","Python 3.7+ runtime for language server execution","PyIDF language server with completion provider capability","PyIDF documentation or schema file defining available directives","PyIDF language server with diagnostic provider","Python 3.7+ runtime for language server","PyIDF language server with hover and definition providers","PyIDF documentation schema (bundled with extension)","PyIDF extension with template provider"],"failure_modes":["Syntax highlighting limited to PyIDF grammar version matching the extension build — updates require extension version bump","LSP server latency depends on local machine resources; no async caching of analysis results","No cross-file semantic analysis — each file validated in isolation without project-wide context","Completion suggestions are static keyword-based, not semantic — no analysis of surrounding code to recommend relevant invariants","Snippet templates are generic; no customization per project or team conventions without extension configuration","No completion for user-defined formal properties or project-specific lemma libraries","Diagnostics are syntactic and type-based only — no deep semantic analysis of proof correctness or logical validity","Validation latency increases with file size; no incremental parsing or caching of previous analysis results","Error messages are generic; no context-aware suggestions for fixing formal specification errors","No integration with Imandra's backend solver — diagnostics cannot verify that a lemma is actually provable","builder identity is not verified yet","no observed match outcomes yet"],"rank_breakdown":{"adoption":0.31,"quality":0.37,"ecosystem":0.3,"match_graph":0.25,"freshness":0.75,"weights":{"adoption":0.25,"quality":0.25,"ecosystem":0.15,"match_graph":0.23,"freshness":0.12}},"observed_outcomes":{"matches":0,"success_rate":0,"avg_confidence":0,"top_intents":[],"last_matched_at":null},"maintenance":{"status":"active","updated_at":"2026-05-24T12:16:34.118Z","last_scraped_at":"2026-05-03T15:20:31.090Z","last_commit":null},"community":{"stars":null,"forks":null,"weekly_downloads":null,"model_downloads":null,"model_likes":null}},"distribution":{"claim_url":"https://unfragile.ai/submit?claim=pyidf","compare_url":"https://unfragile.ai/compare?artifact=pyidf"}},"signature":"xFzlfE30csn4pILSHrJIK63M8Vfn7GNUNjKyLLKE0rVVBG0zQt88FqEKvcZGyrnp55GMRlg2PKhiTv4KhAlfCg==","signedAt":"2026-07-08T03:06:18.857Z","signedBy":"unfragile.ai","version":1},"_links":{"self":"https://unfragile.ai/api/v1/passport/pyidf","artifact":"https://unfragile.ai/pyidf","verify":"https://unfragile.ai/api/v1/verify?slug=pyidf","publicKey":"https://unfragile.ai/api/v1/trust-passport-public-key","spec":"https://unfragile.ai/trust","schema":"https://unfragile.ai/schema.json","docs":"https://unfragile.ai/docs"}}