huddle60 0.0.0-stage → 0.1.0
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.
- package/README.md +248 -2
- package/dist/action.js +1563 -0
- package/dist/action.js.map +7 -0
- package/dist/cli.js +3040 -0
- package/dist/cli.js.map +7 -0
- package/dist/planner-server.js +1912 -0
- package/dist/planner-server.js.map +7 -0
- package/package.json +44 -4
- package/templates/.github/ISSUE_TEMPLATE/config.yml +1 -0
- package/templates/.github/ISSUE_TEMPLATE/epic.yml +35 -0
- package/templates/.github/ISSUE_TEMPLATE/request.yml +18 -0
- package/templates/.github/ISSUE_TEMPLATE/story.yml +45 -0
- package/templates/.github/ISSUE_TEMPLATE/task.yml +43 -0
- package/templates/.github/PULL_REQUEST_TEMPLATE.md +12 -0
- package/templates/.github/ai-dlc/policy.yml +38 -0
- package/templates/.github/workflows/ai-dlc.yml +27 -0
- package/templates/AGENTS.md +12 -0
- package/ui/app.js +785 -0
- package/ui/favicon.svg +1 -0
- package/ui/index.html +145 -0
- package/ui/styles.css +873 -0
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# AI-DLC policy. Changes must be reviewed by CODEOWNERS.
|
|
2
|
+
# Roles use numeric GitHub user ids (https://api.github.com/users/<login>), which never change.
|
|
3
|
+
# Accounts used only as AI tools must not hold a role.
|
|
4
|
+
version: 1
|
|
5
|
+
roles:
|
|
6
|
+
po:
|
|
7
|
+
- id: 1000001
|
|
8
|
+
login: replace-with-po-login
|
|
9
|
+
dev:
|
|
10
|
+
- id: 1000002
|
|
11
|
+
login: replace-with-dev-1
|
|
12
|
+
- id: 1000003
|
|
13
|
+
login: replace-with-dev-2
|
|
14
|
+
maintainer: []
|
|
15
|
+
# Organization or user Project (v2) that receives Issues created by the planner. Remove to skip.
|
|
16
|
+
project:
|
|
17
|
+
owner: your-org
|
|
18
|
+
number: 1
|
|
19
|
+
lanes:
|
|
20
|
+
fast:
|
|
21
|
+
requires_po_approval: false
|
|
22
|
+
standard:
|
|
23
|
+
requires_po_approval: true
|
|
24
|
+
strict:
|
|
25
|
+
requires_po_approval: true
|
|
26
|
+
# Pull requests in the fast lane may not touch these paths.
|
|
27
|
+
sensitive_paths:
|
|
28
|
+
- ".github/**"
|
|
29
|
+
- "migrations/**"
|
|
30
|
+
- "src/auth/**"
|
|
31
|
+
evidence:
|
|
32
|
+
branch: ai-dlc-evidence
|
|
33
|
+
acceptance:
|
|
34
|
+
build_workflows:
|
|
35
|
+
- .github/workflows/build.yml
|
|
36
|
+
planner:
|
|
37
|
+
max_nodes: 60
|
|
38
|
+
plan_ttl_days: 30
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Deterministic AI-DLC gates. Planning (Gemini) runs in `huddle60 ui` on the PO's machine
|
|
2
|
+
# (or the optional planner service), never here.
|
|
3
|
+
# Pin `your-org/huddle60` to a full commit SHA in production.
|
|
4
|
+
name: ai-dlc
|
|
5
|
+
on:
|
|
6
|
+
issue_comment:
|
|
7
|
+
types: [created, edited, deleted]
|
|
8
|
+
pull_request_target:
|
|
9
|
+
types: [opened, edited, synchronize, reopened, ready_for_review]
|
|
10
|
+
permissions: {}
|
|
11
|
+
jobs:
|
|
12
|
+
ai-dlc:
|
|
13
|
+
# Never check out or run pull request code in this job: it holds a write token.
|
|
14
|
+
if: github.event_name == 'pull_request_target' || (github.event.issue.pull_request == null && github.event.sender.type != 'Bot' && (startsWith(github.event.comment.body, '/ai-dlc') || github.event.action != 'created'))
|
|
15
|
+
runs-on: ubuntu-latest
|
|
16
|
+
permissions:
|
|
17
|
+
contents: read
|
|
18
|
+
steps:
|
|
19
|
+
- id: app-token
|
|
20
|
+
uses: actions/create-github-app-token@v1
|
|
21
|
+
with:
|
|
22
|
+
app-id: ${{ vars.AI_DLC_APP_ID }}
|
|
23
|
+
private-key: ${{ secrets.AI_DLC_APP_PRIVATE_KEY }}
|
|
24
|
+
- uses: your-org/huddle60@v0
|
|
25
|
+
with:
|
|
26
|
+
token: ${{ steps.app-token.outputs.token }}
|
|
27
|
+
enabled: ${{ vars.AI_DLC_ENABLED || 'true' }}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# Hướng dẫn cho AI agent
|
|
2
|
+
|
|
3
|
+
1. Trước khi code, lấy baseline đã chốt:
|
|
4
|
+
`npx huddle60 context --issue <số>` (hoặc DEV dán nội dung từ nút **context** trong `huddle60 ui`).
|
|
5
|
+
Chỉ làm theo nội dung trong đầu ra. Nếu lệnh báo chưa ready hoặc có cảnh báo WARNING, dừng lại và hỏi DEV.
|
|
6
|
+
2. Chỉ sửa file trong phạm vi Task. Không sửa `.github/`, `AGENTS.md` hoặc policy trừ khi Task yêu cầu rõ.
|
|
7
|
+
3. Gắn mã AC vào tên test, ví dụ `[AC-01] từ chối mật khẩu sai`.
|
|
8
|
+
4. Mô tả PR phải chứa khối `<!-- ai-dlc:begin -->` do lệnh trên sinh ra. Dùng `Refs #<số>`,
|
|
9
|
+
không dùng `Closes`, `Fixes`, `Resolves`.
|
|
10
|
+
5. Ghi rõ phần chưa kiểm tra và giả định. Không viết rằng CI đã pass khi chưa có kết quả CI.
|
|
11
|
+
6. Không chạy `/ai-dlc approve`, `ready`, `accept`, `create-plan` và không bấm các nút tương ứng trong `huddle60 ui`;
|
|
12
|
+
đó là quyết định của con người.
|