roryqi commented on code in PR #10876:
URL: https://github.com/apache/gravitino/pull/10876#discussion_r3166285414


##########
agent-skills/gravitino-design-doc/SKILL.md:
##########
@@ -0,0 +1,169 @@
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+-->
+
+---
+name: gravitino-design-doc
+description: Use when writing or reviewing a design document PR for the Apache 
Gravitino project
+---
+
+# Gravitino Design Document
+
+## Overview
+
+All Gravitino design documents must cover the problem, scope, and solution in 
a consistent structure so reviewers can evaluate them efficiently.
+
+## Required Sections (in order)
+
+### 1. Apache License Header
+HTML comment block — always the very first block in the file.
+
+```html
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  ...
+-->
+```
+
+### 2. Title (H1)
+- `# Design of <Feature> in Gravitino`, or
+- `# Design: <Feature> for Apache Gravitino`
+
+### 3. Background
+Describe **current state** and **what's wrong with it** — not the solution.
+- What does Gravitino currently do (or not do)?
+- Why is this a problem now?
+- Use tables, code blocks, or ASCII diagrams for architecture/current-state 
illustration.
+
+### 4. Goals
+Numbered list. Each goal must be **concrete and verifiable**. Bold the goal 
name.
+
+```markdown
+1. **Multi-Engine Compatibility**: Views managed by Gravitino are visible and 
manageable across engines.
+```
+
+Avoid vague goals like "improve performance" or "better support X."
+
+### 5. Non-Goals (strongly recommended)
+Numbered list. Each non-goal must state **what is out of scope and briefly 
why**.
+
+```markdown
+1. **SQL Transpilation**: Gravitino will not convert SQL between dialects. 
Users must provide correct SQL per dialect.
+```
+
+Non-Goals prevent scope creep during review and implementation.
+
+### 6. Solution Investigations
+Document the alternative approaches considered and why they were accepted or 
rejected. This section helps reviewers understand the design space and 
validates that the proposal is the best fit.
+
+Each alternative should cover:
+- **What it is**: a brief description of the approach
+- **Pros**: why it is attractive
+- **Cons / why rejected**: the concrete reason it was not chosen
+
+**Table format (for 2–4 short alternatives):**
+
+| Approach | Pros | Cons | Decision |
+|----------|------|------|----------|
+| Option A | Fast, simple | Breaks backward compat | Rejected |
+| Option B (chosen) | Backward compatible, extensible | Slightly more complex 
| **Chosen** |
+
+**Sub-section format (for deep alternatives):**
+
+```markdown
+### Option A: <Name>
+<Description>
+**Pros:** ...
+**Cons:** ...
+**Decision:** Rejected because ...
+
+### Option B: <Name> (Chosen)
+...
+```
+
+If only one approach was seriously considered, explain briefly why 
alternatives were dismissed early.
+
+### 7. Proposal
+The actual design for the chosen approach. Use sub-sections. Should cover at 
minimum:
+- API changes (new interfaces, REST endpoints, or CLI commands)

Review Comment:
   Could u have a format for API changes?
   For example,
   We should define request, response, hehavior for the new REST API.
   We should explain the old behaviour and new behaviour when we changed a API.
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to