Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
607 commits
Select commit Hold shift + click to select a range
d1f75fd
Merge pull request #179 from ConductionNL/chore/archive-icons
rubenvdlinde Jul 24, 2026
9a738fc
test(e2e): revive the dead Playwright harness + cover the market-gap …
Jul 24, 2026
9bef03a
fix(admin-js): OC.Notification was removed in NC 34 — a toast must ne…
Jul 24, 2026
6107074
Merge pull request #180 from ConductionNL/test/e2e-wave-coverage
rubenvdlinde Jul 24, 2026
4805968
docs(openspec): La Suite pixel-parity wave — token completeness, Mari…
Jul 25, 2026
38b1064
Merge pull request #183 from ConductionNL/specs/lasuite-parity-2026-0…
rubenvdlinde Jul 25, 2026
bb1671f
feat(lasuite): generate full 1167-token Cunningham base, sourced viol…
Jul 25, 2026
27afec1
Merge pull request #184 from ConductionNL/wip/lasuite-token-completeness
rubenvdlinde Jul 25, 2026
6846b96
docs(openspec): archive lasuite-token-completeness
Jul 25, 2026
daa3236
Merge pull request #185 from ConductionNL/chore/archive-lasuite-token…
rubenvdlinde Jul 25, 2026
09896a5
feat(token-sets): non-admin catalogue + shared contrast evaluation en…
Jul 25, 2026
041eb05
Merge remote-tracking branch 'origin/development' into wip/app-token-…
Jul 25, 2026
bc140a2
Merge pull request #186 from ConductionNL/wip/app-token-set-selection
rubenvdlinde Jul 25, 2026
04cc9e1
feat(lasuite): bundle Marianne font gated behind admin French-state a…
Jul 25, 2026
4a679ac
Merge pull request #187 from ConductionNL/wip/marianne-font-restricted
rubenvdlinde Jul 25, 2026
0102c43
docs(openspec): archive marianne-font-restricted
Jul 25, 2026
b0b22b6
Merge pull request #188 from ConductionNL/chore/archive-marianne
rubenvdlinde Jul 25, 2026
a57ce94
feat: theme-switchable iconography — DSFR pack + design-system icon-p…
Jul 25, 2026
e30701a
Merge remote-tracking branch 'origin/development' into wip/theme-swit…
Jul 25, 2026
35d38c2
Merge pull request #189 from ConductionNL/wip/theme-switchable-iconog…
rubenvdlinde Jul 25, 2026
f09bce1
fix(icons): default a design_system-less token set to nldesign packs
Jul 25, 2026
dffe09d
Merge pull request #190 from ConductionNL/fix/icon-pack-default-desig…
rubenvdlinde Jul 25, 2026
25e954c
docs(openspec): archive theme-switchable-iconography
Jul 25, 2026
c3bd053
Merge pull request #191 from ConductionNL/chore/archive-iconography
rubenvdlinde Jul 25, 2026
20363f2
fix(nldesign): La Suite primary button = brand-550 at rest, brand-650…
Jul 26, 2026
07f5b51
feat(config): NL Design theme as a shareable config type (federated-c…
rubenvdlinde Jul 26, 2026
c547ade
feat(nldesign): full La Suite colour parity for the lasuite theme
Jul 26, 2026
2e0eab2
fix(nldesign): resolve federated-config static-analysis errors via co…
Jul 26, 2026
881a519
fix(nldesign): La Suite button label weight + tertiary colour; parse …
Jul 27, 2026
f87d5f8
fix(nldesign): align lasuite neutrals with the live La Suite app
Jul 27, 2026
3e9e0b3
feat(nldesign): align the lasuite wireframe with La Suite
Jul 27, 2026
40bce6a
docs(nldesign): record wireframe verification + correct the scope note
Jul 27, 2026
62a6990
feat(nldesign): admin-editable freeform custom CSS
Jul 28, 2026
8ef8ac6
fix(nldesign): restore the header's left corner and match La Suite's …
Jul 28, 2026
73b9633
fix(lasuite): recolour header glyphs instead of filtering them, and m…
Jul 28, 2026
9c3a8d3
fix(lasuite): close the body-colour band and frame — the shell select…
Jul 29, 2026
57c3dda
fix(lasuite): violet logo via mask, La Suite-sized app name, and a vi…
Jul 29, 2026
74a9e79
fix(lasuite): style both tertiary spellings, and add a guard for sele…
Jul 30, 2026
86cf604
docs(openspec): lasuite-dark-palette — the theme forces a light inter…
Jul 30, 2026
3e1e0d3
fix(e2e): unblock global-setup — three separate waits hung on signals…
Jul 30, 2026
f525411
fix(lasuite): search is a button, not a text field — three of my own …
Jul 30, 2026
40e7ad2
fix(e2e): parity suite was reporting navigation timeouts as parity fa…
Jul 30, 2026
0dbce48
fix(lasuite): Mail has no outer #content shell — full-bleed rules nev…
Jul 30, 2026
92b4582
fix(lasuite): settle the app-name colour by measurement, and make the…
Jul 30, 2026
0597fb8
fix(lasuite): flip the Nextcloud-facing text variables in dark mode
Jul 30, 2026
95caa69
fix(lasuite): remove Nextcloud's fade gradient from header icons, and…
Jul 30, 2026
2486439
fix(lasuite): --color-text-light means de-emphasised, not white — fiv…
Jul 30, 2026
71046fe
fix(lasuite): remove the brand rail from the settings-dialog navigation
Jul 30, 2026
d0b3049
fix(lasuite): tint the current app's icon to brand violet instead of …
Jul 31, 2026
870db42
fix(ci): composer check:strict has been exiting 1 for weeks — phpmd w…
rubenvdlinde Aug 2, 2026
bc05aab
fix(security): judge every url() on its own scheme instead of asking …
rubenvdlinde Aug 2, 2026
922ebae
fix(ci): make composer check:strict able to fail on tests (#196)
rubenvdlinde Aug 2, 2026
fece1b4
fix(quality): phpmd DevelopmentCodeFragment could never fire on names…
rubenvdlinde Aug 3, 2026
896af77
chore(security): refresh roave/security-advisories guard (2026-03-11 …
rubenvdlinde Aug 3, 2026
abe6b2a
chore(deps): pin @conduction/nextcloud-vue 2.1.0-vue3.17 and unblock …
rubenvdlinde Aug 3, 2026
354af07
ci: bound the sync-tokens job runtime (#201)
rubenvdlinde Aug 3, 2026
2a27a6d
fix(ci): regenerate docs/features.json so Features Check passes (#204)
rubenvdlinde Aug 3, 2026
5d853ab
chore(deps): upgrade @conduction/nextcloud-vue to 3.0.0-vue3.4 (#205)
rubenvdlinde Aug 3, 2026
065effe
fix(apphost): stop one cross-app `extends` from 500ing every nldesign…
rubenvdlinde Aug 4, 2026
43e6b87
ci(e2e): enable the shared Playwright job for nldesign (#206)
rubenvdlinde Aug 4, 2026
c05599c
chore(ci): remove dead Forgejo/Codeberg CI residue (#211)
rubenvdlinde Aug 4, 2026
c6b1117
ci: align workflows with fleet standard (ConductionNL/.github) (#199)
remko48 Aug 4, 2026
366a216
fix(lasuite): theme the ground, so loading shows La Suite grey instea…
Aug 4, 2026
d96c89d
fix(quality): make the skipped-unit-suite green self-documenting (#210)
rubenvdlinde Aug 4, 2026
b5e97a8
chore(deps): @conduction/nextcloud-vue 3.0.0-vue3.6
Aug 4, 2026
090f69b
Merge pull request #213 from ConductionNL/chore/ncvue-vue3.6
rubenvdlinde Aug 4, 2026
9a8877a
ci(quality): enable the Code Quality gates this repo was silently ski…
rubenvdlinde Aug 4, 2026
0484372
fix(lasuite): drop Nextcloud's wallpaper — the login page was still i…
Aug 5, 2026
a3c8843
fix(lasuite): flatten the guest/login surfaces — La Suite has no drop…
Aug 5, 2026
d8dad13
chore(quality): burn PHPMD to true zero and delete the baseline
Aug 5, 2026
c7bb92d
fix(lasuite): keep Nextcloud's container radius instead of the contro…
rubenvdlinde Aug 5, 2026
f3b288f
chore(deps): repin @conduction/nextcloud-vue to 2.2.0-vue3.3 (3.0.0-v…
rubenvdlinde Aug 5, 2026
4cc380f
ci(quality): move hydra-gates-ref v1.0.1 -> v1.3.0, which is what is …
rubenvdlinde Aug 5, 2026
e9c0912
fix(l10n): register the missing "Saved. Reload to see the change." ke…
rubenvdlinde Aug 5, 2026
930ebf0
chore(license): normalise licence declarations to EUPL-1.2 (#224)
rubenvdlinde Aug 5, 2026
9e3bcd2
chore(license): the docs homepage still advertised AGPL-3.0 (#226)
rubenvdlinde Aug 5, 2026
6e59a66
Merge branch 'development' into chore/phpmd-baseline-burndown
rubenvdlinde Aug 5, 2026
16515aa
fix(phpmd): scope the lib/Migration UnusedFormalParameter exclusion t…
rubenvdlinde Aug 5, 2026
4f6ee4d
ci(quality): give main/development push runs their own concurrency la…
rubenvdlinde Aug 6, 2026
2a0125a
ci(quality): move hydra-gates-ref to v1.5.0, the pin the floating wor…
rubenvdlinde Aug 6, 2026
e0de501
fix(ci): compare the coverage ratchet against the measured merge base…
rubenvdlinde Aug 6, 2026
1cc8446
Merge origin/development into development
Aug 6, 2026
10e96ad
chore(ci): stop pinning hydra-gates — track the package at @main (#227)
rubenvdlinde Aug 6, 2026
0f68705
test(e2e): pin the La Suite container-vs-control radius split in a br…
rubenvdlinde Aug 6, 2026
499d98e
ci: publish an installable build of development (#234)
rubenvdlinde Aug 6, 2026
f11f699
fix(security): PHP_CodeSniffer 3.13.5 -> 3.13.6 (CVE-2026-67434, OS c…
rubenvdlinde Aug 6, 2026
0ccad44
fix(deps): squizlabs/php_codesniffer 3.13.5 -> 3.13.6 (CVE-2026-67434…
rubenvdlinde Aug 6, 2026
d7f723c
fix(newman): fixture src paths are relative to the COLLECTION dir, no…
rubenvdlinde Aug 6, 2026
3d5ebaa
fix(e2e): traces that are never written, a cascade that eats 10 verdi…
rubenvdlinde Aug 7, 2026
8e1bfae
ci: drop the stable31 leg — openregister cannot install there (#240)
rubenvdlinde Aug 7, 2026
b323e01
chore: raise the Nextcloud floor to 32 (#241)
rubenvdlinde Aug 7, 2026
3193491
fix: restore the pre-32 Nextcloud floor — CI still runs stable31 (#242)
rubenvdlinde Aug 7, 2026
7b0fade
fix(tests): resolve Newman fixture paths and honour the CI base_url v…
rubenvdlinde Aug 7, 2026
fb44842
fix(e2e): 46 waits that can never resolve — networkidle on a Nextclou…
Aug 8, 2026
3b8e9ba
chore: raise the Nextcloud floor to 32, and make it impossible to dri…
Aug 8, 2026
daeec1a
Merge origin/development — keep development's two-ruleset PHPMD split…
Aug 8, 2026
0aeeeed
Merge pull request #243 from ConductionNL/fix/e2e-networkidle-sweep
rubenvdlinde Aug 8, 2026
2cb956e
fix(spec): 10 @spec anchors pointing into ANOTHER REPO's change direc…
Aug 8, 2026
07693d9
Merge pull request #244 from ConductionNL/chore/nc-floor-32
rubenvdlinde Aug 8, 2026
edb39dc
Merge pull request #217 from ConductionNL/chore/phpmd-baseline-burndown
rubenvdlinde Aug 8, 2026
fcbe743
Merge remote-tracking branch 'origin/development' into fix/spec-anchors
Aug 8, 2026
a9932c3
fix(spec): 2 scenarios I added had no @e2e marker, and 2 pre-existing…
Aug 8, 2026
5c3c550
Merge pull request #245 from ConductionNL/fix/spec-anchors
rubenvdlinde Aug 8, 2026
8bdae46
fix(phpcs): stop the SpecTagSniff instructing the pattern gate-46 rej…
rubenvdlinde Aug 8, 2026
df480d9
fix(a11y): th scope, autocomplete on three config fields, and 81 gene…
rubenvdlinde Aug 9, 2026
acbe3a8
fix(admin): server state via IInitialState, not data-* attributes — a…
rubenvdlinde Aug 9, 2026
60d8aec
fix(a11y): name the three hidden file inputs (#255)
rubenvdlinde Aug 9, 2026
0304556
fix(e2e): wait for the Vue chrome instead of sleeping, and report the…
rubenvdlinde Aug 9, 2026
3f9eeb5
fix(bootstrap): add the ADR-040 OpenRegister autoload prelude before …
rubenvdlinde Aug 9, 2026
ce45344
chore(deps): pin @conduction/nextcloud-vue to 2.2.0-vue3.7
Aug 10, 2026
9e09c8f
Merge pull request #257 from ConductionNL/chore/pin-ncvue-2.2.0-vue3.7
rubenvdlinde Aug 10, 2026
2153e38
chore(deps): pin @conduction/nextcloud-vue to 2.2.0-vue3.9
Aug 10, 2026
e924df1
Merge pull request #258 from ConductionNL/chore/pin-ncvue-2.2.0-vue3.9
rubenvdlinde Aug 10, 2026
73cbb57
fix(e2e): resolve the 29 'dead' lasuite selectors — 2 real defects, 2…
rubenvdlinde Aug 10, 2026
391b59c
fix(a11y): reduced-motion fallbacks that actually win the cascade, + …
rubenvdlinde Aug 10, 2026
702066f
test(gate-19): rendered-palette coverage for dark-mode scope selector…
rubenvdlinde Aug 11, 2026
101869f
test(gate-19): 16 real e2e tests for admin-only enforcement and theme…
rubenvdlinde Aug 11, 2026
5892eff
fix(css): one failing stylesheet layer no longer cancels the rest of …
rubenvdlinde Aug 11, 2026
8e49697
fix(a11y): nldesign no longer adds WCAG AA contrast failures core doe…
rubenvdlinde Aug 11, 2026
d18643f
fix(lasuite): give the unified-search control an NC 32 treatment (#260)
rubenvdlinde Aug 12, 2026
265ff43
chore: adopt Nextcloud's coding standard, .editorconfig and NC 34 (#272)
rubenvdlinde Aug 12, 2026
907a25a
fix(ci): test the whole declared Nextcloud range, not only the ceilin…
rubenvdlinde Aug 12, 2026
3da4f78
chore(quality): point PHPMD at the central ruleset (#275)
rubenvdlinde Aug 12, 2026
f939b14
chore(quality): adopt the central PHPStan base config (#274)
rubenvdlinde Aug 12, 2026
f1f8244
chore(deps): pin @conduction/nextcloud-vue to 2.2.0-vue3.16 (#276)
rubenvdlinde Aug 12, 2026
62a04f1
chore(deps): resolve conduction/hydra-gates v1.7.3 in composer.lock (…
rubenvdlinde Aug 12, 2026
53af54d
fix(ci): point shared workflow calls at a ref that exists (#278)
rubenvdlinde Aug 13, 2026
c5e5aa4
feat(format): adopt Nextcloud's prettier config (#280)
rubenvdlinde Aug 13, 2026
51a1634
ci: enforce prettier via a `format` Frontend Check leg (#281)
rubenvdlinde Aug 13, 2026
6f1ae0d
fix(security): rate-limit the font and health endpoints (#282)
rubenvdlinde Aug 14, 2026
2641485
ci: a branch nobody named got no checks at all (#283)
rubenvdlinde Aug 14, 2026
b2c3f8f
docs(spec): rename this app to themiq
Aug 15, 2026
17c5436
chore(deps): track @conduction/nextcloud-vue ^2.3.0 (#285)
rubenvdlinde Aug 15, 2026
ae96ef6
chore(security): enable the npm supply-chain cooldown on npm 11 (#287)
rubenvdlinde Aug 16, 2026
06f06b6
Merge pull request #284 from ConductionNL/docs/spec-themiq-rename
rubenvdlinde Aug 16, 2026
8b4d40d
fix(coverage-guard): scope the ratchet to the files a change touches
Aug 16, 2026
17f7104
fix(coverage-guard): scope the ratchet to the files a change touches …
rubenvdlinde Aug 16, 2026
924e90f
docs(spec): exclude service-level scenarios from gate-19, naming what…
rubenvdlinde Aug 16, 2026
7b33184
docs(spec): exclude bundle, audit and email scenarios, naming what pr…
rubenvdlinde Aug 16, 2026
9fe66ce
Merge pull request #350 from ConductionNL/fix/gate-19-service-level-s…
rubenvdlinde Aug 16, 2026
20c5929
chore(deps): raise hydra-gates to v1.8.0 so gates 65-84 exist locally
rubenvdlinde Aug 16, 2026
e903aab
Merge pull request #351 from ConductionNL/chore/hydra-gates-1.8.0-lock
rubenvdlinde Aug 16, 2026
f8780fe
feat(tokens): VNG carries its NL Design System component tokens
Aug 16, 2026
c38fd11
fix(tokens): keep vng to ONE flat :root block
Aug 16, 2026
6e2274c
Merge pull request #352 from ConductionNL/feat/vng-component-tokens
rubenvdlinde Aug 16, 2026
eb35a8a
fix(dark-mode): resolve var() aliases before deriving, and honour the…
rubenvdlinde Aug 16, 2026
c8186f4
fix(phpcs): clear the 17 PHPCS errors the shared gate was swallowing …
rubenvdlinde Aug 17, 2026
2e2b7a8
feat(tokens): Conduction 2026, built from identity.conduction.nl and …
Aug 17, 2026
51d58bc
feat(tokens): a La Franken municipal set, and the shape tokens Conduc…
Aug 17, 2026
7d149f0
chore(deps): add composer cooldown to dependabot.yml (#356)
rubenvdlinde Aug 17, 2026
0f44bac
feat(tokens): one public-renderer bridge for all 46 sets, and drop an…
Aug 17, 2026
8777389
feat(tokens): La Frankendesk as a delta of La Suite, and one real Inter
Aug 17, 2026
672bb13
fix(tokens): card icon geometry measured, not estimated
Aug 17, 2026
edad652
feat(tokens): the Conduction hero, measured end to end
Aug 17, 2026
5352af0
feat(tokens): the Conduction hero's icon tile and honeycomb
Aug 17, 2026
983babb
feat(tokens): footer geometry for both sets, remeasured
Aug 17, 2026
6ff7344
feat(tokens): the canal scene's colours and bands
Aug 17, 2026
78f2856
feat(tokens): header chrome, canal vessels, and a corrected content c…
Aug 17, 2026
45a561d
docs: public portals are a second consumer, and they behave differently
Aug 18, 2026
35e0a08
fix(tokens): logo URLs resolve under custom_apps, plus the Conduction…
Aug 18, 2026
f427c9d
chore(tokens): regenerated dark variants — 100 component tokens per t…
Aug 18, 2026
5ea7bad
Merge remote-tracking branch 'origin/development' into feat/dark-comp…
Aug 19, 2026
f8f7ae3
fix(tokens): the five failures the conflict was hiding
Aug 19, 2026
a7df0e8
fix(tokens): the rijkshuisstijl logo path 404'd, and the 404 was the …
Aug 19, 2026
e90b437
test(css): the token-set override must load AFTER the shared element …
Aug 19, 2026
f397c3f
fix(logo): a relative url() in a custom property resolves at the USE …
Aug 19, 2026
2a46e3a
Merge pull request #358 from ConductionNL/feat/dark-component-tokens-…
rubenvdlinde Aug 19, 2026
4c1dad3
fix(tokens): regenerate dark variants — three themes were missing 88 …
Aug 19, 2026
f1490d6
Merge pull request #359 from ConductionNL/fix/dark-tokens-regenerate-…
rubenvdlinde Aug 19, 2026
12ecd39
style(phpcs): clear the one phpcs ERROR (inline comment capitalisatio…
rubenvdlinde Aug 19, 2026
fe2369b
Merge pull request #357 from ConductionNL/docs/portal-consumer
rubenvdlinde Aug 19, 2026
f326bf8
Merge remote-tracking branch 'origin/development' into feat/conductio…
juanclaude-conduction Aug 19, 2026
36f9532
chore(deps): take hydra-gates v1.8.1 — the contract v1.8.0 shipped br…
juanclaude-conduction Aug 20, 2026
7e717eb
Merge pull request #355 from ConductionNL/feat/conduction-2026-tokens
rubenvdlinde Aug 20, 2026
f3dad3b
feat(rotterdam): a token set that actually reaches the components
Aug 20, 2026
71e3812
Merge pull request #362 from ConductionNL/chore/hydra-gates-v1.8.1
rubenvdlinde Aug 20, 2026
6d37d65
fix(rotterdam): headings wore the basis layer's placeholder typeface
Aug 20, 2026
b10ad20
Merge pull request #363 from ConductionNL/feat/rotterdam-token-set-bu…
rubenvdlinde Aug 20, 2026
164ad6b
chore(deps): take @conduction/nextcloud-vue 2.8.2 (was 2.3.0)
juanclaude-conduction Aug 20, 2026
3611f02
Merge pull request #364 from ConductionNL/chore/nc-vue-2.8.2
rubenvdlinde Aug 20, 2026
7ade0b3
feat(opencatalogi): a token set captured from the site it has to match
Aug 20, 2026
f058bfe
fix(opencatalogi): a capture from a descendant hoists tokens the site…
Aug 20, 2026
8316f26
fix(opencatalogi): satisfy the inventory guards a new token set trips
Aug 20, 2026
3141c58
Merge pull request #45 from ConductionNL/development
rubenvdlinde Aug 20, 2026
ebe907c
Merge pull request #365 from ConductionNL/feat/opencatalogi-token-set
rubenvdlinde Aug 20, 2026
86bd321
Merge pull request #366 from ConductionNL/development
rubenvdlinde Aug 20, 2026
eed8553
chore(appinfo): bump version to 1.1.0 and point the forge links at Gi…
Aug 21, 2026
fcff294
Merge pull request #367 from ConductionNL/chore/version-and-forge-links
rubenvdlinde Aug 21, 2026
6e16dad
Merge pull request #368 from ConductionNL/development
rubenvdlinde Aug 21, 2026
31412c3
ci: adopt the unified release workflow, retiring the legacy trio
Aug 21, 2026
4cd9880
Merge pull request #369 from ConductionNL/ci/adopt-unified-release
rubenvdlinde Aug 21, 2026
19fe748
ci(release): declare least-privilege permissions on the release caller
Aug 21, 2026
0a571d9
chore(deps): clear the critical and all nine high audit findings (#372)
rubenvdlinde Aug 21, 2026
789ca92
Merge pull request #373 from ConductionNL/ci/release-explicit-permiss…
rubenvdlinde Aug 21, 2026
66dacb9
Merge pull request #370 from ConductionNL/development
rubenvdlinde Aug 21, 2026
b6aed6e
chore(quality): migrate to PHPStan 2 (and hydra-gates 1.8.2) (#378)
rubenvdlinde Aug 21, 2026
26f4453
chore(deps): refresh the shared Conduction locks (#376)
rubenvdlinde Aug 21, 2026
770ee96
fix(ci): give dispatched runs their own concurrency lane (#382)
rubenvdlinde Aug 21, 2026
cd40c91
chore(deps): refresh the shared Conduction locks (#384)
rubenvdlinde Aug 22, 2026
b7b65de
feat: rename the app id from nldesign to thematiq, freezing the desig…
rubenvdlinde Aug 23, 2026
168efa3
fix(docs): point the repository CTA at GitHub, not Codeberg (#389)
rubenvdlinde Aug 23, 2026
2fefdc6
feat(docs): move the docs host nldesign.conduction.nl -> thematiq.con…
rubenvdlinde Aug 24, 2026
4239b15
chore(deps): refresh the shared Conduction locks (#393)
rubenvdlinde Aug 24, 2026
b512881
fix(repair): move OpenRegister schemas from nldesign onto the themati…
rubenvdlinde Aug 24, 2026
bbe72a6
fix: build the three repair steps info.xml declared but never shipped…
rubenvdlinde Aug 24, 2026
4cd9df8
fix(docs): publish from development, to the worker that actually serv…
rubenvdlinde Aug 24, 2026
fca44ee
docs: rename the app to Thematiq, keep the NL Design System as-is (#400)
rubenvdlinde Aug 24, 2026
0c0f5b2
The government checklist named the wrong source host (#402)
rubenvdlinde Aug 24, 2026
67a7843
fix: repoint stale Codeberg links to GitHub (#396)
rubenvdlinde Aug 24, 2026
361ba21
fix(docs): pass secrets to the reusable documentation workflow (#406)
rubenvdlinde Aug 24, 2026
85d6156
fix(cache): rejoin the WCAG cache the rename split in two (#408)
rubenvdlinde Aug 24, 2026
b57fd9a
chore(ci): remove dead Forgejo/Codeberg CI configuration (#412)
rubenvdlinde Aug 24, 2026
752ae4b
fix(docs): map the Cloudflare secrets from the names that actually ex…
rubenvdlinde Aug 24, 2026
99fe254
ci(quality): give every event its own concurrency lane, not just main…
rubenvdlinde Aug 25, 2026
2bcd96b
Release: merge development into beta (#379)
github-actions[bot] Aug 26, 2026
ffa7276
chore(ci): take the canonical coverage-guard from ConductionNL/.githu…
rubenvdlinde Aug 27, 2026
cf00d99
perf(ci): one Code Quality run per commit, not two (#423)
rubenvdlinde Aug 27, 2026
7261c8b
fix(release): name nldesign as this app's previous App Store id (#422)
rubenvdlinde Aug 27, 2026
3cedc6d
chore(deps): hydra-gates 1.10, so the E2E skip-discipline gate can ru…
rubenvdlinde Aug 28, 2026
bdc8506
fix(ci): a push to development must reach a verdict here too (#428)
rubenvdlinde Aug 28, 2026
5c952db
docs: add a local demo environment (#430)
rubenvdlinde Aug 28, 2026
627e904
docs: make the demo verification command actually pass (#432)
rubenvdlinde Aug 28, 2026
d03df78
chore(deps): @conduction/nextcloud-vue 2.15.0 -> 2.22.1 (#436)
rubenvdlinde Aug 29, 2026
0940768
Merge beta into development — development is newer on all four conflicts
Aug 29, 2026
c3ef57b
Merge pull request #420 from ConductionNL/development
rubenvdlinde Aug 29, 2026
dec21e7
Merge main into beta — beta supersedes main on every conflicting file
Aug 29, 2026
03a5bd1
Merge pull request #438 from ConductionNL/chore/resolve-beta-main-pro…
rubenvdlinde Aug 29, 2026
08b03ea
chore(release): 1.1.1-unstable.20260829100924 (#439)
github-actions[bot] Aug 29, 2026
022e335
ci(docs): publish from development, and retire the old hostname (#442)
rubenvdlinde Aug 29, 2026
cc29e71
chore(release): 1.1.2-unstable.20260829125748 (#444)
github-actions[bot] Aug 29, 2026
75602aa
chore(deps-dev): Bump @cyclonedx/cyclonedx-npm from 5.0.0 to 6.0.1 (#…
dependabot[bot] Aug 30, 2026
c261e48
chore(deps-dev): Bump @vitest/coverage-v8 from 3.2.7 to 4.1.11 (#456)
dependabot[bot] Aug 30, 2026
991c7ae
chore(tokens): regenerate the opencatalogi dark palette provenance (#…
rubenvdlinde Aug 30, 2026
4ed10d8
chore(deps-dev): Bump typescript from 6.0.3 to 7.0.2 (#455)
dependabot[bot] Aug 30, 2026
dd5b2d6
chore(deps-dev): Bump squizlabs/php_codesniffer from 3.13.6 to 4.0.4 …
dependabot[bot] Aug 30, 2026
4f588c8
chore(deps-dev): Bump phpcsstandards/phpcsextra from 1.5.0 to 1.5.1 (…
dependabot[bot] Aug 30, 2026
6042782
Merge remote-tracking branch 'origin/feat/docs-host-to-thematiq' into…
rubenvdlinde Aug 30, 2026
b3e6686
chore(deps-dev): Bump jsdom from 29.1.1 to 30.0.1 (#450)
dependabot[bot] Aug 30, 2026
90a946f
chore(deps-dev): Bump phpstan/phpstan from 2.2.8 to 2.2.9 (#449)
dependabot[bot] Aug 30, 2026
a6f58b6
chore(deps-dev): Bump nextcloud/ocp from 34.0.2 to 34.0.3 (#448)
dependabot[bot] Aug 30, 2026
46a290f
chore(deps-dev): Bump phpmetrics/phpmetrics from 2.9.1 to 2.11.0 (#447)
dependabot[bot] Aug 30, 2026
5da58b8
chore(deps-dev): Bump twig/twig from 3.27.0 to 3.28.0 (#446)
dependabot[bot] Aug 30, 2026
a94e07f
chore(sync): carry main back into beta
rubenvdlinde Aug 30, 2026
003d154
Merge pull request #461 from ConductionNL/sync/main-to-beta-202608300…
rubenvdlinde Aug 30, 2026
66ff78a
chore(sync): carry beta back into development
rubenvdlinde Aug 30, 2026
c5c779a
chore(sync): carry beta back into development
Aug 30, 2026
e513de0
Merge pull request #462 from ConductionNL/sync/beta-to-development-20…
rubenvdlinde Aug 30, 2026
0627022
Merge pull request #464 from ConductionNL/sync/beta-to-development-20…
rubenvdlinde Aug 30, 2026
f02386d
chore(release): 1.1.3-unstable.20260830084017 (#463)
github-actions[bot] Aug 30, 2026
ad6c85c
Merge pull request #443 from ConductionNL/development
rubenvdlinde Aug 30, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
1 change: 1 addition & 0 deletions .coverage-baseline
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
77.48
36 changes: 36 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# https://editorconfig.org

# SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later

root = true

[*]
charset = utf-8
end_of_line = lf
indent_size = 4
indent_style = tab
insert_final_newline = true
trim_trailing_whitespace = true

[*.yml]
indent_size = 2
indent_style = space

[*.md]
trim_trailing_whitespace = false

[*.svg]
insert_final_newline = false

[package*.json]
indent_size = 2
indent_style = space

[build/psalm-baseline.xml]
indent_size = 2
indent_style = space

[config/*config.php]
indent_size = 2
indent_style = space
16 changes: 16 additions & 0 deletions .git-blame-ignore-revs
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Revisions to skip in `git blame`.
#
# Enable locally, once:
# git config blame.ignoreRevsFile .git-blame-ignore-revs
#
# GitHub reads this file automatically. Your terminal does not, until you run
# the line above.
#
# Only ever add commits that change formatting and NOTHING else. A commit listed
# here becomes invisible to blame, so a behaviour change hidden inside one would
# be very hard to find later.

# style: reformat with nextcloud/coding-standard — whitespace only
# The fleet-wide move from a PEAR-derived PHPCS ruleset (4 spaces, next-line
# braces) to Nextcloud's own standard (tabs, same-line braces).
8c0f6b88526fb3fc9d0c3a885b3392a20382c7e6
38 changes: 38 additions & 0 deletions .githooks/pre-commit
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
#!/bin/sh
# Committed pre-commit hook (activated via `git config core.hooksPath .githooks`,
# which `npm install` / `composer install` set automatically — see package.json
# "prepare" and composer.json "post-install-cmd").
#
# Regenerates docs/features.json whenever staged changes touch openspec/specs/
# or the features overlay, so the commercial capability list can never go
# stale. CI (features-check / features-extract) only VERIFIES — generation
# happens here, before the commit, never in the pipeline.
#
# Best-effort by design: any failure only warns and never blocks the commit —
# the CI gate is the enforcement backstop.

if git diff --cached --name-only | grep -qE "^openspec/(specs/|features\.overlay\.json)"; then
CACHE=".git/extract-features.py"
# Fetch the canonical script (single source of truth in ConductionNL/.github);
# fall back to a previously cached copy when offline.
curl -sf --max-time 10 \
https://raw.githubusercontent.com/ConductionNL/.github/main/scripts/extract-features.py \
-o "$CACHE" 2>/dev/null || true

if [ -f "$CACHE" ]; then
if command -v python3 >/dev/null 2>&1; then PY="python3";
elif command -v py >/dev/null 2>&1; then PY="py -3";
else PY="python"; fi

if $PY "$CACHE" --app-root . >/dev/null 2>&1; then
git add docs/features.json
echo "pre-commit: docs/features.json regenerated from openspec/specs/."
else
echo "pre-commit: WARNING — could not regenerate docs/features.json (python or pyyaml missing?). CI features-check will verify." >&2
fi
else
echo "pre-commit: WARNING — could not fetch extract-features.py (offline?). CI features-check will verify." >&2
fi
fi

exit 0
65 changes: 65 additions & 0 deletions .github/docker-compose.ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
# Minimal docker-compose stack for the LIVE-NC CI gate (tests-live.yml).
#
# Brings up Postgres + a fresh Nextcloud. The app under test (and its
# OpenRegister data backend) are NOT bind-mounted — the tests-live.yml
# workflow deploys them into the named volume after install completes
# (bind-mounting custom_apps subdirs at compose-up leaves /var/www/html/apps
# unwritable and the NC installer bails with "Cannot write into apps
# directory"). This file is therefore app-agnostic; it is a per-app copy of
# openregister/.github/docker-compose.ci.yml so the live gate is self-contained
# in each repo's CI checkout.
#
# Paths are relative to this file: `..` resolves to the repo root.
#
# SPDX-License-Identifier: EUPL-1.2
# SPDX-FileCopyrightText: 2026 Conduction B.V. <info@conduction.nl>

volumes:
nextcloud-data:

services:
db:
image: pgvector/pgvector:pg16
container_name: nldesign-ci-db
environment:
POSTGRES_DB: nextcloud
POSTGRES_USER: nextcloud
POSTGRES_PASSWORD: nextcloud
healthcheck:
test: ["CMD-SHELL", "pg_isready -U nextcloud -d nextcloud"]
interval: 5s
timeout: 5s
retries: 12

nextcloud:
# NC 32 — within every target app's info.xml min/max-version window and
# matches the openregister reference rig.
image: nextcloud:32-apache
container_name: nextcloud
user: root
restart: unless-stopped
ports:
- "8080:80"
depends_on:
db:
condition: service_healthy
volumes:
# Named volume only — let the official entrypoint fully bootstrap without
# bind-mount interference; the app + openregister are copied in by the
# workflow after install.
- nextcloud-data:/var/www/html:rw
environment:
POSTGRES_DB: nextcloud
POSTGRES_USER: nextcloud
POSTGRES_PASSWORD: nextcloud
POSTGRES_HOST: db
NEXTCLOUD_ADMIN_USER: admin
NEXTCLOUD_ADMIN_PASSWORD: admin
NEXTCLOUD_TRUSTED_DOMAINS: localhost nextcloud
PHP_MEMORY_LIMIT: 2G
PHP_UPLOAD_LIMIT: 1G
PHP_POST_MAX_SIZE: 1G

networks:
default:
name: nldesign-ci-network
56 changes: 0 additions & 56 deletions .github/workflows/branch-policy.yml

This file was deleted.

11 changes: 11 additions & 0 deletions .github/workflows/branch-protection.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
name: Branch Protection

on:
pull_request:
branches: [main, beta]

permissions: {}

jobs:
branch-protection:
uses: ConductionNL/.github/.github/workflows/branch-protection.yml@main
Loading
Loading