alunduil / alunduil/projects-v2-sync

Design the declarative sync spec and JSON Schema

Abierto
#2 0 comentarios 0 reacciones 0 asignados Ver en GitHub
enhancement
Lenguaje dominante
TypeScript
Estrellas
0
Forks
0
Merge medio
53 min
PR fusionados (30 d)
1

Descripción

## Summary

Define the per-board declarative spec the action consumes: sources
(in) and field mappings (out), with a JSON Schema. No field/option
IDs — resolved by name at runtime.

## Motivation

Ports the sync half of `github/projects/inbox.json`
(alunduil/alunduil-infrastructure) into a standalone, self-contained
spec. The schema half of that file (fields / options / colors) is NOT
included — it moves to Terraform (alunduil/alunduil-infrastructure#253).

## Scope

- Spec shape:
- `owner`, `title` — locate the target Projects v2 board.
- `sources[]` (the "in"): `owner` (logins whose repos are scanned),
`author`, `assignee`.
- field mappings (the "out"): which field records an item's source
(e.g. `filed_by_field`), which single-select field + option per
item type (PR vs issue).
- `exclude_archived`.
- JSON Schema validating the above; no `id` fields anywhere.
- Example spec reproducing the current Inbox behavior.

## Acceptance criteria

- [ ] Spec format documented with a JSON Schema.
- [ ] Example spec reproduces the current Inbox sources + field mapping.
- [ ] Schema rejects specs carrying field/option IDs.

## Additional context

- Depends on #1.
- Behavior source: `scripts/sync-project.sh` + `github/projects/inbox.json`
in alunduil/alunduil-infrastructure.
- alunduil/alunduil-infrastructure#187 (sort PRs into Review/Blocked by
actionability) is a future out-mapping the format should grow into.

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.