Repository navigation
vscode-f5-flipper-1.18.0.vsix
Added
-
Feature Detection System (Phases 1-4 Complete): Comprehensive intelligent analysis of NetScaler configurations
- FeatureDetector: Automatically detects 50+ NetScaler features across 10 categories
- Load Balancing & Traffic Management
- Security & SSL (Enhanced: cert chains, custom ciphers, mTLS, SSL policies)
- Application Firewall & Protection (Enhanced: SQL injection/XSS/CSRF detection, rate limiting, GeoIP)
- Session Management & Persistence
- Policy Framework
- Performance Optimization (Enhanced: custom TCP/HTTP profiles)
- Global Server Load Balancing (GSLB)
- Authentication & Authorization (Enhanced: nFactor, VPN, LDAP, RADIUS, SAML, OAuth/OIDC)
- Monitoring & Health Checks (Enhanced: script monitors, SNMP, audit logging)
- Network Configuration & HA (Enhanced: HA pairs, clusters, link LB, SNIPs)
- ComplexityScorer: Calculates migration complexity score (1-10) with justification
- Estimates migration effort (days/weeks)
- Assigns risk levels (Low/Medium/High)
- Provides detailed justification for scores
- CapabilityMapper: Recommends F5 platform based on detected features
- Scores compatibility for TMOS, NGINX+, and XC
- Identifies conversion gaps and requirements
- Provides confidence levels and rationale
- Phase 2 Enhancements (Enhanced Detection):
- SSL/TLS: Certificate chain detection, custom cipher analysis, legacy protocol warnings
- Security: AppFW profile inspection, rate limiting patterns, GeoIP blocking detection
- Authentication: nFactor (multi-schema), VPN Gateway, LDAP/RADIUS/SAML/OAuth
- Monitoring: Script-based monitors (USER protocol), custom health checks, SNMP
- HA: Cluster configuration, HA pairs, link load balancing
- 23 new comprehensive unit tests covering all Phase 2 features
- Phase 3 & 4: Scoring and Mapping Engine:
- Interaction multipliers for feature diversity (1.0x to 1.3x based on categories)
- Feature-specific platform bonuses (VPN Gateway, GSLB, AppFW)
- Gap detection with severity levels (Info/Warning/Critical)
- Phase 5: Per-App Feature Detection (replaces global report with actionable app-level insights):
- Simple features array:
app.featurescontains feature names for quick reference/filtering - Per-app complexity analysis: Each app shows individual migration complexity (1-10 scale)
- Color-coded badges: Visual indicators on each app (🔴 High / 🟠 Medium / 🟡 Low / 🟢 Simple)
- Rich hover tooltips: Comprehensive app details with diagnostics and migration insights
- App header with type, protocol, and address
- 🔍 Diagnostics summary (errors, warnings, info)
- 🎯 Migration Analysis (complexity, platform, confidence)
- Feature breakdown by category (top 3 categories shown)
- F5 platform mapping indicators (✅ Full /
⚠️ Partial support) - Conversion gaps with severity indicators
- Removed verbose YAML dump for cleaner, actionable information
- App descriptions: Include
[complexity/10 → Platform]format for quick scanning - Intelligent icon priority: Diagnostic errors/warnings override complexity colors
- Hybrid architecture: Global feature detection + per-app mapping for efficiency
- Unified workflow: Feature analysis runs automatically during config load alongside diagnostics
- Lightweight implementation: Maps global features to apps using type, protocol, bindings analysis
- Simple features array:
- Architecture: Hybrid approach - global feature detection once + per-app lightweight mapping
- Integration: Runs automatically during config load alongside diagnostics
- Benefits (per-app insights vs global report):
- Actionable per-app insights: Identify which specific apps are complex, not just overall config
- Migration prioritization: Sort apps by complexity to plan migration order
- Data-driven platform recommendations per-app: Each app gets tailored platform suggestion
- Automated effort estimation: Know complexity before starting each app migration
- Early gap identification: See conversion challenges at app level
- Deep security analysis: Certificate chains, mTLS, AppFW, rate limiting, GeoIP per-app
- Unified diagnostics + complexity view: Single pane of glass for all app insights
- Files: src/featureDetector.ts (1,600+ lines), src/complexityScorer.ts, src/capabilityMapper.ts, src/CitrixADC.ts, src/nsCfgViewProvider.ts, src/models.ts
- Tests: 349 tests passing (326 base + 23 per-app feature tests), 90%+ code coverage
- Design Documents:
- FEATURE_DETECTION_DESIGN.md - Complete architecture
- FEATURE_DETECTION_IMPLEMENTATION_SUMMARY.md - Implementation summary
- FEATURE_DETECTION_PHASE5_PER_APP_INTEGRATION.md - Per-app integration plan
- FeatureDetector: Automatically detects 50+ NetScaler features across 10 categories
-
Enhanced Type Definitions for AdcConfObjRx: Comprehensive TypeScript interface improvements for better IDE experience
- Created 10 specific object type interfaces:
LbVserver,CsVserver,GslbVserver,NsServiceGroup,NsService,NsServer,LbMonitor,SslCertKey,CsPolicy,CsAction - Added 100+ documented properties with JSDoc comments and usage examples
- Enhanced type safety with string literal unions for common options (persistence types, LB methods, SSL/TLS settings, etc.)
- Updated
AdcConfObjRxto use specific types instead of genericNsObjectfor all major object categories - Improved IDE autocomplete with property suggestions and hover documentation
- Added NetScaler documentation links in JSDoc for quick reference
- Benefits:
- Better developer experience with autocomplete for NetScaler-specific properties
- Compile-time type checking prevents typos in property names
- Self-documenting code with comprehensive JSDoc examples
- Foundation for future feature detection and validation work
- Files: src/models.ts, src/digLbVserverRx.ts, src/digCsVserverRx.ts
- Design Document: ADC_CONFOBJRX_TYPE_EXTENSIONS.md
- Created 10 specific object type interfaces:
Changed
Fixed
Removed
-
Type Guards: Removed
src/typeGuards.tsandtests/027_typeGuards.unit.tests.ts- Type guards were not needed for Flipper's deterministic parsing pipeline
- TypeScript interfaces provide compile-time type safety
- No external/untrusted data sources requiring runtime validation
- Parsed JSON structure controlled by regex patterns in
src/regex.ts
-
Legacy Performance Tests: Removed
tests/306_final.performance.tests.ts- Performance comparison against old parser (CitrixADCold) no longer needed
- Old parser has been deprecated and is being phased out
- Snapshot-based integration tests provide better regression detection
- Component-level performance tests in
tests/305_performance.comparison.tests.tsremain for focused benchmarking