feat(agent-call): add contract-driven mock executor

This commit is contained in:
2026-09-12 19:29:49 +08:00
parent 6cd28c033e
commit d4ac130a47
47 changed files with 5936 additions and 30 deletions
+38
View File
@@ -0,0 +1,38 @@
from __future__ import annotations
import argparse
import sqlite3
from pathlib import Path
def copy_database(source: str, destination: str) -> None:
source_path = Path(source)
destination_path = Path(destination)
if not source_path.is_file():
raise FileNotFoundError(source)
destination_path.parent.mkdir(parents=True, exist_ok=True)
source_db = sqlite3.connect(source_path)
destination_db = sqlite3.connect(destination_path)
try:
source_db.backup(destination_db)
destination_db.commit()
finally:
destination_db.close()
source_db.close()
def main() -> int:
parser = argparse.ArgumentParser(
description="offline SQLite backup/restore for agent-call"
)
parser.add_argument("action", choices=("backup", "restore"))
parser.add_argument("source")
parser.add_argument("destination")
args = parser.parse_args()
copy_database(args.source, args.destination)
print(f"{args.action} complete")
return 0
if __name__ == "__main__":
raise SystemExit(main())