SUI-614: [h5pauthor] DevFlow-Doku-Nachtrag (MCP-Contract + verifizierter PHPUnit-Lauf) #110

Merged
johannes.moskaliuk merged 1 commit from dev/sven/SUI-614 into main 2026-08-04 20:14:28 +00:00

SUI-614 — DevFlow-Doku-Nachtrag zu H5P.MultiChoice

Folge-Commit zu PR #108 (Feature bereits nach main gemergt). Reine DevFlow-Markdown-Aktualisierung, kein Code.

  • 03-dev-doc.md: expliziter Architekturvertrag-Hinweis zu create_multichoice — folgt exakt demselben Service/MCP-Pfad wie die anderen Tools (Basisklasse external\helper, require_use(), einheitliche result_structure(), Registrierung/Bündelung in db/services.php); einzige bewusste Abweichung ist die Parameterform (eine question + answers[] mit correct-Bool je Option, weil H5P.MultiChoice = eine Frage/Paket), kein zweiter Mechanismus. (Anlass: Lead-Review-Hinweis, SUI-614.)
  • 03/05: verifizierter PHPUnit-Lauf dokumentiert — local_elediaai_h5pauthor_testsuite 51/51 grün (121 Assertions) im Container elediaai-moodle-1 (Moodle 5.2, PHP 8.4, PHPUnit 11).

Head: 6ddbc246d6b5105baae8e0f85d34ba3eb58a3a3e

Refs SUI-614

## SUI-614 — DevFlow-Doku-Nachtrag zu H5P.MultiChoice Folge-Commit zu PR #108 (Feature bereits nach `main` gemergt). Reine DevFlow-Markdown-Aktualisierung, kein Code. - `03-dev-doc.md`: expliziter Architekturvertrag-Hinweis zu `create_multichoice` — folgt exakt demselben Service/MCP-Pfad wie die anderen Tools (Basisklasse `external\helper`, `require_use()`, einheitliche `result_structure()`, Registrierung/Bündelung in `db/services.php`); **einzige** bewusste Abweichung ist die Parameterform (eine `question` + `answers[]` mit `correct`-Bool je Option, weil `H5P.MultiChoice` = eine Frage/Paket), kein zweiter Mechanismus. (Anlass: Lead-Review-Hinweis, SUI-614.) - `03`/`05`: verifizierter PHPUnit-Lauf dokumentiert — `local_elediaai_h5pauthor_testsuite` **51/51 grün** (121 Assertions) im Container `elediaai-moodle-1` (Moodle 5.2, PHP 8.4, PHPUnit 11). Head: `6ddbc246d6b5105baae8e0f85d34ba3eb58a3a3e` Refs SUI-614
docs(elediaai_h5pauthor): note MCP create_multichoice contract + verified PHPUnit run
Some checks failed
Repo-Gates / gates (push) Failing after 25s
PHPCS quality / PHPCS full scan (push) Has been skipped
PHPCS quality / PHPCS ratchet (push) Successful in 32s
Repo-Gates / gates (pull_request) Failing after 24s
Moodle Plugin CI / changes (pull_request) Successful in 24s
PHPCS quality / PHPCS ratchet (pull_request) Successful in 37s
PHPCS quality / PHPCS full scan (pull_request) Has been skipped
Repo-Gates / Notify CI-Fixer (push) Has been skipped
PHPCS quality / Notify CI-Fixer (push) Has been skipped
Repo-Gates / Notify CI-Fixer (pull_request) Has been skipped
Moodle Plugin CI / subscription (MOODLE_502_STABLE) (, , subscription, MOODLE_502_STABLE, local/elediaai_subscription) (pull_request) Successful in 4m33s
Moodle Plugin CI / tutor (MOODLE_502_STABLE) (, , tutor, MOODLE_502_STABLE, blocks/elediaai_tutor) (pull_request) Successful in 5m1s
Moodle Plugin CI / authoring (MOODLE_502_STABLE) (, local/elediaai_core, authoring, MOODLE_502_STABLE, local/elediaai_questiongen local/elediaai_coursegen qbank/elediaai_questiongen local/elediaai_h5pauthor qtype/aitext) (pull_request) Successful in 5m19s
Moodle Plugin CI / Behat chat (MOODLE_502_STABLE) (, local/elediaai_core, chat, MOODLE_502_STABLE, blocks/elediaai_chat mod/aichat mod/aifeedback, @mod_aichat) (pull_request) Has been skipped
Moodle Plugin CI / Behat tactics (MOODLE_502_STABLE) (lernhive, , tactics, MOODLE_502_STABLE, local/elediaai_tactics blocks/elediaai_tactics, @local_elediaai_tactics,@block_elediaai_tactics) (pull_request) Has been skipped
PHPCS quality / Notify CI-Fixer (pull_request) Has been skipped
ci-fixer/error Moodle CI core (MOODLE_502_STABLE): No syntax error found There was 1 failure: Failed asserting that two strings are identical.
Moodle Plugin CI / core (MOODLE_502_STABLE) (customerportal, local/elediaai_core qtype/aitext, core, MOODLE_502_STABLE, ai/provider/eledia local/activityfilter local/aitransparency auth/eledia_eduplaces admin/tool/taskrunner customfield/field/languageselect filter/eledia… (pull_request) Failing after 4m42s
Moodle Plugin CI / chat (MOODLE_502_STABLE) (, local/elediaai_core, chat, MOODLE_502_STABLE, blocks/elediaai_chat mod/aichat mod/aifeedback) (pull_request) Successful in 6m47s
Moodle Plugin CI / tactics (MOODLE_502_STABLE) (lernhive, , tactics, MOODLE_502_STABLE, local/elediaai_tactics blocks/elediaai_tactics) (pull_request) Successful in 4m15s
Moodle Plugin CI / tutor-with-quota (MOODLE_502_STABLE) (, local/elediaai_core, tutor-with-quota, MOODLE_502_STABLE, blocks/elediaai_tutor) (pull_request) Successful in 7m10s
Moodle Plugin CI / learning (MOODLE_502_STABLE) (lernhive, local/elediaai_core mod/aichat, learning, MOODLE_502_STABLE, local/elediaai_selfstudy local/elediaai_strategy local/elediaai_teachertools local/elediaai_tutor_premium blocks/elediaai_path) (pull_request) Successful in 4m27s
Moodle Plugin CI / Notify CI-Fixer (pull_request) Has been skipped
6ddbc246d6
Document the intentional parameter-shape deviation of the create_multichoice
MCP tool vs create_singlechoice (single question + per-answer correct flag,
because H5P.MultiChoice is one-question-per-package) while the rest of the
service/MCP contract is identical. Record the verified green PHPUnit run
(local_elediaai_h5pauthor_testsuite 51/51) in the DevFlow docs.

Refs SUI-614

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Sign in to join this conversation.
No reviewers
No labels
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
johannes.moskaliuk/eledia.ai!110
No description provided.