Lucas Berger
5fdbd11475
docs(09): create phase plan
2026-06-12 14:28:09 -04:00
Lucas Berger
b22c92ae92
docs(09): create phase plan (2 plans, 2 waves) — outboxTrigger + drain signal wiring
2026-06-12 14:21:37 -04:00
Lucas Berger
555f4c80f8
docs(phase-9): add validation strategy
2026-06-12 14:11:10 -04:00
Lucas Berger
106574df1d
docs(09): research phase — faster write-back trigger wiring
2026-06-12 14:09:26 -04:00
Lucas Berger
b104d73cb5
docs(state): record phase 9 context session
2026-06-12 14:02:28 -04:00
Lucas Berger
2a11e86bca
docs(09): capture phase context
2026-06-12 14:02:21 -04:00
Lucas Berger
2b4eb5d6ba
docs(phase-15): complete phase execution
Publish / publish (push) Successful in 6s
2026-06-12 11:20:09 -04:00
Lucas Berger
62252ce434
docs(15-03): complete plan 03 — branch protection finalized (fast-checks + gate), publish.yml comment
2026-06-12 11:20:09 -04:00
luckberg
4e8ab562f4
Merge pull request 'Phase 15: skip api/harness CI for doc-only PRs + markdown lint gate' ( #11 ) from gsd/phase-15-ci-skip-api-harness-jobs-for-doc-only-prs into main
...
Publish / publish (push) Successful in 1m39s
Reviewed-on: #11
2026-06-12 11:08:53 -04:00
Lucas Berger
a6e2474379
docs(phase-15): record deferred 15-03 operator checkpoint
CI / changes (pull_request) Successful in 6s
CI / fast-checks (pull_request) Successful in 1m23s
CI / api (pull_request) Successful in 59s
CI / harness (pull_request) Successful in 3m55s
CI / gate (pull_request) Successful in 1s
2026-06-12 10:59:48 -04:00
Lucas Berger
da623ac234
docs(15-03): update publish.yml safety-gate comment to name new required checks
...
- Replace "three required checks (CI / fast-checks, CI / api, CI / harness)"
with the new gating surface: CI / fast-checks + CI / gate
- Note that CI / api and CI / harness are conditionally skipped on doc-only PRs
and gated via the always-running CI / gate aggregate
- Comment-only change; no job/step/env/trigger modified
2026-06-12 10:56:03 -04:00
Lucas Berger
0278e2080a
docs(phase-15): update tracking after wave 2
2026-06-12 10:54:26 -04:00
Lucas Berger
c0c217019c
chore: merge executor worktree (worktree-agent-afb241c0e741e819e)
2026-06-12 10:53:47 -04:00
Lucas Berger
e153f7c355
docs(15-02): complete plan 02 summary — changes job + gate aggregate
2026-06-12 10:53:22 -04:00
Lucas Berger
547b12ca4a
feat(15-02): add always-running gate aggregate job (Gitea-safe per-job result checks)
...
- gate job needs [fast-checks, changes, api, harness] with if: always()
- gate fails (exit 1) when fast-checks != success
- gate accepts success OR skipped for api and harness, fails on any other result
- uses individual needs.X.result checks (not wildcard) — Gitea 1.26.2 bug #31007
- once merged, emits CI / gate commit-status required by Plan 03 branch-protection update
2026-06-12 10:52:18 -04:00
Lucas Berger
72604385bc
feat(15-02): add changes job and gate api/harness on code output
...
- insert changes job (dorny/paths-filter@v4) before fast-checks
- changes job: permissions pull-requests:read, outputs code, no checkout
- code filter lists positive patterns: **/*.ts, apps/**, pnpm-lock.yaml, Dockerfile, etc.
- api job: needs [changes] + if combined with needs.changes.outputs.code == 'true'
- harness job: same needs/if pattern as api
- services, env, and step bodies unchanged in both heavy jobs
2026-06-12 10:51:20 -04:00
Lucas Berger
20ebd90554
docs(phase-15): update tracking after wave 1
2026-06-12 10:49:12 -04:00
Lucas Berger
cd6be1b9c3
chore: merge executor worktree (worktree-agent-ad1b2de59871ef5b9)
2026-06-12 10:47:56 -04:00
Lucas Berger
4c5efb0604
docs(15-01): complete markdown lint gate plan — SUMMARY.md
2026-06-12 10:47:17 -04:00
Lucas Berger
46bea03757
feat(15-01): fix 13 markdown violations + wire md:lint to fast-checks CI step
...
- Fix MD040 (11 bare fences): add language tags (text/bash) across 7 files
- Fix MD031 (2 violations): add blank lines around fence in GETTING-STARTED.md
- Wire 'Markdown lint' step to fast-checks job (after Format check, before Typecheck)
- Reformat .markdownlint-cli2.jsonc per Prettier (trailing commas in JSONC)
- pnpm md:lint exits 0; pnpm format:check exits 0; gate can fail on bare fence (verified)
2026-06-12 10:46:01 -04:00
Lucas Berger
adb7641c19
feat(15-01): add markdownlint-cli2 + md:lint script + root config
...
- Install markdownlint-cli2@0.22 .1 as root workspace devDependency
- Add md:lint script (no glob args — globs/ignores live in config file)
- Create .markdownlint-cli2.jsonc with prettier preset + content rules
- Enable MD001/MD024/MD040/MD031/MD051/MD052; disable MD041/MD034/MD036
- Glob: docs/**/*.md, *.md, apps/**/*.md; ignores .planning/** and node_modules
2026-06-12 10:42:52 -04:00
Lucas Berger
4728c41539
docs(phase-15): mark phase execution started
2026-06-12 10:40:07 -04:00
Lucas Berger
c687efce27
docs(15): record planning complete + roadmap wave annotations
2026-06-12 10:30:50 -04:00
Lucas Berger
e19d4736c7
docs(15): create phase plan — doc-only CI skip + markdown lint
...
3 plans across 3 waves:
- 15-01: markdownlint-cli2 config/script/step + fix 13 baseline violations (SC-4)
- 15-02: ci.yml changes job + conditional api/harness + always-running gate (SC-1/2, SC-3 YAML)
- 15-03: operator branch-protection checkpoint + publish.yml comment (SC-3)
2026-06-12 10:28:56 -04:00
Lucas Berger
899528eeb3
docs(phase-15): add pattern map
2026-06-12 10:22:37 -04:00
Lucas Berger
18cf62b702
docs(phase-15): add validation strategy
2026-06-12 10:19:08 -04:00
Lucas Berger
e84911de10
docs(15): research phase - doc-only CI skip + markdown lint
2026-06-12 10:17:53 -04:00
Lucas Berger
23fb238443
docs(roadmap): add markdown linting to Phase 15 scope
Publish / publish (push) Successful in 6s
2026-06-12 09:52:34 -04:00
Lucas Berger
300a07ab4b
docs: review backlog — promoted 999.17 to Phase 15, removed 6 stale promoted stubs
Publish / publish (push) Successful in 7s
2026-06-12 09:47:12 -04:00
luckberg
2a209080a9
Merge pull request 'Phase 14: desktop e2e coverage (add blocking Desktop Chrome Playwright gate)' ( #10 ) from gsd/phase-14-desktop-e2e-coverage into main
...
Publish / publish (push) Successful in 19s
Reviewed-on: #10
2026-06-12 09:32:26 -04:00
luckberg
4607693a71
Merge branch 'main' into gsd/phase-14-desktop-e2e-coverage
CI / fast-checks (pull_request) Successful in 1m33s
CI / api (pull_request) Successful in 59s
CI / harness (pull_request) Successful in 3m55s
2026-06-12 09:25:47 -04:00
Lucas Berger
cf48fa8e1b
docs(phase-14): complete phase execution
CI / fast-checks (pull_request) Successful in 1m20s
CI / api (pull_request) Successful in 57s
CI / harness (pull_request) Successful in 3m56s
2026-06-12 09:10:18 -04:00
Lucas Berger
f9fc7bbda2
docs(14): add code review report
2026-06-12 09:07:20 -04:00
luckberg
75760e9d7d
Merge pull request 'docs: refresh CI + lint/format docs (Phase 8 + Phase 13)' ( #9 ) from gsd/docs-ci-lint-refresh into main
...
Publish / publish (push) Successful in 7s
Reviewed-on: #9
2026-06-12 08:54:16 -04:00
Lucas Berger
f75bc4239f
style(14-01): apply prettier formatting to layout.spec.ts for CI format:check gate
CI / fast-checks (pull_request) Successful in 1m22s
CI / api (pull_request) Successful in 59s
CI / harness (pull_request) Successful in 3m58s
2026-06-12 08:31:33 -04:00
Lucas Berger
214e59d6e2
docs(phase-14): update tracking after wave 1
2026-06-12 08:27:39 -04:00
Lucas Berger
1c7775a022
chore: merge executor worktree (worktree-agent-aaafe3c94f936d618)
2026-06-12 08:25:19 -04:00
Lucas Berger
492adbc8b3
docs(14-01): complete desktop e2e coverage plan
...
- 85 passed, 5 skipped, 0 failed across iphone + pixel + desktop
- SC-1/SC-2/SC-3 all satisfied
2026-06-12 08:24:31 -04:00
Lucas Berger
bfc49d199d
chore(14-01): update spec headers + README for desktop profile, cosmetic CI step rename
...
- Updated calendar.spec.ts header to list all three profiles (iphone/pixel/desktop)
- Updated lists.spec.ts header to list all three profiles (iphone/pixel/desktop)
- Updated e2e/README.md preamble to add 'Desktop Chrome (1280x720)'
- Added --project=desktop example to README run-commands block
- Updated README full-suite command comment to name all three profiles
- Cosmetic: ci.yml step-name and comment updated to mention desktop (no plumbing change)
- Full suite verified: 85 passed, 5 skipped (3 desktop geometry + 2 parity guards), 0 failed
2026-06-12 08:23:10 -04:00
Lucas Berger
29035999ea
feat(14-01): desktop-skip three mobile-only layout assertions, add D-04 parity
...
- Added test.skip(testInfo.project.name === 'desktop') to the two safe-area-inset
BottomTabBar in-viewport tests (BottomTabBar returns null at >=768px on desktop)
- Added test.skip(testInfo.project.name === 'desktop') to the 56x56 FAB geometry test
(on desktop 'New Event' resolves to the toolbar button, not the 56px FAB)
- Added desktop-only D-04 parity test asserting 'New Event' toolbar button height >=44px
guarded by test.skip(testInfo.project.name !== 'desktop')
- Updated header jsdoc to list all three profiles including desktop
- All mobile assertions preserved (toBeGreaterThanOrEqual(56) and (44) still present)
2026-06-12 08:20:06 -04:00
Lucas Berger
d3bc69657b
feat(14-01): add desktop Playwright project (Desktop Chrome, 1280x720, no hasTouch)
...
- Appended 'desktop' project entry after 'pixel' in playwright.config.ts projects array
- Uses devices['Desktop Chrome'] with serviceWorkers: 'block' (D-02/Pitfall 15)
- No baseURL override — inherited from top-level use block (D-08)
- Updated file header jsdoc: three-profile matrix, added --project=desktop example
2026-06-12 08:19:04 -04:00
Lucas Berger
5c3bd5c1ea
docs(14): record planning complete + pattern map
2026-06-12 08:10:03 -04:00
Lucas Berger
8742dd43a4
docs(14): create phase plan
2026-06-12 08:07:37 -04:00
Lucas Berger
d8cdbcfc14
docs(state): record phase 14 context session
2026-06-12 07:57:10 -04:00
Lucas Berger
2daeb49b89
docs(14): capture phase context
2026-06-12 07:57:03 -04:00
Lucas Berger
5ab463ccbb
docs: add backlog 999.17 (CI doc-only PR skip) + remove stale graph.html
CI / fast-checks (pull_request) Successful in 1m19s
CI / api (pull_request) Successful in 58s
CI / harness (pull_request) Successful in 3m16s
2026-06-11 22:29:26 -04:00
Lucas Berger
cfb2fd3cf9
docs(graph): refresh knowledge-graph artifacts (rebuilt at 63ae0c6 — 5924 nodes/6053 edges)
CI / fast-checks (pull_request) Successful in 1m22s
CI / api (pull_request) Successful in 1m0s
CI / harness (pull_request) Successful in 3m29s
2026-06-11 22:25:27 -04:00
Lucas Berger
213aeba347
docs: refresh CI + lint/format docs (Phase 8 + Phase 13)
CI / fast-checks (pull_request) Successful in 1m23s
CI / api (pull_request) Successful in 1m0s
CI / harness (pull_request) Successful in 3m27s
2026-06-11 22:21:23 -04:00
luckberg
63ae0c69d4
Merge pull request 'Phase 13: Real Lint Gate — type-aware ESLint + Prettier format gate' ( #8 ) from gsd/phase-13-real-lint-gate-eslint into main
...
Publish / publish (push) Successful in 1m7s
Reviewed-on: #8
2026-06-11 21:51:08 -04:00
Lucas Berger
0eb43c93d7
fix(13): ignore .pnpm-store in Prettier — CI puts pnpm's store in-workspace so format:check walked into it
CI / fast-checks (pull_request) Successful in 1m23s
CI / api (pull_request) Successful in 1m4s
CI / harness (pull_request) Successful in 3m29s
2026-06-11 21:32:14 -04:00