feat: link commits, branches and pull requests to tickets

A project can turn on a webhook for GitHub, Gitea or GitLab. Pushes and
pull or merge requests that name a ticket key show on that ticket under
Desarrollo, with the state of each pull request; the secret is shown and
rotated from the project settings.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-08 15:28:12 +02:00
parent 24b37b6628
commit 046d77c813
48 changed files with 2638 additions and 12 deletions

View File

@@ -16,6 +16,7 @@ import {
} from '@angular/core';
import { NgTemplateOutlet } from '@angular/common';
import { PiIconComponent, PiNoteComponent } from '@pi/ui';
import { GitIntegrationComponent } from '../ui/git-integration';
import { ProjectFacade } from '@task-stream/web/tracker/application';
import {
ProjectSettings,
@@ -51,6 +52,7 @@ function idFrom(name: string): string {
selector: 'ts-settings-page',
changeDetection: ChangeDetectionStrategy.OnPush,
imports: [
GitIntegrationComponent,
CdkDropList,
CdkDrag,
CdkDragHandle,
@@ -461,6 +463,13 @@ function idFrom(name: string): string {
}
</form>
@if (facade.canManage() && facade.project(); as project) {
<ts-git-integration
[projectId]="project.id"
[projectKey]="project.key"
/>
}
@if (facade.isOwner() && facade.project(); as project) {
<section
class="ts-panel ts-block ts-danger"