Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
584f0ed
chore(release): 0.2.3-unstable.20260912202721
github-actions[bot] Sep 12, 2026
d8f63b3
Merge pull request #1025 from ConductionNL/release/v0.2.3-unstable.20…
rubenvdlinde Sep 13, 2026
e7b8cd7
chore(sync): carry beta back into development
github-actions[bot] Sep 13, 2026
e78ec44
Merge pull request #1029 from ConductionNL/sync/beta-to-development-2…
rubenvdlinde Sep 13, 2026
a8a66d0
feat(integrations): show stackiq's connections through integriq's reg…
rubenvdlinde Sep 14, 2026
7828663
fix(tests): format the connection-registry files and read info.xml as…
rubenvdlinde Sep 16, 2026
60142ce
fix(tests): initialise connectionReports on the reflection-built cont…
rubenvdlinde Sep 16, 2026
45f4d2a
fix(schemas): drop a stray licence key so the module schema imports a…
rubenvdlinde Sep 16, 2026
f66ddcf
feat(connections): federation and EOL sync read Switched off, and the…
rubenvdlinde Sep 16, 2026
07352a4
fix(e2e): find connection rows by their cell, not by an anchored row …
rubenvdlinde Sep 16, 2026
24ebea1
chore(deps-dev): bump eslint from 10.9.1 to 10.10.0 (#1047)
dependabot[bot] Sep 18, 2026
f5f9e30
chore(deps): bump zod from 4.5.4 to 4.6.5 (#1046)
dependabot[bot] Sep 18, 2026
6aa6292
chore(deps): bump gridstack from 13.2.0 to 13.3.0 (#1045)
dependabot[bot] Sep 18, 2026
0d5bf06
chore(deps): bump dexie from 4.4.5 to 4.4.6 (#1041)
dependabot[bot] Sep 18, 2026
9a70ea2
fix(routes): two entries shared a route name, so one route never regi…
rubenvdlinde Sep 19, 2026
da5c86a
chore(deps): move nextcloud-vue back to the 2.x line
rubenvdlinde Sep 22, 2026
c9760e0
Merge pull request #1070 from ConductionNL/chore/nextcloud-vue-back-t…
rubenvdlinde Sep 23, 2026
b81b532
feat(parity): start stackiq's capability matrix (work in progress)
rubenvdlinde Sep 25, 2026
67f6408
feat(parity): rate stackiq's own column from the code
rubenvdlinde Sep 25, 2026
38b9938
Merge pull request #1072 from ConductionNL/feat/parity-capability-matrix
rubenvdlinde Sep 25, 2026
22466d6
fix(parity): apply cross-lane corrections to the capability matrix
rubenvdlinde Sep 26, 2026
b8e7db0
Merge pull request #1088 from ConductionNL/fix/parity-cross-lane-corr…
rubenvdlinde Sep 26, 2026
511d78e
chore(parity): fold r-glpi packs 1-2 (GLPI source read at 11.0.9)
rubenvdlinde Sep 26, 2026
913f72f
chore(parity): fold r-glpi packs 3-7 and errata
rubenvdlinde Sep 26, 2026
f46affc
chore(parity): fold r-docs-a (VNG Softwarecatalogus and TOPdesk, publ…
rubenvdlinde Sep 26, 2026
cca6e68
chore(parity): apply r-glpi errata, land-demo-data no to partial
rubenvdlinde Sep 26, 2026
ca32289
chore(parity): record the GLPI 11.0.9 lab drive on 26 cells
rubenvdlinde Sep 26, 2026
5c52326
chore(parity): glpi driven at 11.0.9, VNG and TOPdesk read 2026-09-26…
rubenvdlinde Sep 26, 2026
2540bde
feat(parity): 31 demand rows mined from tenders, feature requests, ro…
rubenvdlinde Sep 26, 2026
5e4f50b
chore(parity): back-fill VNG and TOPdesk on the 31 demand rows
rubenvdlinde Sep 26, 2026
69ef74e
chore(parity): back-fill GLPI on the demand rows from source at 11.0.9
rubenvdlinde Sep 26, 2026
4d6fb66
feat(parity): LeanIX and BlueDolphin read 2026-09-26, 11 more demand …
rubenvdlinde Sep 26, 2026
1a807f8
chore(parity): batch-2 back-fill VNG and TOPdesk
rubenvdlinde Sep 26, 2026
e331962
chore(parity): batch-2 back-fill GLPI
rubenvdlinde Sep 26, 2026
86c5c6a
Merge pull request #1090 from ConductionNL/parity/wave5-competitor-so…
rubenvdlinde Sep 26, 2026
49e65cb
chore(deps): move @conduction/nextcloud-vue to 2.57.1 (Dexie loads on…
rubenvdlinde Sep 27, 2026
9a5ece6
docs(openspec): OpenSpec pass batch 1, landscape and connections chan…
rubenvdlinde Sep 27, 2026
e2d38aa
docs(openspec): OpenSpec pass batch 2, architecture and lifecycle cha…
rubenvdlinde Sep 27, 2026
a0afae7
docs(openspec): OpenSpec pass batch 3, contracts, insight, operations…
rubenvdlinde Sep 27, 2026
d22033a
docs(parity): set 5 sibling rows from the OpenSpec pass (#1143)
rubenvdlinde Sep 28, 2026
7ca2cc0
docs(parity): corrections round 8, 7 rows re-read against their issue…
rubenvdlinde Sep 28, 2026
cab7bc3
fix(settings): read the saved organisation admin groups back (#1136) …
rubenvdlinde Sep 28, 2026
d4566ec
fix(views): read a single view with OpenRegister's checks on, and sco…
rubenvdlinde Sep 28, 2026
1103ab8
fix(roles): map the English organisation types to role groups (#1137)…
rubenvdlinde Sep 28, 2026
c04511f
fix(progress): keep operation progress in the distributed cache, read…
rubenvdlinde Sep 28, 2026
2666a36
fix(register): lifecycle states of four schemas use the enum values (…
rubenvdlinde Sep 28, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 8 additions & 1 deletion .github/workflows/code-quality.yml
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,14 @@ jobs:
# object API directly (tests/e2e/workflows/_fixtures.ts), so testing
# against `main` measures a different backend than the one this app is
# written for. Pinned to `development` to match.
additional-apps: '[{"repo":"ConductionNL/openregister","app":"openregister","ref":"development"}]'
#
# integriq is here because the Integrations page reads integriq's
# `app_connection` rows (adopt-connection-registry). Without it the page
# shows the missing-dependency screen and
# `tests/e2e/workflows/integrations-page.spec.ts` fails on every run.
# `app` is `integriq`, verified in its appinfo/info.xml on `development`
# on 2026-09-14.
additional-apps: '[{"repo":"ConductionNL/openregister","app":"openregister","ref":"development"},{"repo":"ConductionNL/integriq","app":"integriq","ref":"development"}]'
# Newman disabled: tests/magic-mapper-import.postman_collection.json was
# written against a dev env with URL rewriting + a fixed disk layout — it
# hits bare paths like `/configurations` and uploads files from
Expand Down
2 changes: 1 addition & 1 deletion appinfo/info.xml
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ Vrij en open source onder de EUPL-licentie.

**Ondersteuning:** Voor ondersteuning, neem contact op via support@conduction.nl. Voor een Service Level Agreement (SLA), neem contact op via sales@conduction.nl.
]]></description>
<version>0.2.2-unstable.20260910105110</version>
<version>0.2.3-unstable.20260912202721</version>
<licence>EUPL-1.2</licence>
<author mail="info@conduction.nl" homepage="https://www.conduction.nl/">Conduction</author>
<namespace>Stackiq</namespace>
Expand Down
7 changes: 6 additions & 1 deletion appinfo/routes.php
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,12 @@
// ArchiMate focused endpoints
['name' => 'settings#getArchiMateConfig', 'url' => '/api/archimate/config', 'verb' => 'GET'],
['name' => 'settings#updateArchiMateConfig', 'url' => '/api/archimate/config', 'verb' => 'POST'],
['name' => 'settings#getArchiMateConfig', 'url' => '/api/archimate/status', 'verb' => 'GET'],
// A route name carries no URL, so without a 'postfix' this entry and the
// GET '/api/archimate/config' one above register under the same name and
// only the last declared survives. This one won on line order, which left
// the config read a 404 and made the store's polling endpoint depend on
// nothing but the order of these two lines.
['name' => 'settings#getArchiMateConfig', 'url' => '/api/archimate/status', 'verb' => 'GET', 'postfix' => 'Status'],

// Email focused endpoints
['name' => 'settings#getEmailConfig', 'url' => '/api/email/config', 'verb' => 'GET'],
Expand Down
15 changes: 14 additions & 1 deletion l10n/en.js
Original file line number Diff line number Diff line change
Expand Up @@ -704,7 +704,20 @@ OC.L10N.register(
"xmlns": "xmlns",
"xsi": "xsi",
"Pre-filled with the names the Integriq endoflife-date-source change provisions. Change them if your instance uses different names, no code change required.": "Pre-filled with the names the Integriq endoflife-date-source change provisions. Change them if your instance uses different names, no code change required.",
"the configured register or schema could not be found. Is the Integriq endoflife-date-source change installed?": "the configured register or schema could not be found. Is the Integriq endoflife-date-source change installed?"
"the configured register or schema could not be found. Is the Integriq endoflife-date-source change installed?": "the configured register or schema could not be found. Is the Integriq endoflife-date-source change installed?",
"Integrations": "Integrations",
"Status message": "Status message",
"Last checked": "Last checked",
"All connections": "All connections",
"Add integration": "Add integration",
"Open settings": "Open settings",
"Configured": "Configured",
"Limited": "Limited",
"Not configured": "Not configured",
"Simulated": "Simulated",
"Not available": "Not available",
"Error": "Error",
"Settings": "Settings"
},
"nplurals=2; plural=(n != 1);"
)
15 changes: 14 additions & 1 deletion l10n/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -703,6 +703,19 @@
"xmlns": "xmlns",
"xsi": "xsi",
"Pre-filled with the names the Integriq endoflife-date-source change provisions. Change them if your instance uses different names, no code change required.": "Pre-filled with the names the Integriq endoflife-date-source change provisions. Change them if your instance uses different names, no code change required.",
"the configured register or schema could not be found. Is the Integriq endoflife-date-source change installed?": "the configured register or schema could not be found. Is the Integriq endoflife-date-source change installed?"
"the configured register or schema could not be found. Is the Integriq endoflife-date-source change installed?": "the configured register or schema could not be found. Is the Integriq endoflife-date-source change installed?",
"Integrations": "Integrations",
"Status message": "Status message",
"Last checked": "Last checked",
"All connections": "All connections",
"Add integration": "Add integration",
"Open settings": "Open settings",
"Configured": "Configured",
"Limited": "Limited",
"Not configured": "Not configured",
"Simulated": "Simulated",
"Not available": "Not available",
"Error": "Error",
"Settings": "Settings"
}
}
15 changes: 14 additions & 1 deletion l10n/nl.js
Original file line number Diff line number Diff line change
Expand Up @@ -777,7 +777,20 @@ OC.L10N.register(
"xmlns": "xmlns",
"xsi": "xsi",
"Pre-filled with the names the Integriq endoflife-date-source change provisions. Change them if your instance uses different names, no code change required.": "Vooraf ingevuld met de namen die de Integriq-wijziging endoflife-date-source aanmaakt. Wijzig ze als uw omgeving andere namen gebruikt, geen codewijziging nodig.",
"the configured register or schema could not be found. Is the Integriq endoflife-date-source change installed?": "het geconfigureerde register of schema kon niet worden gevonden. Is de Integriq-wijziging endoflife-date-source geïnstalleerd?"
"the configured register or schema could not be found. Is the Integriq endoflife-date-source change installed?": "het geconfigureerde register of schema kon niet worden gevonden. Is de Integriq-wijziging endoflife-date-source geïnstalleerd?",
"Integrations": "Koppelingen",
"Status message": "Statusbericht",
"Last checked": "Laatst gecontroleerd",
"All connections": "Alle verbindingen",
"Add integration": "Integratie toevoegen",
"Open settings": "Instellingen openen",
"Configured": "Ingericht",
"Limited": "Beperkt",
"Not configured": "Niet geconfigureerd",
"Simulated": "Gesimuleerd",
"Not available": "Niet beschikbaar",
"Error": "Fout",
"Settings": "Instellingen"
},
"nplurals=2; plural=(n != 1);"
)
15 changes: 14 additions & 1 deletion l10n/nl.json
Original file line number Diff line number Diff line change
Expand Up @@ -776,6 +776,19 @@
"xmlns": "xmlns",
"xsi": "xsi",
"Pre-filled with the names the Integriq endoflife-date-source change provisions. Change them if your instance uses different names, no code change required.": "Vooraf ingevuld met de namen die de Integriq-wijziging endoflife-date-source aanmaakt. Wijzig ze als uw omgeving andere namen gebruikt, geen codewijziging nodig.",
"the configured register or schema could not be found. Is the Integriq endoflife-date-source change installed?": "het geconfigureerde register of schema kon niet worden gevonden. Is de Integriq-wijziging endoflife-date-source geïnstalleerd?"
"the configured register or schema could not be found. Is the Integriq endoflife-date-source change installed?": "het geconfigureerde register of schema kon niet worden gevonden. Is de Integriq-wijziging endoflife-date-source geïnstalleerd?",
"Integrations": "Koppelingen",
"Status message": "Statusbericht",
"Last checked": "Laatst gecontroleerd",
"All connections": "Alle verbindingen",
"Add integration": "Integratie toevoegen",
"Open settings": "Instellingen openen",
"Configured": "Ingericht",
"Limited": "Beperkt",
"Not configured": "Niet geconfigureerd",
"Simulated": "Gesimuleerd",
"Not available": "Niet beschikbaar",
"Error": "Fout",
"Settings": "Instellingen"
}
}
14 changes: 11 additions & 3 deletions lib/AppInfo/Application.php
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@
use OCA\Stackiq\Service\ArchiMateExportService;
use OCA\Stackiq\Service\ArchiMateImportService;
use OCA\Stackiq\Service\ArchiMateService;
use OCA\Stackiq\Service\ConnectionReportService;
use OCA\Stackiq\Service\ContactpersoonService;
use OCA\Stackiq\Service\ContractApprovalService;
use OCA\Stackiq\Service\ContractStatusService;
Expand Down Expand Up @@ -593,7 +594,8 @@ function ($container) {
ProgressTracker::class,
function ($container) {
return new ProgressTracker(
session: $container->get('OCP\ISession'),
cacheFactory: $container->get(ICacheFactory::class),
userSession: $container->get('OCP\IUserSession'),
logger: $container->get('Psr\Log\LoggerInterface')
);
}
Expand Down Expand Up @@ -674,7 +676,11 @@ function ($container) {
config: $container->get(FederationConfig::class),
merger: $container->get(FederationMerger::class),
settingsService: $container->get(SettingsService::class),
logger: $container->get(LoggerInterface::class)
logger: $container->get(LoggerInterface::class),
// The integriq connection report (adopt-connection-registry). Passed by
// name: this factory is hand-built, so the constructor default of null
// would otherwise switch every federation report off without a sound.
connectionReports: $container->get(ConnectionReportService::class)
);
}
);
Expand Down Expand Up @@ -706,7 +712,9 @@ function ($container) {
settingsService: $container->get(SettingsService::class),
matcher: $container->get(EolMatcherService::class),
timeFactory: $container->get('OCP\AppFramework\Utility\ITimeFactory'),
logger: $container->get(LoggerInterface::class)
logger: $container->get(LoggerInterface::class),
// Same reason as the FederationService factory above.
connectionReports: $container->get(ConnectionReportService::class)
);
}
);
Expand Down
Loading
Loading