@tera-system/core 0.2.1 → 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,1045 +1,464 @@
1
- # Tera Agent — Project Preparation Files Guide
2
-
3
- ## الهدف من هذا الملف
4
-
5
- هذا الملف يحدد الملفات التي يمكن أن يجهزها **العميل تيرا** عند بدء أي مشروع جديد، بعد استلام:
6
-
7
- 1. ملف فكرة التطبيق العامة.
8
- 2. ملف المعلومات التقنية المتاحة.
9
- 3. أي مرفقات داعمة مثل صور، ألوان، أمثلة، ملفات Excel، أو مراجع.
10
-
11
- ليس المطلوب أن ينشئ العميل تيرا جميع الملفات دائمًا.
12
- المطلوب أن يقرر، حسب طبيعة التطبيق، أي الملفات ضرورية للتنفيذ المنظم والدقيق.
13
-
14
- ---
15
-
16
- # قاعدة العمل العامة
17
-
18
- يقسم العميل تيرا الملفات إلى ثلاث فئات:
19
-
20
- | الفئة | المعنى | متى تُستخدم؟ |
21
- |---|---|---|
22
- | ملفات رئيسية | ملفات أساسية لأي مشروع تقريبًا | تُنشأ غالبًا في كل مشروع |
23
- | ملفات مشروطة | ملفات مهمة حسب طبيعة التطبيق | تُنشأ إذا وُجد سبب واضح لها |
24
- | ملفات ثانوية | ملفات داعمة أو تنظيمية | تُنشأ في المشاريع المتوسطة والكبيرة أو عند الحاجة |
25
-
26
- ---
27
-
28
- ## Relationship Between project-inputs and project-preparation
29
-
30
- - `project-inputs/` contains the user's initial raw project inputs.
31
- - `project-preparation/` contains the formal preparation files produced by Tera after understanding those inputs.
32
- - `00_PROJECT_INPUTS.md` does not replace `project-inputs/`; it summarizes and normalizes them.
33
- - ApplicationBlueprintAgent (مُهندس — SCP-2026-07-28-118) must not start formal preparation files before minimum `Project Intake Gate` completion.
34
- - `clients/` contains official client-facing records, approval packages, assets, communication summaries, and delivery material for external client projects.
35
- - Client-facing approval files must not be mixed with internal `project-preparation/` files.
36
-
37
- External client project structure:
38
-
39
- ```text
40
- clients/
41
- CLIENT-[client-name-or-id]/
42
- CLIENT_PROFILE.md
43
- CONTACTS.md
44
- applications/
45
- APP-[app-name-or-id]/
46
- client-approval/
47
- client-assets/
48
- client-communications/
49
- delivery/
50
- ```
51
-
52
- ---
53
-
54
- # Client-Facing Files
55
-
56
- هذه الملفات ليست بديلة عن ملفات التحضير الداخلية، بل هي مخرجات موجهة للعميل للمراجعة والاعتماد قبل التنفيذ.
57
-
58
- الموقع الرسمي:
59
-
60
- ```text
61
- clients/CLIENT-[client-name-or-id]/applications/APP-[app-name-or-id]/client-approval/
62
- ```
63
-
64
- ## Mandatory Client Approval Package
65
-
66
- في مشاريع العملاء الخارجيين، حزمة اعتماد العميل إلزامية قبل التنفيذ.
67
-
68
- الملفات الافتراضية، بوابات الاعتماد، وقواعد الاستثناء المحدود موثقة رسميًا في:
69
-
70
- ```text
71
- tera-system/TeraClientPolicy.md (Section 7)
72
- tera-system/runtime/TERA_RUNTIME_TEMPLATES.md
73
- ```
74
-
75
- قواعد إلزامية:
76
-
77
- - الوثائق الموجهة للعميل تكتب بالعربية افتراضيًا.
78
- - لا تذكر تفاصيل Tera الداخلية أو العملاء الفرعيين أو سياسات التشغيل.
79
- - لا يدخل المشروع Build Mode قبل اعتماد النطاق وحزمة العميل.
80
- - أي ملف غير مناسب لمشروع صغير يجب توثيق سبب عدم استخدامه في سجل اعتماد العميل.
81
-
82
- ---
83
-
84
- # Blueprinting Artifacts (Pre-Preparation, Non-Baseline)
85
-
86
- هذه المواد تُنشأ فقط إذا فُعّل `ApplicationBlueprintAgent` (مُهندس) بعد handoff عميل مؤكد. **SCP-2026-07-28-118: مُهندس يملك الآن phases 1–4 كاملة — من blueprint حتى baseline.**
87
-
88
- ليست بديلة عن ملفات التحضير الرسمية، ولا تُستهلك downstream مباشرة.
89
-
90
- ## APPLICATION_BLUEPRINT.md
91
-
92
- **الموقع الرسمي:**
93
-
94
- ```text
95
- project-preparation/APPLICATION_BLUEPRINT.md
96
- ```
97
-
98
- **الغرض:**
99
- تحويل handoff المعتمد إلى blueprint داخلي عالي المستوى يساعد Tera لاحقاً في بدء التحضير الرسمي.
100
-
101
- **قاعدة إلزامية:**
102
-
103
- ```text
104
- APPLICATION_BLUEPRINT.md starts as Draft.
105
- It must not be used for formal preparation until status = approved_for_preparation.
106
- ```
107
-
108
- ## BLUEPRINT_OPEN_QUESTIONS.md
109
-
110
- ملف اختياري لتجميع الأسئلة التي تمنع إكمال الـ blueprint أو تحتاج قراراً قبل التحضير الرسمي.
111
-
112
- ## BLUEPRINT_DECISION_CANDIDATES.md
113
-
114
- ملف اختياري لتوثيق المرشحات والتوصيات (مثل التقنية، الاستضافة، قاعدة البيانات) بصيغة candidates فقط، لا كقرارات نهائية.
115
-
116
- ## draft-seeds/
117
-
118
- ```text
119
- project-preparation/draft-seeds/
120
- ```
121
-
122
- يحوي Draft Seeds فقط عند الحاجة وضمن الضوابط التالية:
123
-
124
- - اختيارية وليست افتراضية
125
- - مبررة بوضوح
126
- - الحد الموصى به 3 ملفات فقط
127
- - تجاوز 3 يحتاج موافقة صريحة
128
- - كل ملف يجب أن يحمل: `Draft Seed` / `Not Baseline` / `Not approved for downstream execution`
129
-
130
- لا تُعد Draft Seeds جزءاً من baseline التحضيري، ويجب إعادة إنتاج محتواها أو اعتماده رسمياً ضمن ملفات التحضير المعتادة قبل أي استهلاك downstream.
131
-
132
- ---
133
-
134
- # Project Control Files
135
-
136
- هذه الملفات ليست ملفات تحليل أو تصميم للتطبيق.
137
-
138
- هي سجلات إدارية لتتبع التنفيذ:
139
-
140
- ```text
141
- project-control/TASK_REGISTRY.md
142
- project-control/PROJECT_ACTIVITY_LOG.md
143
- project-control/ISSUES_AND_GAPS.md
144
- project-control/DECISIONS_LOG.md
145
- project-control/tasks/
146
- ```
147
-
148
- لا تُنشأ كبديل عن ملفات `project-preparation/`.
149
-
150
- تستخدم عند بدء التنفيذ أو عند الحاجة إلى تتبع المهام والنتائج والمراجعات والفجوات والقرارات.
151
-
152
- ---
153
-
154
- # أولًا: الملفات الرئيسية Core Files
155
-
156
- هذه الملفات تمثل الحد الأدنى المنظم لبدء أي تطبيق بشكل صحيح.
157
-
158
- ---
159
-
160
- ## PROJECT_RULES.md
161
-
162
- ### الغرض
163
- توثيق القواعد الخاصة بالمشروع الحالي بين صاحب المشروع وTera.
164
-
165
- هذا الملف اختياري، لكنه يصبح ملزمًا عند وجوده.
166
-
167
- ### ماذا يحتوي؟
168
- - قيود تقنية خاصة بالمشروع.
169
- - قيود تصميم أو هوية.
170
- - قيود على المكتبات أو APIs.
171
- - قواعد تشغيل محلي أو نشر.
172
- - قواعد مستبعدة من النسخة الأولى.
173
- - أي تعليمات يجب ألا تضيع داخل المحادثة.
174
-
175
- ### متى يُنشأ؟
176
- ينشأ إذا قدم صاحب المشروع قواعد خاصة أو قيودًا يريد إلزام Tera والعملاء الفرعيين بها.
177
-
178
- ### أهميته
179
- يمنع ضياع القواعد داخل المحادثة، ويجعلها جزءًا من التفويض والمراجعة.
180
-
181
- ---
182
-
183
- ## 00_PROJECT_INPUTS.md
184
-
185
- ### الغرض
186
- ملف منظم ينتجه Tera من:
187
-
188
- - `project-inputs/01_APPLICATION_IDEA.md`
189
- - `project-inputs/02_TECHNICAL_CONTEXT.md`
190
-
191
- ويجمع فكرة التطبيق، والسياق التقني، والقيود الأولية في صيغة موحدة قبل بقية ملفات التحضير.
192
-
193
- ### ماذا يحتوي؟
194
- - اسم المشروع.
195
- - وصف الفكرة العامة.
196
- - ملفات الـ intake المستلمة.
197
- - المعلومات التقنية المتوفرة.
198
- - الصور أو المراجع أو الألوان إن وجدت.
199
- - الافتراضات الأولية.
200
- - المعلومات الناقصة.
201
- - الأسئلة التي تحتاج توضيحًا لاحقًا.
202
-
203
- ### أهميته
204
- يمنع ضياع المعلومات، ويجعل بداية المشروع مبنية على مدخلات واضحة لا على ذاكرة أو فهم متفرق.
205
-
206
- ---
207
-
208
- ## 01_PROJECT_BRIEF.md
209
-
210
- ### الغرض
211
- تحويل فكرة التطبيق إلى ملخص تنفيذي واضح ومفهوم.
212
-
213
- ### ماذا يحتوي؟
214
- - ما هو التطبيق؟
215
- - من المستخدمون المستهدفون؟
216
- - ما المشكلة التي يحلها؟
217
- - ما الهدف من التطبيق؟
218
- - ما نطاق النسخة الأولى؟
219
- - ما مؤشرات نجاح المشروع؟
220
-
221
- ### أهميته
222
- يمثل مرجع الفهم الرئيسي للمشروع، ويمنع اختلاف تفسير الفكرة بين العميل تيرا والعملاء الفرعيين والمطور.
223
-
224
- ---
225
-
226
- ## 02_SCOPE_AND_BOUNDARIES.md
227
-
228
- ### الغرض
229
- تحديد حدود المشروع بوضوح.
230
-
231
- ### ماذا يحتوي؟
232
- - ما هو داخل النطاق.
233
- - ما هو خارج النطاق.
234
- - الميزات المؤجلة.
235
- - الأمور غير المطلوبة في النسخة الأولى.
236
- - حدود التطبيق الوظيفية.
237
- - حدود التطبيق التقنية.
238
-
239
- ### أهميته
240
- يحمي المشروع من التوسع العشوائي، ويمنع إدخال طلبات جديدة أثناء التنفيذ بدون قرار واضح.
241
-
242
- ---
243
-
244
- ## 03_MODULES_AND_FEATURES.md
245
-
246
- ### الغرض
247
- تقسيم التطبيق إلى موديولات وميزات واضحة.
248
-
249
- ### ماذا يحتوي؟
250
- - الموديولات الرئيسية.
251
- - الميزات داخل كل موديول.
252
- - أولوية كل ميزة: أساسي، مهم، لاحق.
253
- - علاقة الموديولات ببعضها.
254
- - ملاحظات خاصة بكل موديول.
255
-
256
- ### أهميته
257
- يساعد في تنظيم التحليل والتنفيذ، ويمنع التعامل مع التطبيق ككتلة واحدة غير واضحة.
258
-
259
- ---
260
-
261
- ## 04_USERS_ROLES_PERMISSIONS.md
262
-
263
- ### الغرض
264
- تحديد المستخدمين والأدوار والصلاحيات الوظيفية.
265
-
266
- ### ماذا يحتوي؟
267
- - أنواع المستخدمين.
268
- - الأدوار Roles.
269
- - صلاحيات كل دور.
270
- - من يستطيع الإضافة.
271
- - من يستطيع التعديل.
272
- - من يستطيع الحذف.
273
- - من يستطيع الاعتماد.
274
- - من يستطيع العرض فقط.
275
- - قواعد الوصول للبيانات.
276
-
277
- ### أهميته
278
- الصلاحيات تؤثر على الشاشات، العمليات، الأمان، التقارير، والاختبارات. تأخيرها يسبب إعادة عمل كبيرة.
279
-
280
- ---
281
-
282
- ## 05_BUSINESS_WORKFLOWS.md
283
-
284
- ### الغرض
285
- تحديد مسارات العمل الأساسية داخل التطبيق.
286
-
287
- ### ماذا يحتوي؟
288
- - دورة كل عملية رئيسية.
289
- - الحالات Statuses.
290
- - الانتقالات بين الحالات.
291
- - من ينفذ كل خطوة.
292
- - شروط الانتقال من حالة إلى أخرى.
293
- - حالات الرفض أو الإلغاء.
294
- - الاستثناءات المهمة.
295
-
296
- ### أهميته
297
- يضمن أن التطبيق يعكس دورة العمل الحقيقية، وليس مجرد شاشات إدخال وعرض.
298
-
299
- ---
300
-
301
- ## 06_DATA_MODEL_PREPARATION.md
302
-
303
- ### الغرض
304
- تجهيز تصور أولي للبيانات قبل تصميم قاعدة البيانات النهائي.
305
-
306
- ### ماذا يحتوي؟
307
- - الكيانات الأساسية.
308
- - الجداول المتوقعة مبدئيًا.
309
- - أهم الحقول.
310
- - العلاقات بين الكيانات.
311
- - البيانات المرجعية.
312
- - القيود المهمة.
313
- - ملاحظات حول البيانات الحساسة أو المتكررة.
314
-
315
- ### أهميته
316
- يمنع العشوائية في بناء قاعدة البيانات، ويكشف مبكرًا العلاقات والبيانات الناقصة.
317
-
318
- ---
319
-
320
- ## 07_SCREENS_AND_UI_STRUCTURE.md
321
-
322
- ### الغرض
323
- تحديد الشاشات المطلوبة وهيكل الواجهة.
324
-
325
- ### ماذا يحتوي؟
326
- - قائمة الشاشات.
327
- - وظيفة كل شاشة.
328
- - الحقول الأساسية.
329
- - الأزرار والإجراءات.
330
- - الفلاتر.
331
- - الجداول.
332
- - التنبيهات.
333
- - ملاحظات التصميم وتجربة المستخدم.
334
-
335
- ### أهميته
336
- يمنع بناء واجهة غير مكتملة أو غير متوافقة مع العمليات والصلاحيات.
337
-
338
- ---
339
-
340
- ## CONTENT_REQUIREMENTS.md — (مشروط — SCP-2026-08-15-016)
341
-
342
- ### الغرض
343
- تثبيت **رسائل المحتوى** لكل شاشة/صفحة لمشاريع المحتوى (Website/Landing/Content-heavy) — ماذا يريد المالك أن يظهر فعلياً داخل كل صفحة وقسم، بمعزل عن التصميم البصري.
344
-
345
- ### متى يُنشأ؟
346
- - **مشروط:** فقط عندما يكون Content Type = `User-Facing Content` / `Mixed` (من Discovery — Domain 4).
347
- - **التوقيت:** بعد `07_SCREENS_AND_UI_STRUCTURE.md` وقبل التصميم النهائي (28) وقبل Phase 5.
348
- - التطبيقات القياسية (Application Data فقط) **لا** تحتاجه — يكفي قسم خفيف داخل 07 إن لزم.
349
-
350
- ### ماذا يحتوي؟
351
- لكل شاشة/صفحة (S1..Sn + المشتركة):
352
- - Purpose (الغرض)
353
- - Audience (الجمهور)
354
- - Primary Message (الرسالة الأساسية)
355
- - Required Content (المحتوى المطلوب ظهوره)
356
- - CTA (الدعوة للإجراء)
357
- - Forbidden (الممنوع/الحساس — من الخطوط الحمراء D-015)
358
- - Claims المسموحة (أرقام موثقة في مصادر الحقيقة فقط)
359
- - Content Priorities (الأولويات بين الرسائل)
360
- - Content Owner (المالك/المصدر)
361
-
362
- ### أهميته
363
- يمنع المنظومة من افتراض المحتوى بدل المالك، ويعزل أي اعتراض على محتوى في شاشة واحدة بدل إعادة تصميم التطبيق كاملاً.
364
-
365
- ### القالب
366
- `tera-system/runtime/TERA_RUNTIME_TEMPLATES_PREPARATION.md` — §41
367
-
368
- ---
369
-
370
- ## 08_TECHNICAL_ARCHITECTURE.md
371
-
372
- ### الغرض
373
- تثبيت القرارات التقنية الأساسية للمشروع.
374
-
375
- ### ماذا يحتوي؟
376
- - لغة البرمجة.
377
- - Framework.
378
- - قاعدة البيانات.
379
- - نمط التطبيق: Web، API، Mobile، Desktop.
380
- - طريقة المصادقة.
381
- - بنية المشروع.
382
- - طريقة التعامل مع الملفات.
383
- - قواعد الأمان الأساسية.
384
- - بيئة التشغيل والنشر المتوقعة.
385
-
386
- ### أهميته
387
- يمنع تضارب القرارات التقنية بين العملاء الفرعيين أثناء التنفيذ.
388
-
389
- ---
390
-
391
- ## 09_IMPLEMENTATION_PLAN.md
392
-
393
- ### الغرض
394
- تحويل التحليل إلى خطة تنفيذ مبدئية ضمن ملفات التحضير.
395
-
396
- ### ماذا يحتوي؟
397
- - مراحل التنفيذ.
398
- - ترتيب بناء الموديولات.
399
- - المهام الرئيسية.
400
- - الاعتماديات بين المهام.
401
- - النسخة الأولى MVP.
402
- - ما يتم تنفيذه أولًا.
403
- - ما يتم تأجيله.
404
- - توزيع مبدئي للمهام على العملاء الفرعيين.
405
-
406
- ### أهميته
407
- يمثل جسرًا بين التحضير والتخطيط التنفيذي، لكنه **ليس** خطة التنفيذ الرسمية النهائية.
408
-
409
- الخطط الرسمية للتنفيذ بعد اعتماد التحضير تكون داخل `project-control/`:
410
-
411
- ```text
412
- PROJECT_MASTER_PLAN.md
413
- PROJECT_DETAILED_EXECUTION_PLAN.md
414
- EXECUTION_BATCH_PLAN.md
415
- ```
416
-
417
- ---
418
-
419
- ## 10_TESTING_AND_ACCEPTANCE.md
420
-
421
- ### الغرض
422
- تحديد طريقة اختبار التطبيق ومعايير قبوله.
423
-
424
- ### ماذا يحتوي؟
425
- - سيناريوهات الاختبار الأساسية.
426
- - اختبارات الصلاحيات.
427
- - اختبارات الإدخال.
428
- - اختبارات الحالات Workflows.
429
- - اختبارات التقارير.
430
- - اختبارات الأخطاء والاستثناءات.
431
- - معايير قبول كل موديول.
432
- - الأخطاء التي لا يسمح بتمريرها.
433
-
434
- ### أهميته
435
- يقلل الأخطاء قبل التسليم، ويحول الاختبار من عمل عشوائي إلى عملية منظمة.
436
-
437
- ---
438
-
439
- ## 11_DELIVERY_AND_HANDOVER.md
440
-
441
- ### الغرض
442
- تجهيز التسليم النهائي للتطبيق.
443
-
444
- ### ماذا يحتوي؟
445
- - قائمة ما سيتم تسليمه.
446
- - خطوات التشغيل.
447
- - بيانات الدخول التجريبية إن وجدت.
448
- - ملاحظات النشر.
449
- - قائمة الفحوصات النهائية.
450
- - الملفات المطلوبة للتسليم.
451
- - ملاحظات الدعم أو الصيانة.
452
-
453
- ### أهميته
454
- يضمن أن نهاية المشروع واضحة، وأن التسليم لا يعتمد على ذاكرة المطور أو العميل تيرا.
455
-
456
- ---
457
-
458
- # ثانيًا: الملفات المشروطة Conditional Files
459
-
460
- هذه الملفات لا تُنشأ دائمًا، لكنها تصبح ضرورية إذا كانت طبيعة التطبيق تتطلبها.
461
-
462
- ---
463
-
464
- ## 12_BUSINESS_RULES.md
465
-
466
- ### الغرض
467
- توثيق قواعد العمل التي تتحكم في سلوك التطبيق.
468
-
469
- ### ماذا يحتوي؟
470
- - شروط السماح أو المنع.
471
- - قواعد الاعتماد.
472
- - قواعد التعديل والحذف.
473
- - قواعد الاحتساب.
474
- - قواعد تغيير الحالة.
475
- - قواعد التحقق المرتبطة بالعمل.
476
-
477
- ### أهميته
478
- ضروري في التطبيقات التي تحتوي على منطق عمل مهم مثل ERP، محاسبة، مخزون، موارد بشرية، أنظمة مالية، أو أنظمة موافقات.
479
-
480
- ---
481
-
482
- ## 13_REPORTS_AND_DASHBOARDS.md
483
-
484
- ### الغرض
485
- تحديد التقارير ولوحات المعلومات المطلوبة.
486
-
487
- ### ماذا يحتوي؟
488
- - أسماء التقارير.
489
- - الغرض من كل تقرير.
490
- - الفلاتر.
491
- - الأعمدة.
492
- - التجميعات.
493
- - مؤشرات Dashboard.
494
- - صلاحيات عرض التقارير.
495
- - خيارات التصدير Excel / PDF.
496
-
497
- ### أهميته
498
- مهم عندما تكون التقارير جزءًا أساسيًا من قيمة التطبيق، ولا يكفي دمجها داخل ملف الشاشات.
499
-
500
- ---
501
-
502
- ## 14_INTEGRATIONS_AND_EXTERNAL_SERVICES.md
503
-
504
- ### الغرض
505
- توثيق أي ربط مع أنظمة أو خدمات خارجية.
506
-
507
- ### ماذا يحتوي؟
508
- - أسماء الخدمات الخارجية.
509
- - نوع التكامل.
510
- - اتجاه البيانات: إرسال، استقبال، أو الاثنين.
511
- - بيانات الربط المطلوبة.
512
- - نقاط API إن وجدت.
513
- - شروط الفشل وإعادة المحاولة.
514
- - حدود الخدمة الخارجية.
515
-
516
- ### أهميته
517
- ضروري عند وجود تكامل مع دفع إلكتروني، رسائل، بريد، WhatsApp، ERP آخر، نظام محاسبي، Google Services، أو AI APIs.
518
-
519
- ---
520
-
521
- ## 15_SECURITY_AND_ACCESS_CONTROL.md
522
-
523
- ### الغرض
524
- تحديد الجوانب الأمنية التقنية للتطبيق.
525
-
526
- ### ماذا يحتوي؟
527
- - Authentication.
528
- - Authorization.
529
- - إدارة الجلسات.
530
- - سياسة كلمات المرور.
531
- - حماية البيانات الحساسة.
532
- - منع الوصول غير المصرح.
533
- - صلاحيات API.
534
- - قواعد الوصول حسب الشركة أو الفرع أو القسم.
535
-
536
- ### أهميته
537
- ضروري في التطبيقات متعددة المستخدمين، الأنظمة المالية، SaaS، ERP، أو أي تطبيق يحتوي على بيانات حساسة.
538
-
539
- ---
540
-
541
- ## 16_AUDIT_LOG_AND_ACTIVITY_TRACKING.md
542
-
543
- ### الغرض
544
- تحديد ما يجب تتبعه من أنشطة المستخدمين داخل النظام.
545
-
546
- ### ماذا يحتوي؟
547
- - العمليات التي يجب تسجيلها.
548
- - المستخدم المنفذ.
549
- - التاريخ والوقت.
550
- - نوع العملية.
551
- - البيانات قبل وبعد التعديل.
552
- - عمليات الدخول والخروج.
553
- - الأحداث الحساسة.
554
-
555
- ### أهميته
556
- ضروري عند وجود تعديلات مهمة، حذف، اعتماد، حركات مالية، صلاحيات، أو مسؤولية تشغيلية.
557
-
558
- ---
559
-
560
- ## 17_NOTIFICATIONS_AND_ALERTS.md
561
-
562
- ### الغرض
563
- تنظيم التنبيهات والإشعارات داخل التطبيق.
564
-
565
- ### ماذا يحتوي؟
566
- - أنواع التنبيهات.
567
- - سبب إرسال التنبيه.
568
- - المستلمون.
569
- - طريقة الإرسال: داخل النظام، بريد، SMS، WhatsApp.
570
- - توقيت التنبيه.
571
- - نصوص التنبيهات.
572
- - حالات إيقاف أو تجاهل التنبيه.
573
-
574
- ### أهميته
575
- مهم في تطبيقات الموافقات، التحصيل، المواعيد، المهام، المتابعة، وERP.
576
-
577
- ---
578
-
579
- ## 18_IMPORT_EXPORT_DATA.md
580
-
581
- ### الغرض
582
- تنظيم استيراد وتصدير البيانات.
583
-
584
- ### ماذا يحتوي؟
585
- - أنواع الملفات المدعومة.
586
- - Excel import.
587
- - Excel export.
588
- - CSV.
589
- - PDF export.
590
- - قوالب الاستيراد.
591
- - قواعد التحقق من البيانات.
592
- - رسائل أخطاء الاستيراد.
593
- - طريقة معالجة البيانات المكررة أو غير الصحيحة.
594
-
595
- ### أهميته
596
- ضروري في التطبيقات الإدارية والتجارية التي تعتمد على إدخال أو إخراج بيانات بكميات كبيرة.
597
-
598
- ---
599
-
600
- ## 19_DATABASE_DESIGN.md
601
-
602
- ### الغرض
603
- تحويل تصور البيانات إلى تصميم فعلي لقاعدة البيانات.
604
-
605
- ### ماذا يحتوي؟
606
- - الجداول النهائية.
607
- - الحقول النهائية.
608
- - المفاتيح الأساسية.
609
- - المفاتيح الأجنبية.
610
- - العلاقات.
611
- - Indexes.
612
- - Constraints.
613
- - Naming conventions.
614
- - Seed data.
615
-
616
- ### أهميته
617
- ضروري في المشاريع المتوسطة والكبيرة، خصوصًا عندما يكون نموذج البيانات معقدًا أو حساسًا.
618
-
619
- ---
620
-
621
- ## 20_API_CONTRACTS.md
622
-
623
- ### الغرض
624
- توثيق عقود API بين الواجهة والخلفية أو بين النظام والأنظمة الخارجية.
625
-
626
- ### ماذا يحتوي؟
627
- - Endpoints.
628
- - Request structure.
629
- - Response structure.
630
- - Validation rules.
631
- - Error codes.
632
- - Status codes.
633
- - Authentication headers.
634
- - Pagination.
635
- - Filtering and sorting.
636
-
637
- ### أهميته
638
- ضروري عند وجود Frontend وBackend منفصلين، تطبيق موبايل، تكامل خارجي، أو Microservices.
639
-
640
- ---
641
-
642
- ## 21_VALIDATION_AND_ERROR_HANDLING.md
643
-
644
- ### الغرض
645
- تحديد قواعد التحقق ورسائل الأخطاء.
646
-
647
- ### ماذا يحتوي؟
648
- - الحقول المطلوبة.
649
- - أنواع البيانات.
650
- - الحدود الدنيا والعليا.
651
- - قواعد الإدخال.
652
- - رسائل الخطأ.
653
- - الأخطاء المتوقعة.
654
- - طريقة التعامل مع الأخطاء الفنية.
655
- - قواعد منع البيانات غير الصحيحة.
656
-
657
- ### أهميته
658
- مهم جدًا في التطبيقات التي تحتوي على نماذج إدخال كثيرة أو بيانات حساسة.
659
-
660
- ---
661
-
662
- ## 22_DEPLOYMENT_AND_ENVIRONMENTS.md
663
-
664
- ### الغرض
665
- تنظيم بيئات التشغيل والنشر.
666
-
667
- ### ماذا يحتوي؟
668
- - بيئة التطوير Development.
669
- - بيئة الاختبار Testing.
670
- - بيئة التجربة Staging.
671
- - بيئة الإنتاج Production.
672
- - متغيرات البيئة.
673
- - إعدادات السيرفر.
674
- - Domain و SSL.
675
- - خطوات النشر.
676
- - ملاحظات التحديثات.
677
-
678
- ### أهميته
679
- ضروري لأي تطبيق سيتم تشغيله فعليًا على سيرفر أو Cloud أو لدى عميل.
680
-
681
- ---
682
-
683
- ## 23_BACKUP_AND_RECOVERY.md
684
-
685
- ### الغرض
686
- تحديد سياسة النسخ الاحتياطي والاسترجاع.
687
-
688
- ### ماذا يحتوي؟
689
- - ما الذي سيتم نسخه.
690
- - تكرار النسخ الاحتياطي.
691
- - مكان حفظ النسخ.
692
- - مدة الاحتفاظ.
693
- - طريقة الاسترجاع.
694
- - اختبار الاسترجاع.
695
- - مسؤولية النسخ الاحتياطي.
696
-
697
- ### أهميته
698
- ضروري في أي تطبيق يحتوي على بيانات مهمة. تجاهله في الأنظمة الإنتاجية خطر واضح.
699
-
700
- ---
701
-
702
- ## 24_CLIENT_REVIEW_NOTES.md
703
-
704
- ### الغرض
705
- تجميع ملاحظات العميل وقرارات المراجعة.
706
-
707
- ### ماذا يحتوي؟
708
- - ملاحظات العميل.
709
- - قرارات الاجتماعات.
710
- - النقاط المقبولة.
711
- - النقاط المرفوضة.
712
- - النقاط المؤجلة.
713
- - الأسئلة المفتوحة.
714
- - تاريخ كل مراجعة.
715
-
716
- ### أهميته
717
- مهم في المشاريع التي يوجد فيها عميل خارجي أو مراجعات متكررة، ويمنع الخلافات وسوء الفهم.
718
-
719
- ---
720
-
721
- ## 25_CHANGE_REQUESTS.md
722
-
723
- ### الغرض
724
- إدارة التعديلات التي تظهر بعد تثبيت النطاق.
725
-
726
- ### ماذا يحتوي؟
727
- - وصف طلب التغيير.
728
- - سبب الطلب.
729
- - أثره على الوقت.
730
- - أثره على التكلفة.
731
- - أثره على النطاق.
732
- - أثره على التصميم أو قاعدة البيانات.
733
- - قرار القبول أو الرفض أو التأجيل.
734
-
735
- ### أهميته
736
- ضروري في العمل التجاري. بدونه يتحول المشروع إلى تعديلات مفتوحة وغير مضبوطة.
737
-
738
- ---
739
-
740
- # ثالثًا: الملفات الثانوية Supporting Files
741
-
742
- هذه الملفات ليست أساسية في البداية، لكنها مفيدة في المشاريع الأكبر أو الأكثر تنظيمًا.
743
-
744
- ---
745
-
746
- ## 26_RISKS_AND_ASSUMPTIONS.md
747
-
748
- ### الغرض
749
- توثيق المخاطر والافتراضات المهمة.
750
-
751
- ### ماذا يحتوي؟
752
- - المخاطر المتوقعة.
753
- - أثر كل خطر.
754
- - احتمالية حدوثه.
755
- - طريقة التعامل معه.
756
- - الافتراضات التي بُني عليها التحليل.
757
- - الأمور التي تحتاج تأكيدًا لاحقًا.
758
-
759
- ### أهميته
760
- مفيد في المشاريع الكبيرة أو الغامضة، لكنه غير ضروري كمستند مستقل في التطبيقات الصغيرة.
761
-
762
- ---
763
-
764
- ## 27_DECISIONS_LOG.md
765
-
766
- ### الغرض
767
- توثيق القرارات المهمة أثناء المشروع.
768
-
769
- ### ماذا يحتوي؟
770
- - القرار.
771
- - سبب القرار.
772
- - تاريخ القرار.
773
- - من طلبه أو وافق عليه.
774
- - البدائل التي تم رفضها.
775
- - أثر القرار على المشروع.
776
-
777
- ### أهميته
778
- مهم عند تعدد الأطراف أو العملاء الفرعيين، ويمنع الرجوع المتكرر لنفس النقاش.
779
-
780
- ---
781
-
782
- ## 28_UI_UX_GUIDELINES.md
783
-
784
- ### الغرض
785
- تحديد القواعد التنفيذية النهائية للتصميم والستايل البصري قبل أي تخطيط أو تنفيذ Frontend.
786
-
787
- هذا الملف ليس مطلوبًا في مشاريع API/backend فقط، لكنه يصبح مطلوبًا عند وجود أي واجهة ذات ستايل بصري، أو عند استخدام Internal Kit، أو `getdesign.md`، أو صور/موقع/Figma/CSS/Design Tokens من العميل.
788
-
789
- ### ماذا يحتوي؟
790
- - Design Source Decision: `INTERNAL_TERA_KIT` / `GETDESIGN_MD` / `FIGMA_DESIGN_FILE` / `USER_PROVIDED_REFERENCE` / `EXTERNAL_URL_ANALYSIS` / `HYBRID` / `NO_UI` / `N/A`.
791
- - Approved Design Direction.
792
- - Raw Design Sources داخل `project-preparation/design-source/`.
793
- - Client Branding Overrides.
794
- - Design Tokens.
795
- - Layout System.
796
- - Component Rules.
797
- - RTL/LTR Rules.
798
- - Responsive Rules.
799
- - Accessibility Rules.
800
- - Motion Rules.
801
- - Forbidden Styling.
802
- - Engineering Implementation Instructions.
803
- - UI Acceptance Checklist.
804
- - Open Design Gaps.
805
-
806
- ### متى يُنشأ؟
807
-
808
- ينشأ هذا الملف إذا:
809
-
810
- - أعطى المستخدم ألوانًا أو تصميمًا أو هوية بصرية.
811
- - أعطى المستخدم CSS أو قالبًا أو Design Tokens.
812
- - أعطى المستخدم `getdesign.md` أو مرجعًا بصريًا خارجيًا.
813
- - احتاج التطبيق إلى واجهة موحدة قبل التنفيذ.
814
- - كان هناك أكثر من عميل أو دفعة تنفيذ ستعمل على الواجهة.
815
- - استخدم Tera أي Internal Kit من `tera-system/design-system/kits/`.
816
-
817
- ### أهميته
818
- يمنع الستايل العشوائي، ويجعل التنفيذ ملتزمًا بمصدر تصميم واضح.
819
-
820
- لا يجوز لعميل التنفيذ اختراع ألوان أو spacing أو typography أو component styles أو layout patterns. إذا نقصت قاعدة تصميم، يرفع `Design Gap` بدل التخمين.
821
-
822
- المرجع النظامي:
823
-
824
- ```text
825
- tera-system/design-system/
826
- ```
827
-
828
- ---
829
-
830
- ## 29_SAMPLE_DATA_AND_SEEDING.md
831
-
832
- ### الغرض
833
- تجهيز بيانات تجريبية تساعد في التطوير والاختبار.
834
-
835
- ### ماذا يحتوي؟
836
- - بيانات مستخدمين تجريبية.
837
- - بيانات مرجعية.
838
- - أمثلة معاملات.
839
- - حالات اختبار واقعية.
840
- - بيانات أولية Seed Data.
841
-
842
- ### أهميته
843
- مفيد جدًا أثناء الاختبار والعرض التجريبي، خاصة في ERP والأنظمة الإدارية.
844
-
845
- ---
846
-
847
- ## 30_USER_MANUAL_DRAFT.md
848
-
849
- ### الغرض
850
- تجهيز مسودة دليل استخدام للتطبيق.
851
-
852
- ### ماذا يحتوي؟
853
- - شرح الشاشات.
854
- - خطوات تنفيذ العمليات.
855
- - شرح الصلاحيات العامة.
856
- - ملاحظات الاستخدام.
857
- - الأسئلة المتكررة.
858
-
859
- ### أهميته
860
- لا يُنشأ مبكرًا غالبًا، لكنه مهم قبل التسليم أو عند تدريب المستخدمين.
861
-
862
- ---
863
-
864
- ## 31_MAINTENANCE_AND_SUPPORT.md
865
-
866
- ### الغرض
867
- تحديد طريقة دعم التطبيق بعد التسليم.
868
-
869
- ### ماذا يحتوي؟
870
- - أنواع الدعم.
871
- - مدة الدعم.
872
- - ما يشمله الدعم.
873
- - ما لا يشمله الدعم.
874
- - طريقة استقبال المشاكل.
875
- - أولوية الأخطاء.
876
- - آلية التحديثات.
877
-
878
- ### أهميته
879
- مهم في المشاريع التجارية، ويمنع الخلط بين الدعم المجاني والتطوير الجديد.
880
-
881
- ---
882
-
883
- ## 32_PERFORMANCE_REQUIREMENTS.md
884
-
885
- ### الغرض
886
- تحديد متطلبات الأداء المتوقعة.
887
-
888
- ### ماذا يحتوي؟
889
- - عدد المستخدمين المتوقع.
890
- - حجم البيانات المتوقع.
891
- - سرعة تحميل الشاشات.
892
- - سرعة التقارير.
893
- - العمليات الثقيلة.
894
- - حدود الأداء المقبولة.
895
-
896
- ### أهميته
897
- مفيد في الأنظمة الكبيرة أو التي تحتوي على تقارير وبيانات كثيرة.
898
-
899
- ---
900
-
901
- ## 33_MULTI_TENANCY_OR_COMPANY_STRUCTURE.md
902
-
903
- ### الغرض
904
- تحديد طريقة دعم أكثر من شركة أو فرع أو عميل داخل نفس النظام.
905
-
906
- ### ماذا يحتوي؟
907
- - هل النظام لشركة واحدة أم عدة شركات؟
908
- - الفروع.
909
- - الأقسام.
910
- - عزل البيانات.
911
- - صلاحيات الوصول حسب الشركة أو الفرع.
912
- - إعدادات كل شركة.
913
-
914
- ### أهميته
915
- ضروري في SaaS وERP والأنظمة متعددة الشركات أو الفروع.
916
-
917
- ---
918
-
919
- ## 34_COMPLIANCE_AND_LEGAL_NOTES.md
920
-
921
- ### الغرض
922
- توثيق أي متطلبات قانونية أو تنظيمية.
923
-
924
- ### ماذا يحتوي؟
925
- - شروط الخصوصية.
926
- - حماية البيانات.
927
- - المتطلبات القانونية الخاصة بالمجال.
928
- - الفواتير أو الضرائب إن وجدت.
929
- - الاحتفاظ بالسجلات.
930
- - التنبيهات القانونية المطلوبة.
931
-
932
- ### أهميته
933
- مهم في التطبيقات المالية، الصحية، التعليمية، الحكومية، أو التي تحفظ بيانات حساسة.
934
-
935
- ---
936
-
937
- ## 35_ROADMAP_AND_FUTURE_PHASES.md
938
-
939
- ### الغرض
940
- تحديد ما بعد النسخة الأولى.
941
-
942
- ### ماذا يحتوي؟
943
- - ميزات مستقبلية.
944
- - مراحل لاحقة.
945
- - تحسينات مؤجلة.
946
- - توسعات محتملة.
947
- - أولويات مستقبلية.
948
-
949
- ### أهميته
950
- يساعد على ضبط التوقعات ومنع إدخال كل الأفكار في النسخة الأولى.
951
-
952
- ---
953
-
954
- # ملخص القرار العملي للعميل تيرا
955
-
956
- ## عند بدء مشروع صغير
957
- ينشئ غالبًا:
958
-
959
- ```text
960
- 00_PROJECT_INPUTS.md
961
- 01_PROJECT_BRIEF.md
962
- 02_SCOPE_AND_BOUNDARIES.md
963
- 03_MODULES_AND_FEATURES.md
964
- 04_USERS_ROLES_PERMISSIONS.md
965
- 05_BUSINESS_WORKFLOWS.md
966
- 06_DATA_MODEL_PREPARATION.md
967
- 07_SCREENS_AND_UI_STRUCTURE.md
968
- 08_TECHNICAL_ARCHITECTURE.md
969
- 09_IMPLEMENTATION_PLAN.md
970
- 10_TESTING_AND_ACCEPTANCE.md
971
- 11_DELIVERY_AND_HANDOVER.md
972
- ```
973
-
974
- وقد يضيف:
975
-
976
- ```text
977
- 12_BUSINESS_RULES.md
978
- 13_REPORTS_AND_DASHBOARDS.md
979
- 22_DEPLOYMENT_AND_ENVIRONMENTS.md
980
- ```
981
-
982
- ---
983
-
984
- ## عند بدء مشروع متوسط
985
- ينشئ غالبًا الملفات الرئيسية، ويضيف حسب الحاجة:
986
-
987
- ```text
988
- 12_BUSINESS_RULES.md
989
- 13_REPORTS_AND_DASHBOARDS.md
990
- 14_INTEGRATIONS_AND_EXTERNAL_SERVICES.md
991
- 15_SECURITY_AND_ACCESS_CONTROL.md
992
- 16_AUDIT_LOG_AND_ACTIVITY_TRACKING.md
993
- 17_NOTIFICATIONS_AND_ALERTS.md
994
- 18_IMPORT_EXPORT_DATA.md
995
- 21_VALIDATION_AND_ERROR_HANDLING.md
996
- 22_DEPLOYMENT_AND_ENVIRONMENTS.md
997
- 23_BACKUP_AND_RECOVERY.md
998
- 24_CLIENT_REVIEW_NOTES.md
999
- 25_CHANGE_REQUESTS.md
1000
- ```
1001
-
1002
- ---
1003
-
1004
- ## عند بدء نظام كبير أو ERP أو SaaS
1005
- يفحص الحاجة إلى جميع الملفات من:
1006
-
1007
- ```text
1008
- 00_PROJECT_INPUTS.md
1009
- إلى
1010
- 35_ROADMAP_AND_FUTURE_PHASES.md
1011
- ```
1012
-
1013
- لكن لا ينشئ أي ملف إلا إذا كان يخدم التحليل أو التنفيذ أو الاختبار أو التسليم.
1014
-
1015
- ---
1016
-
1017
- # قاعدة منع التضخيم
1018
-
1019
- على العميل تيرا الالتزام بالقاعدة التالية:
1020
-
1021
- > لا يتم إنشاء أي ملف فقط لأنه موجود في القائمة.
1022
- > يتم إنشاء الملف فقط إذا كان غيابه سيؤدي إلى غموض، خطأ، إعادة عمل، ضعف أمان، سوء فهم، أو مشكلة في التسليم.
1023
-
1024
- ---
1025
-
1026
- # الصيغة النهائية لدور العميل تيرا في هذه المرحلة
1027
-
1028
- هذا الملف هو **كتالوج مرجعي** لملفات التحضير. لا يُنشئ تيرا الملفات مباشرة من هنا، بل:
1029
-
1030
- انظر `.opencode/agents/tera.md` القسم 11 للتسلسل العام للمراحل (7 مراحل).
1031
-
1032
- | المرحلة | ماذا يفعل تيرا |
1033
- |---|---|
1034
- | **2. Project Decision Formation** | يصنف حجم المشروع ويحدد الملفات المطلوبة مبدئياً في `TERA_PROJECT_DECISION.md` القسم 8 |
1035
- | **بين TCEA و Phase 2 عند الحاجة** | يقرأ Tera الـ `APPLICATION_BLUEPRINT.md` فقط إذا كانت حالته `approved_for_preparation`، ولا يعامل `draft-seeds/` كـ baseline |
1036
- | **3. Project Preparation Planning** | يقرأ الكتالوج، يصنف كل ملف (Required / Conditional / Deferred / Not Required)، يحدد الترتيب والمسؤول، وينتج `project-control/PREPARATION_PLAN.md` |
1037
- | **4. Sub-Agent Generation & Preparation Delegation** | يولد العملاء الفرعيين المطلوبين ويفوّض إنشاء ملفات التحضير المخطط لها فقط |
1038
- | **5. Execution Planning** | يحوّل ملفات التحضير المعتمدة إلى خطة تنفيذ رئيسية وتفصيلية ودفعات TASK-ID مع Pre-Execution Gate |
1039
- | **6. Implementation** | ينفذ TASK-ID المعتمدة، يستلم Handback، يطبق Post-Execution Review، ثم يقبل أو يطلب إصلاح |
1040
- | **7. Delivery, Handover & Closure** | يتحقق من جاهزية التسليم، القبول النهائي، Release Notes، Handover عند الحاجة، وتقرير إغلاق المشروع |
1041
-
1042
- **قاعدة منع التضخيم:**
1043
-
1044
- > لا يتم إنشاء أي ملف فقط لأنه موجود في القائمة.
1045
- > يتم إنشاء الملف فقط إذا كان غيابه سيؤدي إلى غموض، خطأ، إعادة عمل، ضعف أمان، سوء فهم، أو مشكلة في التسليم.
1
+ # Tera Agent — Project Preparation Files Guide
2
+
3
+ ## الهدف من هذا الملف
4
+
5
+ هذا الملف يحدد الملفات التي يمكن أن يجهزها **العميل تيرا** عند بدء أي مشروع جديد، بعد استلام:
6
+
7
+ 1. ملف فكرة التطبيق العامة.
8
+ 2. ملف المعلومات التقنية المتاحة.
9
+ 3. أي مرفقات داعمة مثل صور، ألوان، أمثلة، ملفات Excel، أو مراجع.
10
+
11
+ ليس المطلوب أن ينشئ العميل تيرا جميع الملفات دائمًا.
12
+ المطلوب أن يقرر، حسب طبيعة التطبيق، أي الملفات ضرورية للتنفيذ المنظم والدقيق.
13
+
14
+ ---
15
+
16
+ # قاعدة العمل العامة
17
+
18
+ يقسم العميل تيرا الملفات إلى ثلاث فئات:
19
+
20
+ | الفئة | المعنى | متى تُستخدم؟ |
21
+ |---|---|---|
22
+ | ملفات رئيسية | ملفات أساسية لأي مشروع تقريبًا | تُنشأ غالبًا في كل مشروع |
23
+ | ملفات مشروطة | ملفات مهمة حسب طبيعة التطبيق | تُنشأ إذا وُجد سبب واضح لها |
24
+ | ملفات ثانوية | ملفات داعمة أو تنظيمية | تُنشأ في المشاريع المتوسطة والكبيرة أو عند الحاجة |
25
+
26
+ ---
27
+
28
+ ## Relationship Between project-inputs and project-preparation
29
+
30
+ - `project-inputs/` contains the user's initial raw project inputs.
31
+ - `project-preparation/` contains the formal preparation files produced by Tera after understanding those inputs.
32
+ - `00_PROJECT_INPUTS.md` does not replace `project-inputs/`; it summarizes and normalizes them.
33
+ - ApplicationBlueprintAgent (مُهندس — SCP-2026-07-28-118) must not start formal preparation files before minimum `Project Intake Gate` completion.
34
+ - `clients/` contains official client-facing records, approval packages, assets, communication summaries, and delivery material for external client projects.
35
+ - Client-facing approval files must not be mixed with internal `project-preparation/` files.
36
+
37
+ External client project structure:
38
+
39
+ ```text
40
+ clients/
41
+ CLIENT-[client-name-or-id]/
42
+ CLIENT_PROFILE.md
43
+ CONTACTS.md
44
+ applications/
45
+ APP-[app-name-or-id]/
46
+ client-approval/
47
+ client-assets/
48
+ client-communications/
49
+ delivery/
50
+ ```
51
+
52
+ ---
53
+
54
+ # Client-Facing Files
55
+
56
+ هذه الملفات ليست بديلة عن ملفات التحضير الداخلية، بل هي مخرجات موجهة للعميل للمراجعة والاعتماد قبل التنفيذ.
57
+
58
+ الموقع الرسمي:
59
+
60
+ ```text
61
+ clients/CLIENT-[client-name-or-id]/applications/APP-[app-name-or-id]/client-approval/
62
+ ```
63
+
64
+ ## Mandatory Client Approval Package
65
+
66
+ في مشاريع العملاء الخارجيين، حزمة اعتماد العميل إلزامية قبل التنفيذ.
67
+
68
+ الملفات الافتراضية، بوابات الاعتماد، وقواعد الاستثناء المحدود موثقة رسميًا في:
69
+
70
+ ```text
71
+ tera-system/TeraClientPolicy.md (Section 7)
72
+ tera-system/runtime/TERA_RUNTIME_TEMPLATES.md
73
+ ```
74
+
75
+ قواعد إلزامية:
76
+
77
+ - الوثائق الموجهة للعميل تكتب بالعربية افتراضيًا.
78
+ - لا تذكر تفاصيل Tera الداخلية أو العملاء الفرعيين أو سياسات التشغيل.
79
+ - لا يدخل المشروع Build Mode قبل اعتماد النطاق وحزمة العميل.
80
+ - أي ملف غير مناسب لمشروع صغير يجب توثيق سبب عدم استخدامه في سجل اعتماد العميل.
81
+
82
+ ---
83
+
84
+ # Blueprinting Artifacts (Pre-Preparation, Non-Baseline)
85
+
86
+ هذه المواد تُنشأ فقط إذا فُعّل `ApplicationBlueprintAgent` (مُهندس) بعد handoff عميل مؤكد. **SCP-2026-07-28-118: مُهندس يملك الآن phases 1–4 كاملة — من blueprint حتى baseline.**
87
+
88
+ ليست بديلة عن ملفات التحضير الرسمية، ولا تُستهلك downstream مباشرة.
89
+
90
+ ## APPLICATION_BLUEPRINT.md
91
+
92
+ **الموقع الرسمي:**
93
+
94
+ ```text
95
+ project-preparation/APPLICATION_BLUEPRINT.md
96
+ ```
97
+
98
+ **الغرض:**
99
+ تحويل handoff المعتمد إلى blueprint داخلي عالي المستوى يساعد Tera لاحقاً في بدء التحضير الرسمي.
100
+
101
+ **قاعدة إلزامية:**
102
+
103
+ ```text
104
+ APPLICATION_BLUEPRINT.md starts as Draft.
105
+ It must not be used for formal preparation until status = approved_for_preparation.
106
+ ```
107
+
108
+ ## BLUEPRINT_OPEN_QUESTIONS.md
109
+
110
+ ملف اختياري لتجميع الأسئلة التي تمنع إكمال الـ blueprint أو تحتاج قراراً قبل التحضير الرسمي.
111
+
112
+ ## BLUEPRINT_DECISION_CANDIDATES.md
113
+
114
+ ملف اختياري لتوثيق المرشحات والتوصيات (مثل التقنية، الاستضافة، قاعدة البيانات) بصيغة candidates فقط، لا كقرارات نهائية.
115
+
116
+ ## draft-seeds/
117
+
118
+ ```text
119
+ project-preparation/draft-seeds/
120
+ ```
121
+
122
+ يحوي Draft Seeds فقط عند الحاجة وضمن الضوابط التالية:
123
+
124
+ - اختيارية وليست افتراضية
125
+ - مبررة بوضوح
126
+ - الحد الموصى به 3 ملفات فقط
127
+ - تجاوز 3 يحتاج موافقة صريحة
128
+ - كل ملف يجب أن يحمل: `Draft Seed` / `Not Baseline` / `Not approved for downstream execution`
129
+
130
+ لا تُعد Draft Seeds جزءاً من baseline التحضيري، ويجب إعادة إنتاج محتواها أو اعتماده رسمياً ضمن ملفات التحضير المعتادة قبل أي استهلاك downstream.
131
+
132
+ ---
133
+
134
+ # Project Control Files
135
+
136
+ هذه الملفات ليست ملفات تحليل أو تصميم للتطبيق.
137
+
138
+ هي سجلات إدارية لتتبع التنفيذ:
139
+
140
+ ```text
141
+ project-control/TASK_REGISTRY.md
142
+ project-control/PROJECT_ACTIVITY_LOG.md
143
+ project-control/ISSUES_AND_GAPS.md
144
+ project-control/DECISIONS_LOG.md
145
+ project-control/tasks/
146
+ ```
147
+
148
+ لا تُنشأ كبديل عن ملفات `project-preparation/`.
149
+
150
+ تستخدم عند بدء التنفيذ أو عند الحاجة إلى تتبع المهام والنتائج والمراجعات والفجوات والقرارات.
151
+
152
+ ---
153
+
154
+ # أولًا: الملفات الرئيسية Core Files
155
+
156
+ هذه الملفات تمثل الحد الأدنى المنظم لبدء أي تطبيق بشكل صحيح.
157
+
158
+ ---
159
+
160
+ ## PROJECT_RULES.md
161
+
162
+ ### الغرض
163
+ توثيق القواعد الخاصة بالمشروع الحالي بين صاحب المشروع وTera.
164
+
165
+ هذا الملف اختياري، لكنه يصبح ملزمًا عند وجوده.
166
+
167
+ ### ماذا يحتوي؟
168
+ - قيود تقنية خاصة بالمشروع.
169
+ - قيود تصميم أو هوية.
170
+ - قيود على المكتبات أو APIs.
171
+ - قواعد تشغيل محلي أو نشر.
172
+ - قواعد مستبعدة من النسخة الأولى.
173
+ - أي تعليمات يجب ألا تضيع داخل المحادثة.
174
+
175
+ ### متى يُنشأ؟
176
+ ينشأ إذا قدم صاحب المشروع قواعد خاصة أو قيودًا يريد إلزام Tera والعملاء الفرعيين بها.
177
+
178
+ ### أهميته
179
+ يمنع ضياع القواعد داخل المحادثة، ويجعلها جزءًا من التفويض والمراجعة.
180
+
181
+ ---
182
+
183
+ ## 00_PROJECT_INPUTS.md
184
+
185
+ ### الغرض
186
+ ملف منظم ينتجه Tera من:
187
+
188
+ - `project-inputs/01_APPLICATION_IDEA.md`
189
+ - `project-inputs/02_TECHNICAL_CONTEXT.md`
190
+
191
+ ويجمع فكرة التطبيق، والسياق التقني، والقيود الأولية في صيغة موحدة قبل بقية ملفات التحضير.
192
+
193
+ ### ماذا يحتوي؟
194
+ - اسم المشروع.
195
+ - وصف الفكرة العامة.
196
+ - ملفات الـ intake المستلمة.
197
+ - المعلومات التقنية المتوفرة.
198
+ - الصور أو المراجع أو الألوان إن وجدت.
199
+ - الافتراضات الأولية.
200
+ - المعلومات الناقصة.
201
+ - الأسئلة التي تحتاج توضيحًا لاحقًا.
202
+
203
+ ### أهميته
204
+ يمنع ضياع المعلومات، ويجعل بداية المشروع مبنية على مدخلات واضحة لا على ذاكرة أو فهم متفرق.
205
+
206
+ ---
207
+
208
+ ## 01_PROJECT_BRIEF.md
209
+
210
+ ### الغرض
211
+ تحويل فكرة التطبيق إلى ملخص تنفيذي واضح ومفهوم.
212
+
213
+ ### ماذا يحتوي؟
214
+ - ما هو التطبيق؟
215
+ - من المستخدمون المستهدفون؟
216
+ - ما المشكلة التي يحلها؟
217
+ - ما الهدف من التطبيق؟
218
+ - ما نطاق النسخة الأولى؟
219
+ - ما مؤشرات نجاح المشروع؟
220
+
221
+ ### أهميته
222
+ يمثل مرجع الفهم الرئيسي للمشروع، ويمنع اختلاف تفسير الفكرة بين العميل تيرا والعملاء الفرعيين والمطور.
223
+
224
+ ---
225
+
226
+ ## 02_SCOPE_AND_BOUNDARIES.md
227
+
228
+ ### الغرض
229
+ تحديد حدود المشروع بوضوح.
230
+
231
+ ### ماذا يحتوي؟
232
+ - ما هو داخل النطاق.
233
+ - ما هو خارج النطاق.
234
+ - الميزات المؤجلة.
235
+ - الأمور غير المطلوبة في النسخة الأولى.
236
+ - حدود التطبيق الوظيفية.
237
+ - حدود التطبيق التقنية.
238
+
239
+ ### أهميته
240
+ يحمي المشروع من التوسع العشوائي، ويمنع إدخال طلبات جديدة أثناء التنفيذ بدون قرار واضح.
241
+
242
+ ---
243
+
244
+ ## 03_MODULES_AND_FEATURES.md
245
+
246
+ ### الغرض
247
+ تقسيم التطبيق إلى موديولات وميزات واضحة.
248
+
249
+ ### ماذا يحتوي؟
250
+ - الموديولات الرئيسية.
251
+ - الميزات داخل كل موديول.
252
+ - أولوية كل ميزة: أساسي، مهم، لاحق.
253
+ - علاقة الموديولات ببعضها.
254
+ - ملاحظات خاصة بكل موديول.
255
+
256
+ ### أهميته
257
+ يساعد في تنظيم التحليل والتنفيذ، ويمنع التعامل مع التطبيق ككتلة واحدة غير واضحة.
258
+
259
+ ---
260
+
261
+ ## 04_USERS_ROLES_PERMISSIONS.md
262
+
263
+ ### الغرض
264
+ تحديد المستخدمين والأدوار والصلاحيات الوظيفية.
265
+
266
+ ### ماذا يحتوي؟
267
+ - أنواع المستخدمين.
268
+ - الأدوار Roles.
269
+ - صلاحيات كل دور.
270
+ - من يستطيع الإضافة.
271
+ - من يستطيع التعديل.
272
+ - من يستطيع الحذف.
273
+ - من يستطيع الاعتماد.
274
+ - من يستطيع العرض فقط.
275
+ - قواعد الوصول للبيانات.
276
+
277
+ ### أهميته
278
+ الصلاحيات تؤثر على الشاشات، العمليات، الأمان، التقارير، والاختبارات. تأخيرها يسبب إعادة عمل كبيرة.
279
+
280
+ ---
281
+
282
+ ## 05_BUSINESS_WORKFLOWS.md
283
+
284
+ ### الغرض
285
+ تحديد مسارات العمل الأساسية داخل التطبيق.
286
+
287
+ ### ماذا يحتوي؟
288
+ - دورة كل عملية رئيسية.
289
+ - الحالات Statuses.
290
+ - الانتقالات بين الحالات.
291
+ - من ينفذ كل خطوة.
292
+ - شروط الانتقال من حالة إلى أخرى.
293
+ - حالات الرفض أو الإلغاء.
294
+ - الاستثناءات المهمة.
295
+
296
+ ### أهميته
297
+ يضمن أن التطبيق يعكس دورة العمل الحقيقية، وليس مجرد شاشات إدخال وعرض.
298
+
299
+ ---
300
+
301
+ ## 06_DATA_MODEL_PREPARATION.md
302
+
303
+ ### الغرض
304
+ تجهيز تصور أولي للبيانات قبل تصميم قاعدة البيانات النهائي.
305
+
306
+ ### ماذا يحتوي؟
307
+ - الكيانات الأساسية.
308
+ - الجداول المتوقعة مبدئيًا.
309
+ - أهم الحقول.
310
+ - العلاقات بين الكيانات.
311
+ - البيانات المرجعية.
312
+ - القيود المهمة.
313
+ - ملاحظات حول البيانات الحساسة أو المتكررة.
314
+
315
+ ### أهميته
316
+ يمنع العشوائية في بناء قاعدة البيانات، ويكشف مبكرًا العلاقات والبيانات الناقصة.
317
+
318
+ ---
319
+
320
+ ## 07_SCREENS_AND_UI_STRUCTURE.md
321
+
322
+ ### الغرض
323
+ تحديد الشاشات المطلوبة وهيكل الواجهة.
324
+
325
+ ### ماذا يحتوي؟
326
+ - قائمة الشاشات.
327
+ - وظيفة كل شاشة.
328
+ - الحقول الأساسية.
329
+ - الأزرار والإجراءات.
330
+ - الفلاتر.
331
+ - الجداول.
332
+ - التنبيهات.
333
+ - ملاحظات التصميم وتجربة المستخدم.
334
+
335
+ ### أهميته
336
+ يمنع بناء واجهة غير مكتملة أو غير متوافقة مع العمليات والصلاحيات.
337
+
338
+ ---
339
+
340
+ ## CONTENT_REQUIREMENTS.md — (مشروط — SCP-2026-08-15-016)
341
+
342
+ ### الغرض
343
+ تثبيت **رسائل المحتوى** لكل شاشة/صفحة لمشاريع المحتوى (Website/Landing/Content-heavy) — ماذا يريد المالك أن يظهر فعلياً داخل كل صفحة وقسم، بمعزل عن التصميم البصري.
344
+
345
+ ### متى يُنشأ؟
346
+ - **مشروط:** فقط عندما يكون Content Type = `User-Facing Content` / `Mixed` (من Discovery — Domain 4).
347
+ - **التوقيت:** بعد `07_SCREENS_AND_UI_STRUCTURE.md` وقبل التصميم النهائي (28) وقبل Phase 5.
348
+ - التطبيقات القياسية (Application Data فقط) **لا** تحتاجه — يكفي قسم خفيف داخل 07 إن لزم.
349
+
350
+ ### ماذا يحتوي؟
351
+ لكل شاشة/صفحة (S1..Sn + المشتركة):
352
+ - Purpose (الغرض)
353
+ - Audience (الجمهور)
354
+ - Primary Message (الرسالة الأساسية)
355
+ - Required Content (المحتوى المطلوب ظهوره)
356
+ - CTA (الدعوة للإجراء)
357
+ - Forbidden (الممنوع/الحساس — من الخطوط الحمراء D-015)
358
+ - Claims المسموحة (أرقام موثقة في مصادر الحقيقة فقط)
359
+ - Content Priorities (الأولويات بين الرسائل)
360
+ - Content Owner (المالك/المصدر)
361
+
362
+ ### أهميته
363
+ يمنع المنظومة من افتراض المحتوى بدل المالك، ويعزل أي اعتراض على محتوى في شاشة واحدة بدل إعادة تصميم التطبيق كاملاً.
364
+
365
+ ### القالب
366
+ `tera-system/runtime/TERA_RUNTIME_TEMPLATES_PREPARATION.md` — §41
367
+
368
+ ---
369
+
370
+ ## 08_TECHNICAL_ARCHITECTURE.md
371
+
372
+ ### الغرض
373
+ تثبيت القرارات التقنية الأساسية للمشروع.
374
+
375
+ ### ماذا يحتوي؟
376
+ - لغة البرمجة.
377
+ - Framework.
378
+ - قاعدة البيانات.
379
+ - نمط التطبيق: Web، API، Mobile، Desktop.
380
+ - طريقة المصادقة.
381
+ - بنية المشروع.
382
+ - طريقة التعامل مع الملفات.
383
+ - قواعد الأمان الأساسية.
384
+ - بيئة التشغيل والنشر المتوقعة.
385
+
386
+ ### أهميته
387
+ يمنع تضارب القرارات التقنية بين العملاء الفرعيين أثناء التنفيذ.
388
+
389
+ ---
390
+
391
+ ## 09_IMPLEMENTATION_PLAN.md
392
+
393
+ ### الغرض
394
+ تحويل التحليل إلى خطة تنفيذ مبدئية ضمن ملفات التحضير.
395
+
396
+ ### ماذا يحتوي؟
397
+ - مراحل التنفيذ.
398
+ - ترتيب بناء الموديولات.
399
+ - المهام الرئيسية.
400
+ - الاعتماديات بين المهام.
401
+ - النسخة الأولى MVP.
402
+ - ما يتم تنفيذه أولًا.
403
+ - ما يتم تأجيله.
404
+ - توزيع مبدئي للمهام على العملاء الفرعيين.
405
+
406
+ ### أهميته
407
+ يمثل جسرًا بين التحضير والتخطيط التنفيذي، لكنه **ليس** خطة التنفيذ الرسمية النهائية.
408
+
409
+ الخطط الرسمية للتنفيذ بعد اعتماد التحضير تكون داخل `project-control/`:
410
+
411
+ ```text
412
+ PROJECT_MASTER_PLAN.md
413
+ PROJECT_DETAILED_EXECUTION_PLAN.md
414
+ EXECUTION_BATCH_PLAN.md
415
+ ```
416
+
417
+ ---
418
+
419
+ ## 10_TESTING_AND_ACCEPTANCE.md
420
+
421
+ ### الغرض
422
+ تحديد طريقة اختبار التطبيق ومعايير قبوله.
423
+
424
+ ### ماذا يحتوي؟
425
+ - سيناريوهات الاختبار الأساسية.
426
+ - اختبارات الصلاحيات.
427
+ - اختبارات الإدخال.
428
+ - اختبارات الحالات Workflows.
429
+ - اختبارات التقارير.
430
+ - اختبارات الأخطاء والاستثناءات.
431
+ - معايير قبول كل موديول.
432
+ - الأخطاء التي لا يسمح بتمريرها.
433
+
434
+ ### أهميته
435
+ يقلل الأخطاء قبل التسليم، ويحول الاختبار من عمل عشوائي إلى عملية منظمة.
436
+
437
+ ---
438
+
439
+ ## 11_DELIVERY_AND_HANDOVER.md
440
+
441
+ ### الغرض
442
+ تجهيز التسليم النهائي للتطبيق.
443
+
444
+ ### ماذا يحتوي؟
445
+ - قائمة ما سيتم تسليمه.
446
+ - خطوات التشغيل.
447
+ - بيانات الدخول التجريبية إن وجدت.
448
+ - ملاحظات النشر.
449
+ - قائمة الفحوصات النهائية.
450
+ - الملفات المطلوبة للتسليم.
451
+ - ملاحظات الدعم أو الصيانة.
452
+
453
+ ### أهميته
454
+ يضمن أن نهاية المشروع واضحة، وأن التسليم لا يعتمد على ذاكرة المطور أو العميل تيرا.
455
+
456
+ ---
457
+
458
+ ## Companion Guide
459
+
460
+ تفاصيل الملفات المشروطة والثانوية والملخص التشغيلي موجودة في:
461
+
462
+ `tera-system/agent-helpers/Tera_Project_Preparation_Files_Conditional.md`
463
+
464
+ يُقرأ الملف المساعد عند الحاجة إلى تفاصيل الملفات من 12 إلى 35 أو إلى قواعد اختيارها حسب حجم المشروع.