kin: auto-commit after pipeline
This commit is contained in:
parent
e118b87a3e
commit
6ffe4ffb9f
2 changed files with 42 additions and 4 deletions
|
|
@ -43,7 +43,27 @@ For a specific test file: `python -m pytest tests/test_models.py -v`
|
|||
|
||||
## Output format
|
||||
|
||||
Return ONLY valid JSON (no markdown, no explanation):
|
||||
Return TWO sections in your response:
|
||||
|
||||
### Section 1 — `## Verdict` (human-readable, in Russian)
|
||||
|
||||
2-3 sentences in plain Russian for the project director: what was tested, did all tests pass, are there failures. No JSON, no code snippets, no technical details.
|
||||
|
||||
Example (tests passed):
|
||||
```
|
||||
## Verdict
|
||||
Написано 4 новых теста, все существующие тесты прошли. Новая функциональность покрыта полностью. Всё в порядке.
|
||||
```
|
||||
|
||||
Example (tests failed):
|
||||
```
|
||||
## Verdict
|
||||
Тесты выявили проблему: 2 из 6 новых тестов упали из-за ошибки в функции обработки пустого ввода. Требуется исправление в backend.
|
||||
```
|
||||
|
||||
### Section 2 — `## Details` (JSON block for agents)
|
||||
|
||||
The full technical output in JSON, wrapped in a ```json code fence:
|
||||
|
||||
```json
|
||||
{
|
||||
|
|
@ -68,6 +88,24 @@ Valid values for `status`: `"passed"`, `"failed"`, `"blocked"`.
|
|||
If status is "failed", populate `"failures"` with `[{"test": "...", "error": "..."}]`.
|
||||
If status is "blocked", include `"blocked_reason": "..."`.
|
||||
|
||||
**Full response structure (write exactly this, two sections):**
|
||||
|
||||
## Verdict
|
||||
Написано 3 новых теста, все 45 тестов прошли успешно. Новые кейсы покрывают основные сценарии. Всё в порядке.
|
||||
|
||||
## Details
|
||||
```json
|
||||
{
|
||||
"status": "passed",
|
||||
"tests_written": [...],
|
||||
"tests_run": 45,
|
||||
"tests_passed": 45,
|
||||
"tests_failed": 0,
|
||||
"failures": [],
|
||||
"notes": "..."
|
||||
}
|
||||
```
|
||||
|
||||
## Blocked Protocol
|
||||
|
||||
If you cannot perform the task (no file access, ambiguous requirements, task outside your scope), return this JSON **instead of** the normal output:
|
||||
|
|
|
|||
|
|
@ -547,12 +547,12 @@ describe('ProjectView — Links таб', () => {
|
|||
const fromInput = disabledInputs.find(i => (i.element as HTMLInputElement).value === 'KIN')
|
||||
expect(fromInput).toBeDefined()
|
||||
|
||||
// to_project и link_type — select элементы
|
||||
// to_project и type — select элементы
|
||||
const selects = wrapper.findAll('select')
|
||||
expect(selects.length).toBeGreaterThanOrEqual(1)
|
||||
})
|
||||
|
||||
it('форма link_type select содержит depends_on, triggers, related_to', async () => {
|
||||
it('форма type select содержит depends_on, triggers, related_to', async () => {
|
||||
const wrapper = await mountProjectView()
|
||||
await switchToLinksTab(wrapper)
|
||||
const plusBtn = wrapper.findAll('button').find(b => b.text().includes('+') && b.text().includes('Link'))
|
||||
|
|
@ -605,7 +605,7 @@ describe('ProjectView — Links таб', () => {
|
|||
|
||||
it('Delete вызывает api.deleteProjectLink с id связи', async () => {
|
||||
const links = [
|
||||
{ id: 7, from_project: 'KIN', to_project: 'BRS', link_type: 'depends_on', description: null, created_at: '2026-01-01' },
|
||||
{ id: 7, from_project: 'KIN', to_project: 'BRS', type: 'depends_on', description: null, created_at: '2026-01-01' },
|
||||
]
|
||||
vi.mocked(api.projectLinks).mockResolvedValue(links as any)
|
||||
vi.spyOn(window, 'confirm').mockReturnValue(true)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue