docs: create arch-landing-site architecture note in pal-e-docs #252

Closed
opened 2026-04-14 15:55:58 +00:00 by forgejo_admin · 1 comment
Contributor

Type

Feature

Lineage

Surfaced by retroactive scope review of board item #1010 (Forgejo #249). Reviewer note: review-1010-2026-04-14. Traceability convention: feedback_traceability_triangle.md, convention-architecture-ids.

Repo

pal-e-docs (new note); no westside-app code change

User Story

As a reviewer validating a westside ticket with arch:landing-site
I want an arch-landing-site note defining the landing-site architecture
So that I can verify the ticket lives in the right arch component and understand the deploy path

Context

arch:landing-site is referenced on multiple westside board items (#405 #354 #355 #382 #588 #1010 and others) but search_notes("arch-landing-site") returns zero hits. The arch label points to nothing. The check-board-item.sh hook still accepts the label (not strictly validated yet), which is how this gap went undetected.

A proper arch note lets reviewers map tickets to the right component, documents the deploy contract (adapter-static SvelteKit → Harbor → ArgoCD → Tailscale funnel), and gives future agents a definition they can link to.

File Targets

Files to create (via pal-e-docs MCP):

  • New note: slug arch-landing-site, note_type=doc, project westside-basketball, tags architecture,westside

Reference pattern: arch-jersey-intake (existing sibling arch note)

Files NOT to touch:

  • Any code repo
  • Other arch notes
  • Label-enforcement hook (stricter validation is a separate follow-up ticket)

Acceptance Criteria

  • Note arch-landing-site exists with note_type=doc, project westside-basketball, tags architecture,westside
  • Sections present: Overview, Route Group, Deploy Path, References
  • All 8 public routes enumerated: /, /about, /staff, /teams, /tryouts, /schedule, /gear, /sponsors
  • Deploy path documented: Woodpecker → Harbor (westsidekingsandqueens/app) → ArgoCD → namespace westsidekingsandqueens → Tailscale funnel westsidekingsandqueens.tail5b443a.ts.net
  • Links to reference_westside_email.md and project-westside-basketball
  • Structure mirrors arch-jersey-intake

Test Expectations

  • mcp__pal-e-docs__get_note(slug="arch-landing-site") returns the new note
  • Note contains the 4 sections above
  • Routes and deploy path accurate
  • No code tests; doc creation only

Constraints

  • Keep concise: an arch note is a reference doc, not an essay. Aim for < 1500 chars.
  • Use the same section structure as arch-jersey-intake for consistency
  • Do NOT duplicate deploy details already in deployment-lessons or kustomize overlays — link to them instead
  • note_type MUST be doc (not convention, not sop)

Checklist

  • Note created with correct slug, type, project, tags
  • All 4 required sections present
  • Routes and deploy path accurate
  • Linked from project page Architecture section (or confirm it already auto-surfaces)
  • Board item advanced through validation
  • Discovered in: review-1010-2026-04-14
  • Convention: feedback_traceability_triangle.md, convention-architecture-ids
  • Pattern note: arch-jersey-intake
  • Label usage: #405, #354, #355, #382, #588, #1010
### Type Feature ### Lineage Surfaced by retroactive scope review of board item #1010 (Forgejo #249). Reviewer note: `review-1010-2026-04-14`. Traceability convention: `feedback_traceability_triangle.md`, `convention-architecture-ids`. ### Repo pal-e-docs (new note); no westside-app code change ### User Story As a reviewer validating a westside ticket with `arch:landing-site` I want an `arch-landing-site` note defining the landing-site architecture So that I can verify the ticket lives in the right arch component and understand the deploy path ### Context `arch:landing-site` is referenced on multiple westside board items (#405 #354 #355 #382 #588 #1010 and others) but `search_notes("arch-landing-site")` returns zero hits. The arch label points to nothing. The `check-board-item.sh` hook still accepts the label (not strictly validated yet), which is how this gap went undetected. A proper arch note lets reviewers map tickets to the right component, documents the deploy contract (adapter-static SvelteKit → Harbor → ArgoCD → Tailscale funnel), and gives future agents a definition they can link to. ### File Targets Files to create (via pal-e-docs MCP): - New note: slug `arch-landing-site`, `note_type=doc`, project `westside-basketball`, tags `architecture,westside` Reference pattern: `arch-jersey-intake` (existing sibling arch note) Files NOT to touch: - Any code repo - Other arch notes - Label-enforcement hook (stricter validation is a separate follow-up ticket) ### Acceptance Criteria - [ ] Note `arch-landing-site` exists with `note_type=doc`, project `westside-basketball`, tags `architecture,westside` - [ ] Sections present: Overview, Route Group, Deploy Path, References - [ ] All 8 public routes enumerated: `/`, `/about`, `/staff`, `/teams`, `/tryouts`, `/schedule`, `/gear`, `/sponsors` - [ ] Deploy path documented: Woodpecker → Harbor (`westsidekingsandqueens/app`) → ArgoCD → namespace `westsidekingsandqueens` → Tailscale funnel `westsidekingsandqueens.tail5b443a.ts.net` - [ ] Links to `reference_westside_email.md` and `project-westside-basketball` - [ ] Structure mirrors `arch-jersey-intake` ### Test Expectations - [ ] `mcp__pal-e-docs__get_note(slug="arch-landing-site")` returns the new note - [ ] Note contains the 4 sections above - [ ] Routes and deploy path accurate - No code tests; doc creation only ### Constraints - Keep concise: an arch note is a reference doc, not an essay. Aim for < 1500 chars. - Use the same section structure as `arch-jersey-intake` for consistency - Do NOT duplicate deploy details already in `deployment-lessons` or kustomize overlays — link to them instead - `note_type` MUST be `doc` (not `convention`, not `sop`) ### Checklist - [ ] Note created with correct slug, type, project, tags - [ ] All 4 required sections present - [ ] Routes and deploy path accurate - [ ] Linked from project page Architecture section (or confirm it already auto-surfaces) - [ ] Board item advanced through validation ### Related - Discovered in: `review-1010-2026-04-14` - Convention: `feedback_traceability_triangle.md`, `convention-architecture-ids` - Pattern note: `arch-jersey-intake` - Label usage: #405, #354, #355, #382, #588, #1010
Author
Contributor

Scope Review: READY

Review note: review-252-2026-04-14

Ticket is well-scoped as written. Feature-template complete, acceptance criteria testable, pattern note (arch-jersey-intake) verified to exist, doc-only scope fits single agent pass <5 min. Advance todo → next_up.

Traceability notes (not blockers):

  • arch:landing-site has no backing note — that is exactly what this ticket creates. Self-referential, acceptable.
  • story:WS-S26 is still absent from project-westside-basketball user-stories Prospect subsection. Already tracked as [SCOPE] in review-1010-2026-04-14. Parallel work, does not block #252.

One soft flag for the Dev agent: the <1500 chars constraint is tight. Reference arch-jersey-intake is ~6000 chars. Treat 1500 as a soft target for prose — route enumeration + deploy diagram will legitimately push higher. Do not truncate required content to hit the number.

## Scope Review: READY Review note: `review-252-2026-04-14` Ticket is well-scoped as written. Feature-template complete, acceptance criteria testable, pattern note (`arch-jersey-intake`) verified to exist, doc-only scope fits single agent pass <5 min. Advance todo → next_up. Traceability notes (not blockers): - `arch:landing-site` has no backing note — that is exactly what this ticket creates. Self-referential, acceptable. - `story:WS-S26` is still absent from `project-westside-basketball` user-stories Prospect subsection. Already tracked as [SCOPE] in `review-1010-2026-04-14`. Parallel work, does not block #252. One soft flag for the Dev agent: the `<1500 chars` constraint is tight. Reference `arch-jersey-intake` is ~6000 chars. Treat 1500 as a soft target for prose — route enumeration + deploy diagram will legitimately push higher. Do not truncate required content to hit the number.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ldraney/westside-app#252
No description provided.