214 lines
4.3 KiB
JSON
214 lines
4.3 KiB
JSON
{
|
||
"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
|
||
}
|
||
}
|