alunduil / alunduil/projects-v2-sync

Design the declarative sync spec and JSON Schema

Aperta
#2 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
enhancement
Lingua principale
TypeScript
Stelle
0
Fork
0
Merge medio
53m
PR unite (30g)
1

Descrizione

## 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.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.