Compare commits

..
Author SHA1 Message Date
aios f9bcb3f320 chore(chatgpt): create patch alias-test-patch 2026-07-07 22:03:33 +08:00
9 changed files with 53 additions and 149 deletions
@@ -185,15 +185,15 @@ class H(BaseHTTPRequestHandler):
if path in ('/api/openapi.yaml','/api/openapi-chatgpt-actions.yaml','/api/schema'):
return self.sendt(OPENAPI.read_text(encoding='utf-8'), 'application/yaml; charset=utf-8') if OPENAPI.exists() else self.sendj({'error':'schema_missing'},404)
if path in ('/api','/api/status'): return self.sendj(api_spec())
if path in ('/api/base','/api/baseline','/base'):
if path in ('/api/base','/base'):
data=jload(WS/'baseline'/'current.json', {}); data.setdefault('git', sh(['rev-parse','--short','HEAD'])['stdout']); return self.sendj(data)
if path in ('/api/ver','/api/versions','/ver'):
if path in ('/api/ver','/ver'):
return self.sendj({'tags':sh(['tag','--list','V*'])['stdout'].splitlines(),'versions_dir':[p.name for p in (WS/'versions').glob('*')],'head':sh(['rev-parse','--short','HEAD'])['stdout']})
if path in ('/api/diff','/diff'):
frm=(q.get('from') or ['HEAD~1'])[0]; to=(q.get('to') or ['HEAD'])[0]; return self.sendj({'from':frm,'to':to,'diff':sh(['diff',frm,to])})
if path in ('/api/patch','/api/patches','/api/branches','/patch'): return self.sendj({'patches':patches(),'branches':sh(['branch','--format','%(refname:short)'])['stdout'].splitlines()})
if path in ('/api/patch','/patch'): return self.sendj({'patches':patches(),'branches':sh(['branch','--format','%(refname:short)'])['stdout'].splitlines()})
if path in ('/api/model','/model'): return self.sendj({'base':BASE_MODELS,'custom':model_docs(),'priority':[jload(p,{}) for p in sorted((WS/'config'/'model_priority').glob('*.json'))]})
if path in ('/api/run','/api/runtime-status','/run'):
if path in ('/api/run','/run'):
svc=subprocess.run(['systemctl','is-active','aios-gitops-model-api'], text=True, capture_output=True)
return self.sendj({'service':'aios-gitops-model-api','status':svc.stdout.strip() or svc.stderr.strip(),'workspace_branch':sh(['rev-parse','--abbrev-ref','HEAD'])['stdout']})
if path in ('/api/action-monitor','/action-monitor'):
@@ -211,11 +211,11 @@ class H(BaseHTTPRequestHandler):
def do_POST(self):
path=urllib.parse.urlparse(self.path).path.rstrip('/'); data=self.body()
try:
if path in ('/api/branch','/api/create-branch'): return self.branch(data)
if path in ('/api/file','/api/commit-file'): return self.file(data)
if path == '/api/branch': return self.branch(data)
if path == '/api/file': return self.file(data)
if path == '/api/commit': return self.commit(data)
if path in ('/api/patch','/api/create-patch'): return self.patch(data)
if path in ('/api/tag','/api/create-tag'): return self.tag(data)
if path == '/api/patch': return self.patch(data)
if path == '/api/tag': return self.tag(data)
if path == '/api/rollback': return self.rollback(data)
if path == '/api/model': return self.model(data)
if path == '/api/model-priority': return self.model_priority(data)
+20 -10
View File
@@ -1,12 +1,22 @@
{
"active_version": "V1R2C3",
"active_tag": "V1R2C3",
"previous_version": "V1R2C2",
"rollback_version": "V1R2C2",
"mode": "gitops-online",
"update_mode": "git_patch_only",
"zip_update_deprecated": true,
"chatgpt_access": true,
"codex_access": true,
"updated_at": "2026-07-08T00:00:00Z"
"version": "V1R1C0",
"architecture_version": "V1",
"release_version": "R1",
"change_version": "C0",
"components": [
"webops",
"owner-admin-user",
"npm",
"casdoor",
"openclaw",
"hermes",
"one-api",
"gitops-control",
"baseline-registry",
"custom-llm-registry",
"runtime-selector"
],
"entry": "https://cnnetmkt.top",
"proxy": "npm",
"runtime_sync": "openclaw"
}
+16 -7
View File
@@ -1,6 +1,6 @@
{
"active_version": "V1R2C3",
"active_tag": "V1R2C3",
"active_version": "V1R2C2",
"active_tag": "V1R2C2",
"mode": "gitops-online",
"version_policy": "VxRxCx",
"update_mode": "git_patch_only",
@@ -28,8 +28,8 @@
"human_shortlinks_login_required": true,
"autonomous_recovery_loop": true
},
"version": "V1R2C3",
"baseline_tag": "V1R2C3",
"version": "V1R2C2",
"baseline_tag": "V1R2C2-auto-recovery-baseline",
"source": "AIOS_V1R1C0_MULTIUSER_GITOPS_CUSTOM_LLM_PROD_FULL_DEPLOY_20260706.zip",
"source_package": "AIOS_V1R1C0_MULTIUSER_GITOPS_CUSTOM_LLM_PROD_FULL_DEPLOY_20260706.zip",
"zip_update_mode": "deprecated",
@@ -47,7 +47,7 @@
"/api",
"/hook"
],
"updated_at": "2026-07-08T00:00:00Z",
"updated_at": "2026-07-07T19:45:00Z",
"auth": {
"primary_domain": "https://auth.cnnetmkt.top",
"backup_domain": "https://auth.h.imruyi.top:8443",
@@ -56,7 +56,7 @@
"casdoor_application": "admin/aios-portal",
"backup_domain_role": "standby-only"
},
"previous_version": "V1R2C2",
"previous_version": "V1R2C1",
"codex_gitops": {
"config": "config/codex/gitops-online.json",
"token_account": "codex-gitops-bot",
@@ -96,5 +96,14 @@
"owner_password_sync": "aios-gitea-owner-sync.timer",
"owner_password_source": "secret_ref://aios/user-control-center/UCC_OWNER_PASSWORD"
}
},
"last_auth_portal_fix": {
"version": "V1R1C4",
"timestamp": "2026-07-06T11:16:23Z",
"shortlinks": "redirect_to_login_protected_portal_gitops_section",
"gitea_owner_sync": "enabled",
"portal_overlay": "overlays/user-control-center",
"portal_baseline_cache": "/app/runtime/gitops/current.json",
"sync_log_secret_hygiene": "runuser_without_sudo_command_logging"
}
}
}
@@ -1,22 +0,0 @@
{
"version": "V1R3C0",
"acceptance": {
"self_loop_architecture": "passed",
"runtime_supervisor_model": "passed",
"failure_memory": "passed",
"adaptive_policy": "passed",
"patch_executor": "passed",
"acceptance_pipeline": "passed",
"production_gate": "passed"
},
"security_checks": {
"direct_main_push": false,
"secrets_in_git": false,
"owner_gate_enabled": true
},
"deployment": {
"supervisor_service_manifest": "ready",
"runtime_wiring": "ready",
"final_tag": "pending"
}
}
@@ -1,24 +0,0 @@
{
"version": "V1R3C0",
"status": "owner_approved_waiting_consequential_tag_confirmation",
"approved_by": "owner",
"implementation_branch": "patch/user-portal-rbac-ops-dashboard",
"request_branch": "request/tag-V1R3C0-self-loop-autonomous-engine",
"scope": "self-loop autonomous engine promotion",
"approval": {
"owner_confirmed": true,
"tag_creation_requested": true,
"platform_consequential_confirmation_required": true
},
"governance": {
"direct_main_push": false,
"owner_approval_required": true,
"secrets_in_git": false
},
"next_actions": [
"complete platform consequential confirmation for Git tag creation",
"create V1R3C0 tag",
"promote V1R3C0 baseline",
"verify runtime and self-loop supervisor status"
]
}
@@ -1,48 +0,0 @@
{
"version": "V1R3C0",
"release_type": "new_R_version",
"base_version": "V1R2C3",
"implementation_branch": "patch/user-portal-rbac-ops-dashboard",
"request_branch": "request/tag-V1R3C0-self-loop-autonomous-engine",
"implementation_head_observed": "ac55185",
"promotion_status": "owner_approved_waiting_platform_tag_confirmation",
"capabilities": {
"self_loop_supervisor": "done",
"event_hook_auto_trigger": "done",
"failure_memory": "done",
"failure_memory_persistence": "done",
"adaptive_policy": "done",
"runtime_worker": "done",
"self_evolution_report": "done",
"deployment_manifest": "done",
"acceptance_pipeline": "done",
"production_gate": "done"
},
"files_added": [
"active-runtime/app/autonomous_self_loop.py",
"active-runtime/app/self_loop_executor.py",
"active-runtime/app/self_loop_orchestrator.py",
"active-runtime/app/self_loop_patch_executor.py",
"active-runtime/app/self_loop_scheduler.py",
"active-runtime/app/self_loop_runtime_api.py",
"active-runtime/app/self_loop_gitops_adapter.py",
"active-runtime/app/production_acceptance_gate.py",
"active-runtime/app/failure_memory.py",
"active-runtime/app/failure_memory_store.py",
"active-runtime/app/adaptive_policy.py",
"active-runtime/app/self_loop_event_hooks.py",
"active-runtime/app/self_loop_supervisor.py",
"active-runtime/app/self_loop_worker.py",
"active-runtime/app/self_evolution_report.py",
"deploy/self-loop-supervisor.service",
"config/autonomous-self-loop-policy.yaml",
"config/self-loop-runtime-wiring.yaml"
],
"governance": {
"direct_main_push": false,
"patch_only": true,
"owner_approval_required": true,
"secrets_in_git": false
},
"blocked_by": "platform_consequential_confirmation_for_git_tag_creation"
}
-10
View File
@@ -1,10 +0,0 @@
{
"version": "V1R3C0",
"message": "Request V1R3C0 promotion for self-loop autonomous engine: supervisor, event hooks, failure memory, adaptive policy, runtime worker, self-evolution report. Current implementation branch patch/user-portal-rbac-ops-dashboard; owner approval required.",
"requested_by": "chatgpt-gitops-bot",
"approval_required": true,
"execute": false,
"tag_created": false,
"created_at": "2026-07-08T02:24:54Z",
"operation": "create_tag_approval_request"
}
+9
View File
@@ -0,0 +1,9 @@
{
"id": "patch-1783433013045-956730c5",
"patch_name": "alias-test-patch",
"branch": "patch/alias-test-patch",
"risk": "medium",
"description": "test create-patch alias",
"created_by": "chatgpt-gitops-bot",
"created_at": "2026-07-07T14:03:33Z"
}
-20
View File
@@ -1,20 +0,0 @@
{
"version": "V1R2C3",
"tag": "V1R2C3",
"previous_version": "V1R2C2",
"rollback_version": "V1R2C2",
"release_reason": "GPT Actions ClientResponseError compatibility recovery",
"validated_actions": [
"getRuntimeStatus",
"getBaseline",
"listVersions",
"listPatches",
"getDiff",
"createBranch",
"createPatch",
"commitFile"
],
"secret_plaintext_written": false,
"created_at": "2026-07-08T00:00:00Z",
"author": "openclaw"
}