Skip to content

Conversation

@florian-glombik
Copy link
Contributor

@florian-glombik florian-glombik commented Jan 26, 2026

Summary

Checklist

General

Motivation and Context

Description

  • Updating links that linked to the old documentation to the respective new documentation
  • Moving Integrated Code Lifecycle section and Jenkins and LocalVC setup to administrator section
    • Updating respective anchors
    • Adding rule that builds fails on broken anchors (and not just warnings)
  • Updated docs baseline version
  • Ensuring consistent naming for Textual vs Text exercises

Steps for Testing

  1. Start the documentation locally cd documentation and then npm install && npm run build && npm run serve
  2. Verify the CI Management link works (You can find it here: http://localhost:3000/admin/production-setup/multiple-artemis-instances#core-nodes)
  3. Verify the Local VC System link works (You can find it here http://localhost:3000/admin/production-setup/multiple-artemis-instances#core-nodes)
  4. Verify the Local CI Page was migrated properly http://localhost:3000/admin/production-setup/integrated-code-lifecycle-setup (old version: https://docs.artemis.tum.de/developer/setup#integrated-code-lifecycle-setup)
  5. Verify the Local CI Page was migrated properly http://localhost:3000/admin/jenkins-localvc (old version: https://docs.artemis.tum.de/developer/jenkins-localvc)
  6. Make sure the buttons at the bottom of the page are working http://localhost:3000/instructor/assessment#exercise-specific-assessment

Review Progress

Code Review

  • Code Review 1
  • Code Review 2

Manual Tests

  • Test 1

Test Coverage

Client

Class/File Line Coverage Lines Expects Ratio
about-us.component.ts 93.10% 83 4 4.8
admin-feature-toggle.component.ts not found (modified) 207 31 15.0
documentation-button.component.ts 100.00% 50 4 8.0

Server

Class/File Line Coverage Lines
TextAssessmentEventType.java 100.00% 4

Last updated: 2026-01-28 12:22:01 UTC

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 26, 2026

Walkthrough

Consolidates documentation link migrations to docs.artemis.tum.de, moves Integrated Code Lifecycle Setup from developer to admin docs (new file), renames "Textual Exercise" to "Text Exercise" across docs and UI mappings, updates Docusaurus config and a dev dependency, and edits several comment/Javadoc URLs.

Changes

Cohort / File(s) Summary
Admin Production Setup links
documentation/docs/admin/production-setup/customization.md, documentation/docs/admin/production-setup/multiple-artemis-instances.mdx, documentation/docs/admin/production-setup/additional-tips.mdx, documentation/docs/admin/production-setup/index.md, documentation/docs/admin/production-setup/programming-exercise-adjustments.mdx
Replaced external documentation URLs with internal/site-relative paths and anchors (CI, VC, DockerCompose, Integrated Code Lifecycle references).
Integrated Code Lifecycle (new + reorganize)
documentation/docs/admin/production-setup/integrated-code-lifecycle-setup.mdx, documentation/docs/developer/setup.mdx, documentation/sidebar-admin.ts, documentation/sidebar-developer.ts
Added new admin doc (integrated-code-lifecycle-setup), removed/relocated developer content, and updated sidebars (added admin entry, removed developer entry).
Instructor / Student docs link updates
documentation/docs/instructor/assessment.mdx, documentation/docs/instructor/exams/exam-timeline.mdx, documentation/docs/instructor/exercises/team-exercise.mdx, documentation/docs/instructor/exercises/text-exercise.mdx, documentation/docs/student/exercises/intro.mdx, documentation/sidebar-instructors.ts
Replaced external links with internal instructor/admin routes; renamed headings/labels from "Textual Exercise" to "Text Exercise".
UI / Code mappings for Text Exercise
src/main/webapp/app/core/about-us/about-us.component.ts, src/main/webapp/app/core/admin/features/admin-feature-toggle.component.ts, src/main/webapp/app/shared/components/buttons/documentation-button/documentation-button.component.ts
Updated documentation link keys/targets and component mappings from textual-exercisetext-exercise.
Docs site config & package
documentation/docusaurus.config.ts, documentation/package.json
Added onBrokenAnchors: 'throw' to Docusaurus config and added [email protected] to devDependencies.
Misc. docs/readme/comment URL updates
README.md, docker/artemis/config/dev-local-vc-local-ci.env, docker/artemis/config/dev.env, src/main/java/.../TextAssessmentEventType.java, src/main/resources/templates/.../readme.md, src/main/resources/templates/jenkins/.../pipeline.groovy, src/test/java/.../github_pull_request_6615.txt, src/test/java/.../github_pull_request_6618.txt
Replaced legacy artemis.cit.tum.de / readthedocs links with docs.artemis.tum.de or internal paths in comments, Javadoc, templates, tests, and README; no behavioral changes.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Suggested reviewers

  • krusche
🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately summarizes the primary change: updating documentation links from old to new documentation across multiple files.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch chore/development/update-links-to-old-documentation

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

coderabbitai[bot]
coderabbitai bot previously approved these changes Jan 26, 2026
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
documentation/package.json (1)

32-37: Clarify why baseline-browser-mapping is explicitly listed as a devDependency.

[email protected] is already pulled in as a transitive dependency of browserslist (which specifies ^2.9.0). Explicitly adding it as a direct devDependency appears redundant unless there's a specific need for it in the documentation build process. Either remove it and rely on the transitive dependency, or add a comment explaining why it must be directly specified.

(No security vulnerabilities were found for this package.)

🤖 Fix all issues with AI agents
In
`@documentation/docs/admin/production-setup/integrated-code-lifecycle-setup.mdx`:
- Around line 32-41: The snippet currently hard-codes "image-architecture:
arm64" under the continuous-integration section which will break amd64 users if
copy/pasted; change the documentation so "image-architecture: arm64" is not set
as a default — either remove or comment out that line and add a short note
beside the continuous-integration or image-architecture entry instructing
readers to set image-architecture to "arm64" only on ARM systems (e.g., Apple
M-series, Raspberry Pi) and otherwise leave it unset for the default amd64.

@github-project-automation github-project-automation bot moved this from Work In Progress to Ready For Review in Artemis Development Jan 26, 2026
@github-actions
Copy link

End-to-End (E2E) Test Results Summary

TestsPassed ☑️Skipped ⚠️Failed ❌️Time ⏱
End-to-End (E2E) Test Report223 ran221 passed1 skipped1 failed1h 34m 36s 569ms
TestResultTime ⏱
End-to-End (E2E) Test Report
e2e/exam/test-exam/TestExamStudentExams.spec.ts
ts.Test Exam - student exams › Check exam participants and their submissions › Open the list of exam students❌ failure6m 58s 929ms

coderabbitai[bot]
coderabbitai bot previously approved these changes Jan 26, 2026
@github-actions
Copy link

End-to-End (E2E) Test Results Summary

TestsPassed ✅SkippedFailedTime ⏱
End-to-End (E2E) Test Report1 ran1 passed0 skipped0 failed2s 323ms
TestResultTime ⏱
No test annotations available

coderabbitai[bot]
coderabbitai bot previously approved these changes Jan 26, 2026
@florian-glombik florian-glombik changed the title Development: Update links from to old documentation to link new documentation Development: Update links from old documentation to new documentation Jan 26, 2026
@github-actions
Copy link

End-to-End (E2E) Test Results Summary

TestsPassed ☑️Skipped ⚠️Failed ❌️Time ⏱
End-to-End (E2E) Test Report223 ran220 passed2 skipped1 failed1h 43m 43s 755ms
TestResultTime ⏱
End-to-End (E2E) Test Report
e2e/exam/ExamAssessment.spec.ts
ts.Exam assessment › Text exercise assessment › Complaints about text exercises assessment❌ failure1m 23s 66ms

Copy link

@atharvamp atharvamp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested locally.

In step 4 of testing instructions, the new page no longer has common setup problems which has been moved to setup guide, just making sure this is intentional.
In step 5, the link http://localhost:3000/admin/production-setup/jenkins-localvc leads to a Page Not Found.
In step 6, the hyperlink Text Exercises leads to the page Textual Exercises. I think it's better to just align on one Textual or Text. Personally, I think Text is better.

Copy link
Contributor

@DominikRemo DominikRemo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested localy and reviewed the code. Looks quite good already. I left you two comments.

Also, one of the links in the pr description should be http://localhost:3000/admin/jenkins-localvc, but it is http://localhost:3000/admin/production-setup/jenkins-localvc (see step 5 in the Steps for Testing).

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 4

🤖 Fix all issues with AI agents
In
`@documentation/docs/admin/production-setup/programming-exercise-adjustments.mdx`:
- Line 385: The link text "Integrated Code Lifecycle Setup" in
production-setup/programming-exercise-adjustments.mdx is using a different path;
update the markdown link target so it matches the admin section path style used
earlier (the same form as the link at line 315). Locate the phrase "Integrated
Code Lifecycle Setup" in the file and change its href to the admin section path
used at line 315 so all three occurrences (lines ~315, ~339/~360, and this one)
use the same target.
- Line 360: The link "Integrated Code Lifecycle Setup" in this line uses the
developer path (/developer/setup#integrated-code-lifecycle-setup) which is
inconsistent with the admin path used elsewhere; update this instance to use the
admin path (/admin/setup#integrated-code-lifecycle-setup) so all links to the
Integrated Code Lifecycle Setup are consistent across the document.
- Line 416: The link text "[Integrated Code Lifecycle
Setup](/developer/setup#integrated-code-lifecycle-setup)" is inconsistently
pointing to the developer setup; update all four occurrences of that link (the
instances on the page containing the phrase "Integrated Code Lifecycle Setup")
to point to the admin section URL instead (replace the
/developer/setup#integrated-code-lifecycle-setup href with the corresponding
admin anchor), ensuring all four instances are changed consistently and link to
the correct admin documentation location.
- Line 339: Replace all occurrences of the outdated link path
"/developer/setup#integrated-code-lifecycle-setup" in this file with the correct
admin path "/admin/production-setup/integrated-code-lifecycle-setup" (these
appear multiple times around the mentions of Integrated Code Lifecycle Setup and
match other references such as the one already using the admin path); update
each markdown link target so the display text remains the same but the href
points to the new "/admin/production-setup/integrated-code-lifecycle-setup"
location to ensure consistency with integrated-code-lifecycle-setup.mdx and
other docs.

@github-actions github-actions bot added server Pull requests that update Java code. (Added Automatically!) client Pull requests that update TypeScript code. (Added Automatically!) docker template core Pull requests that affect the corresponding module text Pull requests that affect the corresponding module labels Jan 28, 2026
coderabbitai[bot]
coderabbitai bot previously approved these changes Jan 28, 2026
@github-actions
Copy link

@florian-glombik Test coverage has been automatically updated in the PR description.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In
`@documentation/docs/admin/production-setup/programming-exercise-adjustments.mdx`:
- Around line 315-317: Update the first link target for "Integrated Code
Lifecycle Setup" so it matches the new dedicated page used elsewhere in this
file: replace the current URL that points to
/admin/production-setup/multiple-artemis-instances#integrated-code-lifecycle
with the dedicated integrated code lifecycle page (the same slug used by other
links in this document, e.g.,
/admin/production-setup/integrated-code-lifecycle-setup) and verify the anchor
text "Integrated Code Lifecycle Setup" and the second link to "timeout options"
remain correct and consistent.

Comment on lines +315 to +317
This setting is relevant only when using [Integrated Code Lifecycle Setup](/admin/production-setup/multiple-artemis-instances#integrated-code-lifecycle).

You can adjust possible [timeout options](https://docs.artemis.cit.tum.de/user/exercises/programming.html#edit-maximum-build-duration) for the build process in Integrated Code Lifecycle Setup.
You can adjust possible [timeout options](/admin/production-setup/programming-exercise-adjustments#timeout-options) for the build process in Integrated Code Lifecycle Setup.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Align Integrated Code Lifecycle link with the new dedicated page.

Line 315 still points to the multi-node page anchor, while the rest of this file links to the new Integrated Code Lifecycle Setup page. If the content moved, this is inconsistent and likely confusing. Consider pointing this to the same dedicated page.

🔧 Suggested update
-This setting is relevant only when using [Integrated Code Lifecycle Setup](/admin/production-setup/multiple-artemis-instances#integrated-code-lifecycle).
+This setting is relevant only when using [Integrated Code Lifecycle Setup](./integrated-code-lifecycle-setup.mdx).
🤖 Prompt for AI Agents
In
`@documentation/docs/admin/production-setup/programming-exercise-adjustments.mdx`
around lines 315 - 317, Update the first link target for "Integrated Code
Lifecycle Setup" so it matches the new dedicated page used elsewhere in this
file: replace the current URL that points to
/admin/production-setup/multiple-artemis-instances#integrated-code-lifecycle
with the dedicated integrated code lifecycle page (the same slug used by other
links in this document, e.g.,
/admin/production-setup/integrated-code-lifecycle-setup) and verify the anchor
text "Integrated Code Lifecycle Setup" and the second link to "timeout options"
remain correct and consistent.

@github-actions
Copy link

@florian-glombik Your PR description needs attention before it can be reviewed:

Issues Found

  1. Motivation/Context section is missing or needs improvement

How to Fix

  • Add a motivation/context paragraph explaining the problem this change solves.

This check validates that your PR description follows the PR template. A complete description helps reviewers understand your changes and speeds up the review process.

Note: This description validation is an experimental feature. If you observe false positives, please send a DM with a link to the wrong comment to Patrick Bassner on Slack. Thank you!

@github-actions
Copy link

@florian-glombik Test coverage has been automatically updated in the PR description.

@github-actions
Copy link

End-to-End (E2E) Test Results Summary

TestsPassed ☑️Skipped ⚠️Failed ❌️Time ⏱
End-to-End (E2E) Test Report223 ran220 passed1 skipped2 failed1h 34m 29s 227ms
TestResultTime ⏱
End-to-End (E2E) Test Report
e2e/exam/ExamDateVerification.spec.ts
ts.Exam date verification › Exam timing › Student can start after start Date❌ failure2m 44s 307ms
e2e/exam/test-exam/TestExamStudentExams.spec.ts
ts.Test Exam - student exams › Check exam participants and their submissions › Search for a student in exams❌ failure7m 1s 187ms

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

client Pull requests that update TypeScript code. (Added Automatically!) communication Pull requests that affect the corresponding module core Pull requests that affect the corresponding module docker documentation ready for review server Pull requests that update Java code. (Added Automatically!) template tests text Pull requests that affect the corresponding module

Projects

Status: Ready For Review
Status: Todo

Development

Successfully merging this pull request may close these issues.

4 participants