-
Notifications
You must be signed in to change notification settings - Fork 3
refactor: Move agent env config and fix lints #557
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
- Move env.template to assets/agents/env.template - Update dotenv loading paths in main.dart and main_demo.dart - Fix type definition in IdleChecker - Fix lints in tests
PR Compliance Guide 🔍Below is a summary of compliance checks for this PR:
Compliance status legend🟢 - Fully Compliant🟡 - Partial Compliant 🔴 - Not Compliant ⚪ - Requires Further Human Verification 🏷️ - Compliance label |
|||||||||||||||||||||||
PR Code Suggestions ✨Explore these optional code suggestions:
|
||||||||||||||
- Update Notifier mock signatures in test/mocks/ to correctly extend AsyncNotifier/Notifier and mixin Mock - Fix node_detail_view_test.dart by stubbing missing node light status - Update CI workflow env setup
User description
Moves env template to assets/agents and fixes analysis warnings.
PR Type
Tests, Enhancement
Description
Updated Mockito mock files from version 5.4.4/5.4.5 to 5.4.6 across multiple notifier mocks (
auth_notifier,internet_settings_notifier,device_manager_notifier,dashboard_manager_notifier,node_detail_notifier,dashboard_home_notifier,polling_notifier)Fixed analysis warnings by adding
constdeclarations to list and dictionary literals throughout test files for proper const optimizationAdded missing braces to if/if-else statements in production code (
internet_settings_form_validator.dart,pppoe_form.dart,transaction_http_command.dart) for code style complianceRemoved unused imports and variables from test files to reduce analysis warnings
Renamed private helper functions and variables by removing underscore prefixes in test files (
input_validators_test.dart,pnp_isp_service_test.dart)Added
invalid_use_of_internal_memberandmust_be_immutableignore directives to mock filesChanged mock class inheritance patterns to extend
_i1.Mockinstead of specific notifier typesAdded comprehensive architecture analysis documentation identifying coupling violations and remediation strategies
Diagram Walkthrough
File Walkthrough
7 files
auth_notifier_mocks.dart
Update Mockito mocks to version 5.4.6 with new auth methodstest/mocks/auth_notifier_mocks.dart
guardians_remote_assistance.dartMockAuthNotifierto extend_i1.Mockinstead of_i2.AsyncNotifiercloudLoginAuth,testSessionAuthentication, andfuturegetterbreaks
invalid_use_of_internal_memberignore directiveinternet_settings_notifier_mocks.dart
Update internet settings notifier mocks to 5.4.6test/mocks/internet_settings_notifier_mocks.dart
dummies.dartandbetter_action.dartMockInternetSettingsNotifierto extend_i1.Mockinstead of_i2.NotifierInternetSettingstoInternetSettingsUIModelgetSaveIpv4Transactions,getSaveIpv6Transactions, andgetMacAddressCloneTransactioninvalid_use_of_internal_memberignore directivedevice_manager_notifier_mocks.dart
Update device manager notifier mocks to 5.4.6test/mocks/device_manager_notifier_mocks.dart
MockDeviceManagerNotifierto extend_i1.Mockinstead of_i2.NotifiercreateStatemethod and addedinitmethodlistenSelfmethod implementationmust_be_immutableandinvalid_use_of_internal_memberignoredirectives
dashboard_manager_notifier_mocks.dart
Update dashboard manager notifier mocks to 5.4.6test/mocks/dashboard_manager_notifier_mocks.dart
MockDashboardManagerNotifierto extend_i1.Mockinstead of_i2.NotifiercreateStatemethod and reordered methodslistenSelfmethod implementationmust_be_immutableandinvalid_use_of_internal_memberignoredirectives
node_detail_notifier_mocks.dart
Update node detail notifier mocks to 5.4.6test/mocks/node_detail_notifier_mocks.dart
MockNodeDetailNotifierto extend_i1.Mockinstead of_i2.Notifier_FakeJNAPResult_2class and related methodsstartBlinkNodeLEDand
stopBlinkNodeLEDlistenSelfmethod implementationmust_be_immutableandinvalid_use_of_internal_memberignoredirectives
dashboard_home_notifier_mocks.dart
Update dashboard home notifier mocks to 5.4.6test/mocks/dashboard_home_notifier_mocks.dart
states, health check state
MockDashboardHomeNotifierto extend_i1.Mockinstead of_i2.Notifierinvalid_use_of_internal_memberignore directivepolling_notifier_mocks.dart
Update polling notifier mocks to 5.4.6test/mocks/polling_notifier_mocks.dart
dummies.dartMockPollingNotifierto extend_i1.Mockinstead of_i2.AsyncNotifierinvalid_use_of_internal_memberignore directive28 files
ipv6_port_service_list_service_test.dart
Fix const list formatting in IPv6 firewall teststest/page/advanced_settings/firewall/services/ipv6_port_service_list_service_test.dart
[const ...]toconst [...]for proper constoptimization
constkeywords from individualPortRangeitemswithin const lists
input_validators_test.dart
Remove private underscore prefixes from test helper functionstest/validator_rules/input_validators_test.dart
avoid_printignore directive at file header_testResults,_trackTestResult,_printTestSummary,_runInvalidTestCasesto public versions withoutunderscore prefix
the test file
jnap_tr181_mapper.dart
Add const declarations and fix if-else braceslib/core/usp/jnap_tr181_mapper.dart
mockParentIpfrom variable toconstdeclarationinternet_settings_service_test.dart
Fix const list formatting in internet settings teststest/page/advanced_settings/internet_settings/services/internet_settings_service_test.dart
[MapEntry(...)]toconst [MapEntry(...)]for const optimization
constkeywords from individualJNAPSuccessitemswithin const lists
firmware_update_service_test.dart
Add const declarations to test data dictionariestest/core/jnap/services/firmware_update_service_test.dart
{...}toconst {...}for constoptimization
internet_settings_form_validator.dart
Add braces to if statements in form validatorlib/page/advanced_settings/internet_settings/utils/internet_settings_form_validator.dart
ipv6_port_service_list_provider_test.dart
Remove unused variables and fix const formattingtest/page/advanced_settings/firewall/providers/ipv6_port_service_list_provider_test.dart
statevariable assignments in two test casesconstkeyword for const optimizationportRangesfromconst [...]to[...]within non-constparent lists
manual_firmware_update_provider_test.dart
Add const declarations to test file namestest/page/instant_admin/providers/manual_firmware_update_provider_test.dart
fileNamevariable declarations fromfinaltoconstfor constoptimization
pnp_isp_service_test.dart
Remove private underscore prefix from helper functiontest/page/instant_setup/troubleshooter/services/pnp_isp_service_test.dart
_baseWanStatusOutputto publicbaseWanStatusOutputchannel_finder_service_test.dart
Remove unused imports and add const declarationstest/page/wifi_settings/services/channel_finder_service_test.dart
flutter_riverpodandchannelfinder_info{...}toconst {...}for constoptimization
firewall_state_test.dart
Remove redundant const from EmptyStatus instancestest/page/advanced_settings/firewall/providers/firewall_state_test.dart
EmptyStatus()fromconst EmptyStatus()toEmptyStatus()forconsistency
dmz_settings_state_test.dart
Remove redundant const from DMZStatus instancestest/page/advanced_settings/dmz/providers/dmz_settings_state_test.dart
DMZStatus()fromconst DMZStatus()toDMZStatus()forconsistency
static_routing_state_test.dart
Remove unused import and add const declarationstest/page/advanced_settings/static_routing/providers/static_routing_state_test.dart
dart:convert[]toconst []for const optimizationdmz_settings_service_test.dart
Remove unused import and add const declarationstest/page/advanced_settings/dmz/services/dmz_settings_service_test.dart
dmz_settings.dart{}toconst {}for const optimizationinternet_settings_ui_model_test.dart
Fix const declaration syntax in model teststest/page/advanced_settings/internet_settings/models/internet_settings_ui_model_test.dart
final consttoconstfor properconst syntax
instant_safety_service_test.dart
Add const declarations to test data dictionariestest/page/instant_safety/services/instant_safety_service_test.dart
{}toconst {}for const optimizationport_range_forwarding_test_data.dart
Add const declarations to test datatest/mocks/test_data/port_range_forwarding_test_data.dart
[]toconst []for const optimization{...}toconst{...}port_range_triggering_service_test.dart
Fix const list formatting in port triggering teststest/page/advanced_settings/apps_and_gaming/ports/services/port_range_triggering_service_test.dart
[const ...]toconst [...]for proper constoptimization
constkeywords from individual items within constlists
port_range_forwarding_service_test.dart
Fix const list formatting in port forwarding teststest/page/advanced_settings/apps_and_gaming/ports/services/port_range_forwarding_service_test.dart
[const ...]toconst [...]for proper constoptimization
constkeywords from individual items within constlists
pppoe_form.dart
Add braces to if statements in focus listenerslib/page/advanced_settings/internet_settings/widgets/wan_forms/pppoe_form.dart
polling_test_data.dart
Add const declarations to polling test datatest/mocks/test_data/polling_test_data.dart
{...}toconst {...}for constoptimization
instant_verify_ui_models_test.dart
Add const declarations to test data liststest/page/instant_verify/models/instant_verify_ui_models_test.dart
[...]toconst [...]for const optimizationtimezone_service_test.dart
Fix const declaration syntax in timezone teststest/page/instant_admin/services/timezone_service_test.dart
final consttoconstfor properconst syntax
generate_screenshot_test_cases_report.dart
Add ignore directive and fix if statement bracestools/generate_screenshot_test_cases_report.dart
avoid_printignore directive at file headeripv6_port_service_rule_state_test.dart
Add const declarations to rule state test datatest/page/advanced_settings/firewall/providers/ipv6_port_service_rule_state_test.dart
{...}toconst {...}for constoptimization
transaction_http_command.dart
Replace forEach with for loop in transaction commandlib/core/jnap/command/http/transaction_http_command.dart
forEachloop to traditionalforloop for better readabilitydashboard_manager_test_data.dart
Add const declarations to dashboard manager test datatest/mocks/test_data/dashboard_manager_test_data.dart
[...]toconst [...]for const optimization{...}toconst {...}for constoptimization
ddns_test_data.dart
Add const declarations to DDNS test datatest/mocks/test_data/ddns_test_data.dart
[...]toconst [...]for const optimization1 files
architecture_analysis_2026-01-05.md
Comprehensive architecture analysis with coupling violations andremediation guidedoc/analysis/architecture_analysis_2026-01-05.md
project evaluating module decoupling and layer separation
(Data/Service/Application/Presentation) with detailed diagrams and
code examples
directly imports
core/jnap/models/(firmware_update_settings,back_haul_info, auto_configuration_settings)
risk assessment matrix, identifying 3 high-risk coupling hotspots
violation, including creation of UI-specific models and Service layer
refactoring
architecture scoring (3.6/5 stars)
63 files