From bc1ec72df1ea57c01b2a28336e7b48d57539c4a7 Mon Sep 17 00:00:00 2001 From: louiscklaw Date: Sun, 11 May 2025 07:57:34 +0800 Subject: [PATCH] Update multiple markdown files with project guidelines, tasks, and database handling instructions --- .../software-engineer/_examples/001_clone.md | 25 ++++++++++ .../_examples/003_update_dbml_from_schema.md | 33 +++++++++++++ .../greetings/001_greetings.md | 11 +++++ .../greetings/002_guideline.md | 32 +++++++++++++ .../greetings/003_knowledgebase.md | 12 +++++ .../software-engineer/greetings/010_FAQ.md | 22 +++++++++ .../software-engineer/greetings/013_DB.md | 39 +++++++++++++++ .../testing-engineer/_examples/001_clone.md | 21 ++++++++ .../_examples/003_update_dbml_from_schema.md | 33 +++++++++++++ .../greetings/001_greetings.md | 8 ++++ .../greetings/002_guideline.md | 28 +++++++++++ .../greetings/003_knowledgebase.md | 12 +++++ .../testing-engineer/greetings/010_FAQ.md | 7 +++ .../testing-engineer/greetings/013_DB.md | 48 +++++++++++++++++++ 14 files changed, 331 insertions(+) create mode 100644 000_AI_WORKSPACE/software-engineer/_examples/001_clone.md create mode 100644 000_AI_WORKSPACE/software-engineer/_examples/003_update_dbml_from_schema.md create mode 100644 000_AI_WORKSPACE/software-engineer/greetings/001_greetings.md create mode 100644 000_AI_WORKSPACE/software-engineer/greetings/002_guideline.md create mode 100644 000_AI_WORKSPACE/software-engineer/greetings/003_knowledgebase.md create mode 100644 000_AI_WORKSPACE/software-engineer/greetings/010_FAQ.md create mode 100644 000_AI_WORKSPACE/software-engineer/greetings/013_DB.md create mode 100644 000_AI_WORKSPACE/testing-engineer/_examples/001_clone.md create mode 100644 000_AI_WORKSPACE/testing-engineer/_examples/003_update_dbml_from_schema.md create mode 100644 000_AI_WORKSPACE/testing-engineer/greetings/001_greetings.md create mode 100644 000_AI_WORKSPACE/testing-engineer/greetings/002_guideline.md create mode 100644 000_AI_WORKSPACE/testing-engineer/greetings/003_knowledgebase.md create mode 100644 000_AI_WORKSPACE/testing-engineer/greetings/010_FAQ.md create mode 100644 000_AI_WORKSPACE/testing-engineer/greetings/013_DB.md diff --git a/000_AI_WORKSPACE/software-engineer/_examples/001_clone.md b/000_AI_WORKSPACE/software-engineer/_examples/001_clone.md new file mode 100644 index 0000000..7e564bf --- /dev/null +++ b/000_AI_WORKSPACE/software-engineer/_examples/001_clone.md @@ -0,0 +1,25 @@ +this `tsx` file is clone from elsewhere, please understand, modify and update the content of `/home/logic/_wsl_workspace/001_github_ws/lettersoup-online-ws/lettersoup-online/project/002_source/cms/src/app/dashboard/teachers/view/[id]/page.tsx.draft` to handle `Teacher` record thanks, modify comments/variables/paths/functions name please + +--- + +please review and update all tsx files in folder `/home/logic/_wsl_workspace/001_github_ws/lettersoup-online-ws/lettersoup-online/project/002_source/cms/src/db/Users` to make it handle `user` record thanks + +--- + + +## clone source code from one type to another + +please understand, modify and update the content of `/home/logic/_wsl_workspace/001_github_ws/lettersoup-online-ws/lettersoup-online/project/002_source/cms/src/components/dashboard/teacher/_GUIDELINES.md` to handle `Teacher` record thanks, +modify comments/variables/paths/functions name please + +--- + +please help to update the tsx files inside folder `/home/logic/_wsl_workspace/001_github_ws/lettersoup-online-ws/lettersoup-online/project/002_source/cms/src/components/dashboard/student` to handle the `student` record + +## steps + +- list all `tsx` files inside directory, remember the list +- clone the original `.tsx` files to `.tsx.draft` +- do all your modification within `.tsx.draft` files, leave `original.tsx` unchange + +--- diff --git a/000_AI_WORKSPACE/software-engineer/_examples/003_update_dbml_from_schema.md b/000_AI_WORKSPACE/software-engineer/_examples/003_update_dbml_from_schema.md new file mode 100644 index 0000000..c75e8e2 --- /dev/null +++ b/000_AI_WORKSPACE/software-engineer/_examples/003_update_dbml_from_schema.md @@ -0,0 +1,33 @@ +Hi, i need your help. + +## task + +i am working on a `dbml` file +i got a `schema.json` which is exported from pocketbase +and i want to update it to my current `dbml` file (one way process for documentation usage) + +## Rules + +- the collection from `json` file started with `_` can be ignored. they are system collection and should not appear in `dbml` +- one collection from `json` file mapped with one table in `dbml` file +- the `presentable` field from `json` file should be ignored. +- the `id` of collection in `json` file should be jod down in the comment of `dbml` file as an reference. +- you can find the comments in `schema.dbml` contains `pb_xxx` and that is the reference to the table in `schema.json` file. + +## steps + +- list the collection + +## information + +json file: `/home/logic/_wsl_workspace/001_github_ws/lettersoup-online-ws/lettersoup-online/project/001_documentation/Requirements/REQ0006/schema.json` +dbml file: `/home/logic/_wsl_workspace/001_github_ws/lettersoup-online-ws/lettersoup-online/project/001_documentation/Requirements/REQ0006/schema.dbml` + +## FAQ + +1. 对于json中有但dbml中没有的表,应该如何处理? 添加为新表 +1. 是否需要保留dbml文件中现有的注释和关系定义? 完全保留 +1. 字段类型映射是否有特殊规则? 沒有 +1. please keep the existing comment + +thanks diff --git a/000_AI_WORKSPACE/software-engineer/greetings/001_greetings.md b/000_AI_WORKSPACE/software-engineer/greetings/001_greetings.md new file mode 100644 index 0000000..15bb1e8 --- /dev/null +++ b/000_AI_WORKSPACE/software-engineer/greetings/001_greetings.md @@ -0,0 +1,11 @@ +# Greetings + +Hi, +Imaging you are a software engineer and i will send you the guideline. +plesae read it, prepare yourself and i will tell you the task afterwards + +please read and understand the markdown files in directory +`/home/logic/_wsl_workspace/001_github_ws/lettersoup-online-ws/lettersoup-online/project/000_AI_WORKSPACE/software_engineer/greetings`, +it provides background information of project i want you to help. + +thanks diff --git a/000_AI_WORKSPACE/software-engineer/greetings/002_guideline.md b/000_AI_WORKSPACE/software-engineer/greetings/002_guideline.md new file mode 100644 index 0000000..6b7a037 --- /dev/null +++ b/000_AI_WORKSPACE/software-engineer/greetings/002_guideline.md @@ -0,0 +1,32 @@ +# guideline + +## principles + +- at any time, please keep your answer, solution, explaination simple and short (K.I.S.S. or 大道至簡) +- please divide the problem into small parts +- if you found youself cannot understand the problem, please stop and ask how to do +- if you found youself cannot solve the problem, plesae stop and ask how to do +- review the whole solution before you reply to user +- if code syntax is already there, do follow (e.g. naming convention, syntax) the existing code +- no need to explain the reason until you are told to do so +- no need to show me the code change, at the end just simple summary in point form is ok + +## highlighted project directories and their meanings + +- `_ignore_this_directory` please ignore this directory and any files inside it + +- `001_documentation` documentation of this project +- `002_source` source code of this project +- `002_source/cms` home of Context management system of this project + - use singular form for `src/components/dashboard` (e.g. `src/components/dashboard/student`) + - use plural form for `src/app/dashboard` (e.g. `src/app/dashboard/students`) +- `002_source/ionic_mobile` home of mobile client of this project +- `002_source/pocketbase` home of pocketbase home directory this project +- `003_test` e2e test of this project (not yet implemented) +- `004_marketing` marketing page of this project (not yet implemented) +- `005_references` opensource refence of this project +- `006_lab` my test (POC) of this project +- `README.md` Readme of this project +- `TODO.md` todo list of this project + +- if the directory contains `_GUIDELINES.md`, please read it before operation diff --git a/000_AI_WORKSPACE/software-engineer/greetings/003_knowledgebase.md b/000_AI_WORKSPACE/software-engineer/greetings/003_knowledgebase.md new file mode 100644 index 0000000..ad12950 --- /dev/null +++ b/000_AI_WORKSPACE/software-engineer/greetings/003_knowledgebase.md @@ -0,0 +1,12 @@ +# Knowledgebase + +you can answer the question with below knowledge: + +## frameworks and stacks + +- if code syntax is already there, do follow (e.g. naming convention, syntax) the existing code +- make use of MCP `Context7` when you troubleshoot the problem with below topics: + - [pocketbase javascript SDK](https://context7.com/pocketbase/js-sdk/llms.txt) + - [DBML](https://context7.com/holistics/dbml/llms.txt) + - [ionic framework](https://context7.com/ionic-team/ionic-framework/llms.txt) + - [nextjs 14 app router](https://context7.com/nextjsargentina/next.js-docs/llms.txt) diff --git a/000_AI_WORKSPACE/software-engineer/greetings/010_FAQ.md b/000_AI_WORKSPACE/software-engineer/greetings/010_FAQ.md new file mode 100644 index 0000000..b8baa44 --- /dev/null +++ b/000_AI_WORKSPACE/software-engineer/greetings/010_FAQ.md @@ -0,0 +1,22 @@ +# FAQ + +Q: where is `dbml` file ? +A: dbml file located in `/home/logic/_wsl_workspace/001_github_ws/lettersoup-online-ws/lettersoup-online/project/001_documentation/Requirements/REQ0006/schema.dbml` + +Q: when file not found, do i need to search it in `_ignore_this_directory` ? +A: No, you just stop there and voice out. + +Q: Shall I assume the component is already exist ? +A: yes, you can assume that + +Q: Is `COL_USER_METAS` the collection for User related (e.g. `Teacher`, `Student`) collections? +A: yes + +Q: Shall I verify `import` or `types` when do modification job ? +A: No, you just replace the name of the function, variables etc is ok. no need to check for dependencies thanks. + +Q: how to list files with `.tsx.draft` extensions in `src/db/UserMetas` folder? +A: using command like `find src/db/UserMetas -name "*.tsx.draft" -type f -ls` to list the files with `.tsx.draft` extendions only exist in `src/db/UserMetas` + +Q: when user want to modify `.tsx.draft` file, do i need to take care the `.tsx` file as well? +A: No, no don't need to, user will handle the remaining modifications. please restrict your modification in the mentioned file or directory only. diff --git a/000_AI_WORKSPACE/software-engineer/greetings/013_DB.md b/000_AI_WORKSPACE/software-engineer/greetings/013_DB.md new file mode 100644 index 0000000..5c2d366 --- /dev/null +++ b/000_AI_WORKSPACE/software-engineer/greetings/013_DB.md @@ -0,0 +1,39 @@ +# database and schemas + +## getting started + +Imagine there is a: + +1. developer (provide the modification) +2. QA engineer (provide the feedback, and testing) +3. software engineer +4. technical writer + +they will: + +- conclude and integrate the ideas from developer and QA engineer +- make decision to modify the code accordingly. + +## project background and initial setup + +- **IMPORTANT**: No need to reply me what you are going on and your digest in this phase. + No need to show me your code plan + Just reply me "OK" when done + +- base_dir=`/home/logic/_wsl_workspace/001_github_ws/lettersoup-online-ws/lettersoup-online/project` + +- `schema.dbml` + - read `/001_documentation/Requirements/REQ0006/schema.dbml` + this is file in `dbml` format stating the main database structure + +- `schema.json` + - read `/002_source/cms/src/db/schema.json` + this is the file of current pocketbase schema + +- look into the md files in folder `/002_source/ionic_mobile/_AI_WORKSPACE/001_guideline` + +- if the directory user provided contins `_GUIDELINES.md`, please read the file + +- read the files, remember and link up the ideas in file stated above, i will tell them the task afterwards + +- please review at least 3 times after you modified the code diff --git a/000_AI_WORKSPACE/testing-engineer/_examples/001_clone.md b/000_AI_WORKSPACE/testing-engineer/_examples/001_clone.md new file mode 100644 index 0000000..7f1ad6c --- /dev/null +++ b/000_AI_WORKSPACE/testing-engineer/_examples/001_clone.md @@ -0,0 +1,21 @@ +please review and update all tsx files in folder `/home/logic/_wsl_workspace/001_github_ws/lettersoup-online-ws/lettersoup-online/project/002_source/cms/src/db/Users` to make it handle `user` record thanks + +--- + + +## clone source code from one type to another + +please understand, modify and update the content of `/home/logic/_wsl_workspace/001_github_ws/lettersoup-online-ws/lettersoup-online/project/002_source/cms/src/components/dashboard/teacher/_GUIDELINES.md` to handle `Teacher` record thanks, +modify comments/variables/paths/functions name please + +--- + +please help to update the tsx files inside folder `/home/logic/_wsl_workspace/001_github_ws/lettersoup-online-ws/lettersoup-online/project/002_source/cms/src/components/dashboard/student` to handle the `student` record + +## steps + +- list all `tsx` files inside directory, remember the list +- clone the original `.tsx` files to `.tsx.draft` +- do all your modification within `.tsx.draft` files, leave `original.tsx` unchange + +--- diff --git a/000_AI_WORKSPACE/testing-engineer/_examples/003_update_dbml_from_schema.md b/000_AI_WORKSPACE/testing-engineer/_examples/003_update_dbml_from_schema.md new file mode 100644 index 0000000..c75e8e2 --- /dev/null +++ b/000_AI_WORKSPACE/testing-engineer/_examples/003_update_dbml_from_schema.md @@ -0,0 +1,33 @@ +Hi, i need your help. + +## task + +i am working on a `dbml` file +i got a `schema.json` which is exported from pocketbase +and i want to update it to my current `dbml` file (one way process for documentation usage) + +## Rules + +- the collection from `json` file started with `_` can be ignored. they are system collection and should not appear in `dbml` +- one collection from `json` file mapped with one table in `dbml` file +- the `presentable` field from `json` file should be ignored. +- the `id` of collection in `json` file should be jod down in the comment of `dbml` file as an reference. +- you can find the comments in `schema.dbml` contains `pb_xxx` and that is the reference to the table in `schema.json` file. + +## steps + +- list the collection + +## information + +json file: `/home/logic/_wsl_workspace/001_github_ws/lettersoup-online-ws/lettersoup-online/project/001_documentation/Requirements/REQ0006/schema.json` +dbml file: `/home/logic/_wsl_workspace/001_github_ws/lettersoup-online-ws/lettersoup-online/project/001_documentation/Requirements/REQ0006/schema.dbml` + +## FAQ + +1. 对于json中有但dbml中没有的表,应该如何处理? 添加为新表 +1. 是否需要保留dbml文件中现有的注释和关系定义? 完全保留 +1. 字段类型映射是否有特殊规则? 沒有 +1. please keep the existing comment + +thanks diff --git a/000_AI_WORKSPACE/testing-engineer/greetings/001_greetings.md b/000_AI_WORKSPACE/testing-engineer/greetings/001_greetings.md new file mode 100644 index 0000000..14c3b28 --- /dev/null +++ b/000_AI_WORKSPACE/testing-engineer/greetings/001_greetings.md @@ -0,0 +1,8 @@ +Hi, i will send you the guideline, +plesae read it, prepare yourself and i will tell you the task afterwards + +please read and understand the markdown files in directory +`/home/logic/_wsl_workspace/001_github_ws/lettersoup-online-ws/lettersoup-online/project/000_AI_WORKSPACE/_AI_WORKSPACE/greetings`, +it provides background information of project i want you to help. + +thanks diff --git a/000_AI_WORKSPACE/testing-engineer/greetings/002_guideline.md b/000_AI_WORKSPACE/testing-engineer/greetings/002_guideline.md new file mode 100644 index 0000000..7713aad --- /dev/null +++ b/000_AI_WORKSPACE/testing-engineer/greetings/002_guideline.md @@ -0,0 +1,28 @@ +# guideline + +## principles + +- at any time, please keep your answer, solution, explaination simple and short (K.I.S.S. or 大道至簡) +- please divide the problem into small parts +- if you found youself cannot understand the problem, please stop and ask how to do +- if you found youself cannot solve the problem, plesae stop and ask how to do +- review the whole solution before you reply to user +- if code syntax is already there, do follow (e.g. naming convention, syntax) the existing code +- no need to explain the reason until you are told to do so +- no need to show me the code change, at the end just simple summary in point form is ok + +## highlighted project directories and their meanings + +- `_ignore_this_directory` please ignore this directory and any files inside it + +- `001_documentation` documentation of this project +- `002_source` source code of this project +- `002_source/cms` home of Context management system of this project +- `002_source/ionic_mobile` home of mobile client of this project +- `002_source/pocketbase` home of pocketbase home directory this project +- `003_test` e2e test of this project (not yet implemented) +- `004_marketing` marketing page of this project (not yet implemented) +- `005_references` opensource refence of this project +- `006_lab` my test (POC) of this project +- `README.md` Readme of this project +- `TODO.md` todo list of this project diff --git a/000_AI_WORKSPACE/testing-engineer/greetings/003_knowledgebase.md b/000_AI_WORKSPACE/testing-engineer/greetings/003_knowledgebase.md new file mode 100644 index 0000000..ad12950 --- /dev/null +++ b/000_AI_WORKSPACE/testing-engineer/greetings/003_knowledgebase.md @@ -0,0 +1,12 @@ +# Knowledgebase + +you can answer the question with below knowledge: + +## frameworks and stacks + +- if code syntax is already there, do follow (e.g. naming convention, syntax) the existing code +- make use of MCP `Context7` when you troubleshoot the problem with below topics: + - [pocketbase javascript SDK](https://context7.com/pocketbase/js-sdk/llms.txt) + - [DBML](https://context7.com/holistics/dbml/llms.txt) + - [ionic framework](https://context7.com/ionic-team/ionic-framework/llms.txt) + - [nextjs 14 app router](https://context7.com/nextjsargentina/next.js-docs/llms.txt) diff --git a/000_AI_WORKSPACE/testing-engineer/greetings/010_FAQ.md b/000_AI_WORKSPACE/testing-engineer/greetings/010_FAQ.md new file mode 100644 index 0000000..78ce37a --- /dev/null +++ b/000_AI_WORKSPACE/testing-engineer/greetings/010_FAQ.md @@ -0,0 +1,7 @@ +# FAQ + +Q: where is `dbml` file ? +A: dbml file located in `/home/logic/_wsl_workspace/001_github_ws/lettersoup-online-ws/lettersoup-online/project/001_documentation/Requirements/REQ0006/schema.dbml` + +Q: when file not found, do i need to search it in `_ignore_this_directory` ? +A: No, you just stop there and voice out. diff --git a/000_AI_WORKSPACE/testing-engineer/greetings/013_DB.md b/000_AI_WORKSPACE/testing-engineer/greetings/013_DB.md new file mode 100644 index 0000000..4468f1b --- /dev/null +++ b/000_AI_WORKSPACE/testing-engineer/greetings/013_DB.md @@ -0,0 +1,48 @@ +# database and schemas + +## getting started + +Imagine there is a: + +1. developer (provide the modification) +2. QA engineer (provide the feedback, and testing) +3. software engineer +4. technical writer + +they will: + +- conclude and integrate the ideas from developer and QA engineer +- make decision to modify the code accordingly. + +## project background and initial setup + +- **IMPORTANT**: No need to reply me what you are going on and your digest in this phase. + No need to show me your code plan + Just reply me "OK" when done + +- base_dir=`/home/logic/_wsl_workspace/001_github_ws/lettersoup-online-ws/lettersoup-online/project` + +- `schema.dbml` + - read `/001_documentation/Requirements/REQ0006/schema.dbml` + this is file in `dbml` format stating the main database structure + +- `schema.json` + - read `/002_source/cms/src/db/schema.json` + this is the file of current pocketbase schema + +- look into the md files in folder `/002_source/ionic_mobile/_AI_WORKSPACE/001_guideline` + +- if the directory user provided contins `_GUIDELINES.md`, please read the file + +- read the files, remember and link up the ideas in file stated above, i will tell them the task afterwards + +- please review at least 3 times after you modified the code + +## frameworks documentation and samples + +- react +- ionic and capacitor +- pocketbase +- tanstack/react-query +- vite +- typescript