gitextract_fx8etgvi/ ├── .air.toml ├── .github/ │ ├── pull_request_template.md │ └── workflows/ │ ├── codeql.yml │ └── go.yml ├── .gitignore ├── .golangci.yml ├── LICENSE ├── MEMORY.md ├── README.en.md ├── README.md ├── build.sh ├── cmd/ │ ├── .gitignore │ ├── bootstrapx/ │ │ ├── bootstrap.go │ │ └── bootstrap_test.go │ ├── command/ │ │ └── command.go │ ├── completion.go │ ├── cron/ │ │ ├── cron.go │ │ ├── schedule.go │ │ ├── schedule_test.go │ │ ├── task_record_test.go │ │ ├── tasks.go │ │ └── tasks_test.go │ ├── root.go │ ├── service/ │ │ └── service.go │ ├── version/ │ │ └── version.go │ └── worker/ │ └── worker.go ├── config/ │ ├── .gitignore │ ├── autoload/ │ │ ├── app.go │ │ ├── jwt.go │ │ ├── logger.go │ │ ├── mysql.go │ │ ├── queue.go │ │ └── redis.go │ ├── config.go │ ├── config.yaml.example │ ├── config_clone.go │ ├── config_load.go │ ├── config_load_test.go │ ├── config_test.go │ ├── provider.go │ ├── runtime.go │ ├── runtime_test.go │ └── testing_helper.go ├── data/ │ ├── data.go │ ├── data_test.go │ ├── migrations/ │ │ ├── 20260425000001_init_table.down.sql │ │ ├── 20260425000001_init_table.up.sql │ │ ├── 20260425000002_init_data.down.sql │ │ ├── 20260425000002_init_data.up.sql │ │ ├── 20260515010000_upload_file_objects.down.sql │ │ └── 20260515010000_upload_file_objects.up.sql │ ├── mysql.go │ ├── redis.go │ ├── runtime_health.go │ └── runtime_health_test.go ├── docs/ │ ├── COMMANDS_AND_TASKS.en.md │ ├── COMMANDS_AND_TASKS.md │ ├── DONATE.en.md │ ├── DONATE.md │ ├── MIGRATE_COMMANDS.en.md │ ├── MIGRATE_COMMANDS.md │ ├── SECURITY_PERMISSION_FIXES_2026-05.md │ ├── SYSTEM_CONFIG_AND_DICT_GUIDELINES.en.md │ └── SYSTEM_CONFIG_AND_DICT_GUIDELINES.md ├── go.mod ├── go.sum ├── internal/ │ ├── access/ │ │ └── casbin/ │ │ ├── adapter.go │ │ ├── casbin.go │ │ ├── enforcer_init.go │ │ └── policy_ops.go │ ├── console/ │ │ ├── confirm.go │ │ ├── demo/ │ │ │ └── demo.go │ │ ├── init/ │ │ │ └── init.go │ │ ├── migrate/ │ │ │ └── migrate.go │ │ ├── system_init/ │ │ │ └── system_init.go │ │ └── task/ │ │ ├── task.go │ │ └── task_test.go │ ├── controller/ │ │ ├── admin_v1/ │ │ │ ├── auth.go │ │ │ ├── auth_admin_user.go │ │ │ ├── auth_api.go │ │ │ ├── auth_dept.go │ │ │ ├── auth_file_resource.go │ │ │ ├── auth_login_log.go │ │ │ ├── auth_menu.go │ │ │ ├── auth_request_log.go │ │ │ ├── auth_role.go │ │ │ ├── auth_session.go │ │ │ ├── auth_storage_config.go │ │ │ ├── auth_sys_config.go │ │ │ ├── auth_sys_dict.go │ │ │ ├── auth_task_center.go │ │ │ ├── auth_test.go │ │ │ ├── dashboard.go │ │ │ └── sys_common.go │ │ ├── sys_base.go │ │ ├── sys_base_test.go │ │ └── sys_demo.go │ ├── cron/ │ │ ├── queue_fallback.go │ │ ├── queue_fallback_test.go │ │ ├── registry.go │ │ └── registry_test.go │ ├── filestorage/ │ │ ├── aliyun_oss.go │ │ ├── local.go │ │ ├── local_test.go │ │ ├── s3.go │ │ └── types.go │ ├── global/ │ │ ├── api_auth_mode.go │ │ ├── api_auth_mode_test.go │ │ ├── auth.go │ │ ├── common.go │ │ ├── context_keys.go │ │ └── system_defaults.go │ ├── jobs/ │ │ ├── audit_log.go │ │ ├── audit_log_test.go │ │ └── registry.go │ ├── middleware/ │ │ ├── admin_auth.go │ │ ├── admin_auth_test.go │ │ ├── audit_context.go │ │ ├── audit_queue.go │ │ ├── audit_queue_test.go │ │ ├── cors.go │ │ ├── cors_test.go │ │ ├── database_ready.go │ │ ├── database_ready_test.go │ │ ├── logger.go │ │ ├── logger_bench_test.go │ │ ├── logger_recorder.go │ │ ├── logger_storage.go │ │ ├── logger_test.go │ │ ├── parse_token.go │ │ ├── recovery.go │ │ ├── request_cost.go │ │ ├── request_locale.go │ │ └── request_locale_test.go │ ├── model/ │ │ ├── admin_login_logs.go │ │ ├── admin_user_dept_map.go │ │ ├── admin_user_role_map.go │ │ ├── admin_users.go │ │ ├── admin_users_test.go │ │ ├── api.go │ │ ├── base.go │ │ ├── base_crud.go │ │ ├── base_list.go │ │ ├── base_list_test.go │ │ ├── base_owner.go │ │ ├── base_test.go │ │ ├── base_tree.go │ │ ├── dept.go │ │ ├── dept_role_map.go │ │ ├── file_upload.go │ │ ├── file_upload_test.go │ │ ├── login_security_state.go │ │ ├── menu.go │ │ ├── menu_api_map.go │ │ ├── menu_i18n.go │ │ ├── modelDict/ │ │ │ └── base.go │ │ ├── request_logs.go │ │ ├── role.go │ │ ├── role_menu_map.go │ │ ├── sys_config.go │ │ ├── sys_dict.go │ │ ├── sys_i18n.go │ │ └── task_center.go │ ├── pkg/ │ │ ├── auditdiff/ │ │ │ ├── diff.go │ │ │ └── diff_test.go │ │ ├── errors/ │ │ │ ├── code.go │ │ │ ├── code_test.go │ │ │ ├── en-us.go │ │ │ ├── error.go │ │ │ └── zh-cn.go │ │ ├── func_make/ │ │ │ ├── func_make.go │ │ │ └── func_make_test.go │ │ ├── i18n/ │ │ │ ├── locale.go │ │ │ └── locale_test.go │ │ ├── logger/ │ │ │ ├── logger.go │ │ │ └── logger_test.go │ │ ├── query_builder/ │ │ │ ├── query_builder.go │ │ │ └── query_builder_test.go │ │ ├── request/ │ │ │ ├── request.go │ │ │ └── request_test.go │ │ ├── response/ │ │ │ ├── response.go │ │ │ └── response_test.go │ │ ├── testkit/ │ │ │ ├── secret.go │ │ │ └── secret_test.go │ │ └── utils/ │ │ ├── desensitize.go │ │ ├── format_time.go │ │ ├── sensitive/ │ │ │ ├── fields.go │ │ │ ├── http_mask.go │ │ │ ├── mask.go │ │ │ └── string_mask.go │ │ ├── token/ │ │ │ ├── jwt.go │ │ │ └── jwt_test.go │ │ ├── utils.go │ │ └── utils_test.go │ ├── queue/ │ │ ├── asynqx/ │ │ │ ├── asynq.go │ │ │ ├── asynq_test.go │ │ │ ├── inspector_test.go │ │ │ └── task_record_test.go │ │ ├── queue.go │ │ └── queue_test.go │ ├── resources/ │ │ ├── admin_user.go │ │ ├── api.go │ │ ├── base.go │ │ ├── base_test.go │ │ ├── common.go │ │ ├── dept.go │ │ ├── file_resource.go │ │ ├── file_resource_test.go │ │ ├── login_log.go │ │ ├── login_log_test.go │ │ ├── menu.go │ │ ├── request_log.go │ │ ├── role.go │ │ ├── session.go │ │ ├── sys_config.go │ │ ├── sys_dict.go │ │ └── task_center.go │ ├── routers/ │ │ ├── admin_router.go │ │ ├── defs.go │ │ ├── deps.go │ │ ├── meta.go │ │ ├── register.go │ │ ├── router.go │ │ ├── router_deps_test.go │ │ ├── router_test.go │ │ └── validate.go │ ├── runtime/ │ │ └── config_reload.go │ ├── service/ │ │ ├── access/ │ │ │ ├── api_cache.go │ │ │ ├── api_cache_test.go │ │ │ ├── common.go │ │ │ ├── coordinator.go │ │ │ ├── graph_loader.go │ │ │ ├── menu_api_defaults.go │ │ │ ├── menu_api_defaults_test.go │ │ │ ├── scope_resolver.go │ │ │ ├── system_defaults.go │ │ │ ├── system_defaults_test.go │ │ │ ├── transaction.go │ │ │ ├── user_permission_sync.go │ │ │ ├── user_permission_sync_bench_test.go │ │ │ └── user_permission_sync_test.go │ │ ├── admin/ │ │ │ ├── admin_user.go │ │ │ ├── admin_user_bind.go │ │ │ ├── admin_user_create_test.go │ │ │ ├── admin_user_mutation.go │ │ │ ├── admin_user_test.go │ │ │ ├── audit_diff.go │ │ │ └── audit_diff_test.go │ │ ├── api_permission/ │ │ │ ├── api.go │ │ │ ├── api_test.go │ │ │ ├── audit_diff.go │ │ │ └── audit_diff_test.go │ │ ├── audit/ │ │ │ ├── list_helpers.go │ │ │ ├── login_log.go │ │ │ ├── login_log_test.go │ │ │ ├── request_log.go │ │ │ ├── request_log_manage.go │ │ │ ├── request_log_manage_test.go │ │ │ └── request_log_write.go │ │ ├── auth/ │ │ │ ├── login.go │ │ │ ├── login_bench_test.go │ │ │ ├── login_blacklist.go │ │ │ ├── login_helpers_test.go │ │ │ ├── login_log_helpers.go │ │ │ ├── login_refresh.go │ │ │ ├── login_revoke.go │ │ │ ├── login_security.go │ │ │ ├── login_security_test.go │ │ │ ├── login_token_ops.go │ │ │ ├── login_types.go │ │ │ ├── login_types_test.go │ │ │ ├── principal.go │ │ │ ├── session.go │ │ │ └── session_test.go │ │ ├── common.go │ │ ├── common_test.go │ │ ├── common_upload_helpers.go │ │ ├── common_upload_helpers_test.go │ │ ├── dashboard/ │ │ │ └── overview.go │ │ ├── dept/ │ │ │ ├── audit_diff.go │ │ │ ├── audit_diff_test.go │ │ │ ├── dept.go │ │ │ ├── dept_mutation.go │ │ │ └── dept_test.go │ │ ├── file_object.go │ │ ├── file_reference.go │ │ ├── file_reference_test.go │ │ ├── file_resource.go │ │ ├── file_resource_folder_upload.go │ │ ├── file_resource_test.go │ │ ├── i18n_text.go │ │ ├── menu/ │ │ │ ├── audit_diff.go │ │ │ ├── audit_diff_test.go │ │ │ ├── menu.go │ │ │ ├── menu_edit.go │ │ │ ├── menu_query.go │ │ │ └── menu_test.go │ │ ├── role/ │ │ │ ├── audit_diff.go │ │ │ ├── audit_diff_test.go │ │ │ ├── role.go │ │ │ ├── role_mutation.go │ │ │ └── role_test.go │ │ ├── storage_config.go │ │ ├── sys_base.go │ │ ├── sys_config/ │ │ │ ├── audit_diff.go │ │ │ ├── audit_request_body.go │ │ │ ├── cache.go │ │ │ ├── cache_sync.go │ │ │ ├── cache_sync_test.go │ │ │ ├── runtime_audit.go │ │ │ ├── runtime_audit_test.go │ │ │ ├── sys_config.go │ │ │ ├── sys_config_mask_test.go │ │ │ ├── typed_value.go │ │ │ └── typed_value_test.go │ │ ├── sys_dict/ │ │ │ ├── audit_diff.go │ │ │ └── sys_dict.go │ │ ├── system/ │ │ │ ├── init.go │ │ │ ├── migration_runner.go │ │ │ ├── reset.go │ │ │ ├── reset_path_test.go │ │ │ └── reset_test.go │ │ └── taskcenter/ │ │ ├── action.go │ │ ├── action_test.go │ │ ├── audit_diff.go │ │ ├── audit_diff_test.go │ │ ├── list_helpers.go │ │ ├── query.go │ │ ├── recorder.go │ │ └── recorder_test.go │ └── validator/ │ ├── binding.go │ ├── binding_i18n_test.go │ ├── form/ │ │ ├── admin_user.go │ │ ├── admin_user_test.go │ │ ├── auth.go │ │ ├── common.go │ │ ├── dept.go │ │ ├── file_resource.go │ │ ├── file_resource_test.go │ │ ├── id_array_validation_test.go │ │ ├── login_log.go │ │ ├── menu.go │ │ ├── menu_test.go │ │ ├── permission.go │ │ ├── permission_test.go │ │ ├── request_log.go │ │ ├── request_log_test.go │ │ ├── role.go │ │ ├── role_test.go │ │ ├── session.go │ │ ├── session_test.go │ │ ├── storage_config.go │ │ ├── storage_config_test.go │ │ ├── sys_config.go │ │ ├── sys_config_test.go │ │ ├── sys_dict.go │ │ ├── sys_dict_test.go │ │ ├── task_center.go │ │ └── task_center_test.go │ ├── rules.go │ ├── runtime.go │ ├── translation.go │ └── validator_test.go ├── main.go ├── pkg/ │ ├── convert/ │ │ └── convert.go │ └── utils/ │ ├── captcha/ │ │ └── captcha.go │ ├── crypto/ │ │ ├── README.md │ │ ├── crypto.go │ │ ├── crypto_aes.go │ │ └── types.go │ ├── helpers.go │ ├── helpers_test.go │ ├── http.go │ ├── http_test.go │ ├── upload.go │ ├── upload_test.go │ ├── utils.go │ └── utils_test.go ├── policy.csv ├── rbac_model.conf └── tests/ ├── README.md ├── admin_test/ │ ├── README.md │ ├── admin_test.go │ ├── admin_user_test.go │ ├── auth_routes_test.go │ ├── common_routes_test.go │ ├── department_test.go │ ├── log_routes_test.go │ ├── menu_test.go │ ├── permission_routes_test.go │ ├── public_routes_test.go │ ├── role_test.go │ ├── system_routes_test.go │ ├── task_routes_test.go │ └── test_helpers_test.go ├── ping_test.go └── test.go