Files
MemRelay/global/curated/7aee455b-24cc-4008-bdaf-443721e6f939/Global Development Workflows.md
T

90 lines
4.3 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
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.
---
title: Global Development Workflows
type: curated
permalink: main/global/curated/7aee455b-24cc-4008-bdaf-443721e6f939/global-development-workflows
stable_id: e4fc35f2-1606-4b79-9c1e-367edeea97d0
scope: global
project_id: null
workspace_type: global
usage_profile_id: 0c9feb46-d06e-43cd-9ef0-c5813c84a998
preference_context: global
document_type: workflows
revision: 1
source_memory_ids:
- d8161df6-3159-46c9-9402-c5ab30d1436e
source_checkpoint_ids: []
source_file_ids: []
source_git_commit: null
source_git_commits: []
source_agent_sync_ids: []
model_connection: Sub2API
model_name: git-restore
source_count: 90
source_revisions:
memory:5ed86f53-b53e-4534-8e51-d3a010069d5e: '2'
memory:105b328f-4bda-4641-90a7-7282ef156316: '2'
memory:3f91189b-11a1-45bb-8357-4f413dc1609d: '1'
source_dispositions:
processed: 90
unchanged: 0
unsupported: 0
skipped: 0
cited_source_ids:
- curated_baseline:e4fc35f2-1606-4b79-9c1e-367edeea97d0
- cross_workspace_memory:df065dbf-85de-4f2b-bbb1-5d8b115de08c
- cross_workspace_memory:9f00df57-ec45-4d63-9da6-9b2fb16c2d6b
- cross_workspace_memory:0f19c98d-0d69-4702-af18-e75edae6370a
- cross_workspace_memory:1dfbc803-3390-4cc7-9a17-6bf86c9bb165
- cross_workspace_memory:6e63a053-fea4-4785-984c-b61fab08810a
- cross_workspace_memory:dd093dd7-71be-46a2-bcb1-4a87c3d4b9ab
- cross_workspace_memory:dc70f54c-8e29-4834-a5c1-a63bc9ac9e68
- cross_workspace_memory:e1b8d25d-f638-4fbe-8a8d-0eda8f2d7d46
- cross_workspace_memory:6b129c78-a412-41e9-af9f-63ab071e03d9
- cross_workspace_memory:5924806e-b234-49f7-b971-3c844fd07cf3
- cross_workspace_memory:2bff13bb-b5cc-40fd-8b2f-774f5c6b9dba
- cross_workspace_memory:61e30ee3-0e26-4d64-b00e-f77bc3a3fd60
- memory:5ed86f53-b53e-4534-8e51-d3a010069d5e
- memory:105b328f-4bda-4641-90a7-7282ef156316
- memory:3f91189b-11a1-45bb-8357-4f413dc1609d
job_cited_source_ids:
- curated_baseline:e4fc35f2-1606-4b79-9c1e-367edeea97d0
conflicts: []
supersedes: []
preferences: []
source_cursor: 571
source_hash: b84354eb37ab531c5be3076d5c3f130399f235bc33c8cf9453cbfcecae042e49
prompt_version: 2026-08-12.3
schema_version: '3'
curation_job_id: null
created_at: '2026-08-08T07:55:35.371609+00:00'
updated_at: '2026-09-23T14:50:02.231152+00:00'
tags:
- workflows
- global
restored_from_commit: 6a6a895eafcca6052e81a14fca103a42635dd1c2
---
# Global Development Workflow
1. **Project memory & Git process**
- All notes are kept in `aidocs/project_context.md`. `aidocs/` is in `.gitignore` and never committed.
- After completing a task, perform: delete temporary files, debug logs, unused code → update memory (what/why/validation/issues/next steps) → check `.gitignore` → commit with `type: 中文一句话描述`. Default is *commit only*; push only when explicitly requested.
2. **Credential Retrieval Workflow**
- Before any login, SSH, database or API call, query Vaultwarden. If exactly one match, use it directly. If multiple or none, prompt for selection or manual input.
- When adding or updating credentials, immediately write them to the password vault; memory records only the entry name, purpose, and usage method.
3. **Technical Notes**
- **FastAPI async** – Never perform blocking I/O inside `async def`; change to normal `def` so FastAPI handles it in a thread‑pool.
- **PowerShell JSON** – Write JSON to a temporary file and send with `curl.exe --data-binary @file` to preserve quotes.
- **Large‑table SQL** – Add indexes on frequently queried text columns, raise DB `read/write_timeout` along with client `upload_timeout`/`run_timeout`.
- **Docker exec timeout** – Obtain raw socket and call `socket.settimeout(None)` to disable default 3 s timeout.
- **Docker Hub proxy** – Configure Docker Desktop to **Manual** with HTTP/HTTPS pointing to `http://127.0.0.1:7897` and restart Docker.
4. **Version & Deployment Rules**
- For OTA, always use the official release version matching the device's ABI and keep the device’s firmware tightly coupled to the release channel.
- Do not flash generic RK3568 images; use the project‑provided U‑Boot, DTB and RTL8367S/DSA configurations.
5. **Testing & Validation**
- Regression tests should use real timestamps and ensure that the JSON output from `memrelay://capabilities` rendered via `jsonable_encoder` matches the raw resource structure.
- FastAPI handlers that perform blocking I/O should be switched to synchronous functions.