Conversation
Greptile SummaryThis PR renames the Key changes:
Confidence Score: 2/5
Important Files Changed
Sequence DiagramsequenceDiagram
participant UI as UI (TemplatesButton / AdminFormModal)
participant API as Admin API (/admin/v1/templates)
participant SVC as TemplateService
participant DB as TemplateRepo (Postgres/SQLite)
Note over UI,DB: Create Template
UI->>API: POST /admin/v1/templates {owner, name, content, metadata}
API->>SVC: create(CreateTemplate)
SVC->>DB: create(input)
DB-->>SVC: Template
SVC-->>API: Template
API-->>UI: 201 Template
Note over UI,DB: List by Org (new cross-scope query)
UI->>API: GET /admin/v1/organizations/{slug}/templates
API->>SVC: list_by_org(org_id, params)
SVC->>DB: list_by_org(org_id, params)
Note over DB: Joins org_memberships, teams, projects<br/>to return org + team + project + user templates
DB-->>SVC: ListResult[Template]
SVC-->>API: ListResult[Template]
API-->>UI: TemplateListResponse {data, pagination}
Note over UI,DB: Apply Template with Variables
UI->>UI: User selects template
alt Has variables in metadata
UI->>UI: Show TemplateVariableForm modal
UI->>UI: substituteVariables(content, values)
end
UI->>UI: setPendingPrompt(content)
Note over UI,DB: Delete Template
UI->>API: DELETE /admin/v1/templates/{id}
API->>SVC: delete(id)
SVC->>DB: soft-delete (set deleted_at)
DB-->>SVC: ()
SVC-->>API: ()
API-->>UI: 200
UI->>UI: invalidate templateListBy* cache keys
|
No description provided.