pbls/conf/config.json
2026-09-16 19:57:39 +08:00

214 lines
4.3 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"app": "pbls",
"app_cn": "PBL Agent OS 验证原型Phase 0/1",
"port": 9300,
"host": "0.0.0.0",
"port_source": "projects/pbls/env/test.json唯一事实源本文件与其同值 9300",
"debug": false,
"password_key": "pbls$[env:PASSWORD_KEY]$2026",
"logger": {
"name": "pbls",
"level": "INFO",
"file": "$[workdir]$/logs/pbls.log",
"max_bytes": 104857600,
"backup_count": 10
},
"logging": {
"level": "INFO",
"dir": "logs",
"rotate_mb": 50,
"backup_count": 10,
"audit_enabled": true
},
"filesroot": "$[workdir]$/files",
"databases": {
"pbls": {
"driver": "mysql",
"kwargs": {
"host": "127.0.0.1",
"port": 3306,
"user": "pbls",
"password": "Pbls#Test2026",
"database": "pbls",
"charset": "utf8mb4"
}
}
},
"db": {
"engine": "mariadb",
"host": "127.0.0.1",
"port": 3306,
"user": "pbls",
"password": "Pbls#Test2026",
"dbname": "pbls",
"charset": "utf8mb4",
"collation": "utf8mb4_general_ci",
"tcp_only": true,
"pool": {
"min": 2,
"max": 16,
"idle_timeout": 600
}
},
"website": {
"root": "wwwroot",
"indexes": [
"index.ui",
"index.tmpl",
"index.html"
],
"processors": [
[
".tmpl",
"tmpl"
],
[
".ui",
"bui"
],
[
".dspy",
"dspy"
]
],
"static": [
".js",
".css",
".png",
".jpg",
".jpeg",
".gif",
".svg",
".ico",
".woff",
".woff2",
".ttf",
".map"
],
"session": {
"enabled": true,
"timeout": 7200,
"cookie_name": "pbls_sid"
},
"upload": {
"max_size": 104857600,
"allow_ext": [
".png",
".jpg",
".jpeg",
".gif",
".mp4",
".mp3",
".wav",
".pdf",
".docx",
".xlsx",
".json",
".zip",
".glb",
".gltf"
],
"store_dir": "upload"
}
},
"module_dbname": {
"apppublic": "pbls",
"sqlor": "pbls",
"ahserver": "pbls",
"appbase": "pbls",
"rbac": "pbls",
"accounting": "pbls",
"world": "pbls",
"scene": "pbls",
"entity": "pbls",
"script_engine": "pbls",
"scense_runtime": "pbls",
"scense": "pbls",
"scense_game": "pbls",
"pbl_common": "pbls",
"pbl_appcodes": "pbls",
"pbl_governance": "pbls",
"pbl_blueprint": "pbls",
"pbl_template": "pbls",
"pbl_validation": "pbls",
"pbl_compiler": "pbls",
"pbl_agent_runtime": "pbls",
"pbl_evidence": "pbls",
"pbl_assessment": "pbls",
"pbl_domain_ext": "pbls",
"pbl_scense_ext": "pbls",
"pbl_runtime_ext": "pbls",
"pbl_kdb_ext": "pbls",
"pbl_analytics": "pbls"
},
"load_order": [
"apppublic",
"sqlor",
"ahserver",
"appbase",
"rbac",
"accounting",
"world",
"scene",
"entity",
"script_engine",
"scense_runtime",
"scense",
"scense_game",
"pbl_common",
"pbl_appcodes",
"pbl_governance",
"pbl_blueprint",
"pbl_template",
"pbl_validation",
"pbl_compiler",
"pbl_agent_runtime",
"pbl_evidence",
"pbl_assessment",
"pbl_domain_ext",
"pbl_scense_ext",
"pbl_runtime_ext",
"pbl_kdb_ext",
"pbl_analytics"
],
"rbac": {
"enabled": true,
"anonymous_paths": [
"/api/public/health",
"/favicon.ico"
],
"roles": [
"owner.pbls",
"admin.pbls",
"teacher.pbls",
"assistant.pbls",
"student.pbls",
"observer.pbls",
"owner.audit"
]
},
"agent_tools": {
"arbitration": "fail-closed",
"enabled_count": 13,
"disabled_count": 9,
"contract_doc": "projects/pbls/docs/01-design/agent-tool-contract.md",
"deny_on": [
"not_in_whitelist",
"invalid_params",
"missing_tenant_context"
]
},
"pbl": {
"tenant_required": true,
"fail_closed_on_missing_tenant": true,
"validation_dimensions": 14,
"quality_levels": 5,
"append_only_tables": 11,
"compiler_deterministic": true,
"evidence_idempotent": true,
"runtime_single_transaction": true,
"kdb_write_allowed": false,
"referenced_base_table_alter_allowed": false
}
}