jmiller
8eb296115c
chore: sync ci-generic.yml from Template-Generic [skip ci]
2026-07-04 20:23:01 +00:00
jmiller
440aaff550
chore: sync pr-check.yml from Template-Generic [skip ci]
2026-07-04 19:38:48 +00:00
jmiller
5ede6f05f6
chore: sync ci-generic.yml from Template-Generic [skip ci]
2026-07-04 19:38:47 +00:00
jmiller
c0aab4873e
chore: sync branch-cleanup.yml from Template-Generic [skip ci]
2026-07-04 19:38:45 +00:00
jmiller
585b156b84
chore: sync sync-on-merge.yml from Template-Generic [skip ci]
2026-07-04 19:06:14 +00:00
jmiller
513efe57f9
chore: sync pre-release.yml from Template-Generic [skip ci]
2026-07-04 19:06:13 +00:00
jmiller
23ae4de3fa
chore: sync pr-check.yml from Template-Generic [skip ci]
2026-07-04 19:06:11 +00:00
jmiller
b3e9cb33dd
chore: sync notify.yml from Template-Generic [skip ci]
2026-07-04 19:06:10 +00:00
jmiller
e19bda1a39
chore: sync cleanup.yml from Template-Generic [skip ci]
2026-07-04 19:06:09 +00:00
jmiller
54ba0828c5
chore: sync ci-generic.yml from Template-Generic [skip ci]
2026-07-04 19:06:07 +00:00
jmiller
a26a831460
chore: sync auto-release.yml from Template-Generic [skip ci]
2026-07-04 19:06:05 +00:00
jmiller
73bd957808
chore: sync issue-branch.yml from Template-Generic [skip ci]
2026-06-29 16:51:19 +00:00
gitea-actions[bot]
faf65c5d9c
chore: promote changelog [Unreleased] → [01.07.00]
2026-06-29 16:27:41 +00:00
gitea-actions[bot]
a038e43a3c
chore(release): build 01.07.00 [skip ci]
stable
2026-06-29 16:27:35 +00:00
jmiller
b93ce7b872
Release: promote dev → main — v01.06.x cycle (dashboard, edit UI, ACL, security, forward-compat)
2026-06-29 16:27:20 +00:00
gitea-actions[bot]
320b842c6e
chore(version): pre-release bump to 01.06.13-dev [skip ci]
Universal: Build & Release / Promote to RC (pull_request) Has been skipped
Universal: Build & Release / Build & Release Pipeline (pull_request) Successful in 20s
Branch Cleanup / Delete merged branch (pull_request) Has been skipped
RC Revert / Rename rc/ back to dev/ (pull_request) Has been skipped
Universal: Workflow Sync Trigger / Sync workflows to live repos (pull_request) Failing after 3m3s
2026-06-29 16:26:31 +00:00
gitea-actions[bot]
47f073539a
chore(version): auto-bump patch 01.06.12-dev [skip ci]
2026-06-29 16:26:22 +00:00
jmiller
36c37c8e67
Merge origin/main into dev — resync 01.06.00 release chores before promotion
Universal: Auto Version Bump / Version Bump (push) Successful in 7s
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 11s
2026-06-29 11:25:28 -05:00
gitea-actions[bot]
e7d0395be0
chore(version): pre-release bump to 01.06.11-dev [skip ci]
2026-06-29 16:01:33 +00:00
jmiller
2e45d7ea5a
Merge pull request 'docs: CHANGELOG + README for the current development cycle' ( #114 ) from docs/session-updates into dev
Universal: Auto Version Bump / Version Bump (push) Has been skipped
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 18s
2026-06-29 16:01:13 +00:00
jmiller
0a5e2b94e2
docs: update CHANGELOG and README for this development cycle
...
Universal: PR Check / Branch Policy (pull_request) Successful in 1s
Generic: Project CI / Lint & Validate (pull_request) Successful in 11s
Universal: PR Check / Validate PR (pull_request) Failing after 13s
Universal: PR Check / Secret Scan (pull_request) Successful in 20s
RC Revert / Rename rc/ back to dev/ (pull_request) Has been skipped
Branch Cleanup / Delete merged branch (pull_request) Successful in 3s
Joomla: Metadata Validation / Validate Joomla Metadata (pull_request) Failing after 1m1s
Generic: Project CI / Tests (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
- CHANGELOG: fix the mangled header (duplicate empty [01.05.00], misplaced
intro) and add a full [Unreleased] section covering the dashboard, edit UI,
CSV import UI, access.xml/config.xml, AI/sitemap hardening, forward-compat,
dead-code removal, and the new unit tests
- README: add Coverage dashboard / Manual tag editor / Component permissions to
Admin Tools; drop the removed ImageGenerator overlay feature; note sitemap
access-level filtering; add a Joomla 6.0+ / PHP 8.2+ Requirements line
2026-06-29 11:00:24 -05:00
gitea-actions[bot]
1dec76ff0c
chore(version): pre-release bump to 01.06.10-dev [skip ci]
2026-06-29 15:49:30 +00:00
jmiller
60c243a733
Merge pull request 'feat: OG coverage dashboard as default admin view ( #94 )' ( #112 ) from feat/dashboard-94 into dev
Universal: Auto Version Bump / Version Bump (push) Has been skipped
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 16s
2026-06-29 15:49:11 +00:00
jmiller
696e369ec1
feat: OG coverage dashboard as default admin view ( #94 )
...
Universal: PR Check / Branch Policy (pull_request) Successful in 2s
Universal: PR Check / Validate PR (pull_request) Failing after 7s
Universal: PR Check / Secret Scan (pull_request) Successful in 10s
Generic: Project CI / Lint & Validate (pull_request) Successful in 17s
RC Revert / Rename rc/ back to dev/ (pull_request) Has been skipped
Branch Cleanup / Delete merged branch (pull_request) Successful in 2s
Joomla: Metadata Validation / Validate Joomla Metadata (pull_request) Failing after 48s
Generic: Project CI / Tests (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
- New DashboardModel (BaseDatabaseModel) with getStats(), getCoverageByType(),
getMissingArticles() — coverage logic moved out of the list template
- New View/Dashboard/HtmlView + tmpl/dashboard/default.php: SVG donut coverage
gauge, field-gap badges, per-content_type breakdown table, and a list of
published articles missing OG tags (linking to the article editor) with a
Batch Generate shortcut
- DisplayController default_view -> dashboard; Dashboard + Tags submenu entries
- Removed the inline coverage.php include from the tags list (it ran 6 uncached
COUNT queries on every list load); that logic now lives in DashboardModel
- Declared tmpl/dashboard in the manifest; added language strings (en-GB, en-US)
2026-06-29 10:48:33 -05:00
gitea-actions[bot]
93b28a851e
chore(version): pre-release bump to 01.06.09-dev [skip ci]
2026-06-29 15:29:14 +00:00
jmiller
cb28cb12cd
Merge pull request 'fix: features & quality — access.xml/config.xml, CSV import UI, dead-code/leak, packaging ( #95 #103 #104 #107 )' ( #111 ) from fix/features-quality-batch into dev
Universal: Auto Version Bump / Version Bump (push) Has been skipped
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 16s
2026-06-29 15:26:40 +00:00
jmiller
d8376d6cdf
fix: features & quality batch ( #95 , #103 , #104 , #107 )
...
Universal: PR Check / Branch Policy (pull_request) Successful in 2s
Universal: PR Check / Validate PR (pull_request) Failing after 7s
RC Revert / Rename rc/ back to dev/ (pull_request) Has been skipped
Branch Cleanup / Delete merged branch (pull_request) Failing after 2s
Universal: PR Check / Secret Scan (pull_request) Successful in 16s
Generic: Project CI / Lint & Validate (pull_request) Successful in 48s
Joomla: Metadata Validation / Validate Joomla Metadata (pull_request) Failing after 52s
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Failing after 5s
Generic: Project CI / Tests (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
#95 — ACL + Options:
- Add access.xml (core actions + mokoog.batch / mokoog.import custom actions)
- Add config.xml (Permissions tab + note pointing settings to the system plugin)
- Declare both in the manifest; Batch/ImportExport controllers now check the
custom actions with a fallback to the prior core checks (no lockout)
#103 — CSV import is now reachable:
- Add an Import toolbar button that toggles a multipart file-upload form
(jform[csv_file]) posting to importexport.import with a CSRF token
#104 — Dead code + disk leak:
- Delete unused ImageGenerator class and JsonLdBuilder::buildOrganization()
- Add ImageHelper::pruneOldFiles() (deletes generated images older than 30d)
and call it on content save so the generated-image cache is bounded
#107 — Packaging:
- Declare language/en-US in the component manifest (was never installed)
- Remove undeclared empty stub dirs src/Field, src/Service
2026-06-29 10:25:59 -05:00
gitea-actions[bot]
543bd2b464
chore(version): pre-release bump to 01.06.08-dev [skip ci]
2026-06-29 15:23:05 +00:00
gitea-actions[bot]
32bb72d12d
chore(version): auto-bump patch 01.06.07-dev [skip ci]
2026-06-29 15:22:48 +00:00
jmiller
4f92b4e508
chore: migrate update server URLs to MokoGitea
Universal: Auto Version Bump / Version Bump (push) Successful in 14s
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 20s
2026-06-29 15:21:55 +00:00
gitea-actions[bot]
53bf4a3187
chore(version): pre-release bump to 01.06.06-dev [skip ci]
RC Revert / Rename rc/ back to dev/ (pull_request) Has been skipped
Branch Cleanup / Delete merged branch (pull_request) Failing after 1s
2026-06-29 15:14:04 +00:00
jmiller
87267d8e80
chore: migrate update server URLs to MokoGitea
Universal: PR Check / Branch Policy (pull_request) Successful in 2s
Universal: PR Check / Validate PR (pull_request) Failing after 7s
Universal: PR Check / Secret Scan (pull_request) Successful in 11s
Joomla: Metadata Validation / Validate Joomla Metadata (pull_request) Failing after 15s
Generic: Project CI / Lint & Validate (pull_request) Successful in 18s
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 21s
Generic: Project CI / Tests (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
2026-06-29 15:12:41 +00:00
gitea-actions[bot]
11e50c54bb
chore(version): pre-release bump to 01.06.05-dev [skip ci]
2026-06-29 14:54:30 +00:00
jmiller
377ae2d39e
Merge pull request 'fix: security & correctness batch — AI ACL, sitemap disclosure, API/CSV columns, forward-compat ( #99 #100 #101 #102 #106 )' ( #109 ) from fix/security-correctness-batch into dev
Universal: Auto Version Bump / Version Bump (push) Has been skipped
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 16s
2026-06-29 14:53:41 +00:00
gitea-actions[bot]
a60ba86b19
chore(version): pre-release bump to 01.06.04-dev [skip ci]
RC Revert / Rename rc/ back to dev/ (pull_request) Has been skipped
Branch Cleanup / Delete merged branch (pull_request) Failing after 2s
2026-06-29 14:53:12 +00:00
jmiller
71a102028d
fix: security & correctness batch ( #99 , #100 , #101 , #102 , #106 )
...
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 16s
#99 — AI AJAX endpoint hardening:
- require core.edit/core.create on com_content before generating (was
reachable by any authenticated back-end user → paid-credit abuse)
- callAiApi: 20s timeout + HTTP status check (throw on non-200) instead of
silently returning an empty string
#100 — Sitemap information disclosure + robustness:
- filter to public (guest) view levels so registered/special-access
articles are never written into the public sitemap
- atomic write (temp file + rename) so concurrent saves can't expose a
half-written sitemap.xml
- (throttling + SEF URLs remain follow-ups, noted on the issue)
#101 — Expose newer columns in CSV + API:
- og_video, event_data, recipe_data, custom_schema added to CSV export/import
(appended, so existing CSVs still import) and to the REST API field whitelist
- import validates JSON fields as arrays/objects and og_video as http(s)
(prevents re-introducing the #97 scalar-JSON-LD crash via import)
#102 — Forward-compat (complete):
- Factory::getLanguage() -> getApplication()->getLanguage() (4 sites)
- Joomla\CMS\Filesystem\File/Folder -> Joomla\Filesystem\* (ImageHelper, ImageGenerator)
#106 — partial: loadArticle() now caches null misses (array_key_exists),
getArticleDate() skips 0000-00-00 dates. Batch-JS halt deferred — the
offset=0 design re-fetches failed rows, so the created>0 guard prevents an
infinite loop; a safe fix needs cursor-based pagination in BatchController.
2026-06-29 09:52:51 -05:00
gitea-actions[bot]
8858c81f87
chore(version): pre-release bump to 01.06.03-dev [skip ci]
2026-06-29 14:41:27 +00:00
jmiller
5b1fb1584e
Merge pull request 'fix: resolve release blockers #97 (scalar JSON-LD 500) and #98 (no single-tag edit UI)' ( #108 ) from fix/release-blockers-97-98 into dev
Universal: Auto Version Bump / Version Bump (push) Has been skipped
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 18s
2026-06-29 14:41:12 +00:00
gitea-actions[bot]
e6328a1e8d
chore(version): pre-release bump to 01.06.02-dev [skip ci]
RC Revert / Rename rc/ back to dev/ (pull_request) Has been skipped
Branch Cleanup / Delete merged branch (pull_request) Failing after 1s
2026-06-29 14:36:11 +00:00
jmiller
8582a3eac5
fix: resolve release blockers #97 (scalar JSON-LD 500) and #98 (no edit UI)
...
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 20s
#97 — Fatal frontend 500 from scalar custom_schema:
- MokoOGContent::validateJson() now requires a JSON object/array (rejects
scalars like 42/"x"/true that previously passed and were stored)
- MokoOG render path guards with is_array($decoded) so already-stored
scalar payloads can no longer crash the public page
#98 — Missing single-tag create/edit admin UI:
- Add Controller/TagController (FormController), View/Tag/HtmlView, tmpl/tag/edit.php
- Link OG title in the list to the editor; add New/Edit toolbar buttons
- Declare tmpl/tag folder in the component manifest
- tag.xml: switch cross-package PLG_CONTENT_* labels to COM_MOKOOG_* keys,
make content_type/content_id editable+required (enables New), add language field
- Add the new COM_MOKOOG_* strings to en-GB and en-US
Also fixes #77 while here: seo_title/meta_description form maxlength now
match the DB columns (70/200) instead of 255.
2026-06-29 09:35:36 -05:00
jmiller
37d3d2a5b3
chore: sync auto-release.yml from Template-Generic [skip ci]
2026-06-28 20:07:41 +00:00
jmiller
ce108475a5
chore: sync issue-branch.yml from Template-Generic [skip ci]
2026-06-28 19:53:34 +00:00
gitea-actions[bot]
979ac9823f
chore: promote changelog [Unreleased] → [01.06.00]
2026-06-28 19:52:02 +00:00
gitea-actions[bot]
2fb7d10e39
chore(release): build 01.06.00 [skip ci]
2026-06-28 19:51:48 +00:00
gitea-actions[bot]
6d4284c6c9
chore(version): pre-release bump to 01.05.02-dev [skip ci]
2026-06-28 19:51:06 +00:00
jmiller
57333482e3
Merge PR #84 : Joomla-7 forward-compatibility cleanup
2026-06-28 19:50:59 +00:00
gitea-actions[bot]
3ac54da149
chore(version): auto-bump patch 01.05.01-dev [skip ci]
Branch Cleanup / Delete merged branch (pull_request) Has been skipped
RC Revert / Rename rc/ back to dev/ (pull_request) Has been skipped
Universal: Build & Release / Promote to RC (pull_request) Has been skipped
Universal: Build & Release / Build & Release Pipeline (pull_request) Successful in 36s
Universal: Workflow Sync Trigger / Sync workflows to live repos (pull_request) Successful in 5m24s
2026-06-28 19:50:47 +00:00
jmiller
2af8a72ca3
Merge origin/main into dev — resync after 01.05.00 release
Universal: PR Check / Branch Policy (pull_request) Successful in 3s
Joomla: Extension CI / Release Readiness Check (pull_request) Failing after 6s
Universal: PR Check / Validate PR (pull_request) Failing after 7s
Universal: Auto Version Bump / Version Bump (push) Successful in 16s
Generic: Project CI / Lint & Validate (pull_request) Successful in 18s
Generic: Repo Health / Access control (pull_request) Successful in 2s
Generic: Repo Health / Site Health (pull_request) Has been skipped
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 20s
Universal: Build & Release / Promote to RC (pull_request) Has been skipped
Universal: Build & Release / Build & Release Pipeline (pull_request) Has been skipped
Universal: PR Check / Secret Scan (pull_request) Successful in 47s
Joomla: Extension CI / Lint & Validate (pull_request) Failing after 58s
Joomla: Metadata Validation / Validate Joomla Metadata (pull_request) Failing after 54s
Generic: Project CI / Tests (pull_request) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.2) (pull_request) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.3) (pull_request) Has been cancelled
Joomla: Extension CI / PHPStan Analysis (pull_request) Has been cancelled
Joomla: Extension CI / Build RC Pre-Release (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
Generic: Repo Health / Scripts governance (pull_request) Has been cancelled
Generic: Repo Health / Repository health (pull_request) Has been cancelled
Generic: Repo Health / Report: Scripts Governance (pull_request) Has been cancelled
Generic: Repo Health / Report: Repository Health (pull_request) Has been cancelled
2026-06-28 14:50:25 -05:00
gitea-actions[bot]
740fb4e1f6
chore(version): pre-release bump to 01.05.01-dev [skip ci]
2026-06-28 19:48:07 +00:00
gitea-actions[bot]
1413f62476
chore(version): auto-bump patch 01.04.18-dev [skip ci]
2026-06-28 19:47:54 +00:00