Compare commits

...
2 Commits
Author SHA1 Message Date
gitea-actions[bot] 1f657bea81 chore(data): refresh source snapshots
Automated fetch from Refresh sources run 18.
2026-09-16 17:28:20 +00:00
Lucas WintherandClaude Opus 5 76bd7d0b70 fix(ci): authenticate to Gitea's registry with a package-scoped token
CI / Typecheck, test, feed (push) Successful in 13s
CI / Build site (push) Successful in 9s
CI / Container image (push) Successful in 34s
`docker login` was refused with a bare `unauthorized`. The root cause is
not a typo in the credentials but a difference in what a Gitea package
is: it belongs to a user or org **owner**, not to a repository, so the
ephemeral repo-scoped Actions token carries no authority over it and the
registry rejects it outright. GHCR accepted GITHUB_TOKEN and GitLab
issues working per-job credentials in $CI_REGISTRY_PASSWORD; Gitea
deliberately does neither, so this needs a real access token with the
package scope, supplied as REGISTRY_TOKEN.

The username moves from github.actor to github.repository_owner for the
same reason. The image is pushed into the owner's namespace and the
token belongs to that owner, while actor is merely whoever triggered the
run — a different person on a dispatch, the wrong account on a fork.

Added a preflight check on the secret, because the failure it replaces
said nothing about what to do. It also settles a question the evidence
left open: the reports of this problem describe login succeeding and the
*push* failing, while ours failed at login, which is consistent with the
token being rejected but equally with its never having been set. The
check distinguishes the two the next time it happens.

No test pins this. The three workflow assertions in test/refresh.test.ts
exist because those defects are silent; this one turns CI red on the
spot, which is the condition that made them worth writing.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
2026-09-16 04:38:53 +02:00
38 changed files with 1419 additions and 544 deletions
+34 -2
View File
@@ -141,6 +141,9 @@ jobs:
if: github.ref == 'refs/heads/main' && github.event_name != 'pull_request' if: github.ref == 'refs/heads/main' && github.event_name != 'pull_request'
permissions: permissions:
contents: read contents: read
# Kept as a statement of intent, but it does not grant what this job
# needs: on Gitea the registry does not accept the Actions token at all,
# so `packages: write` on it authorises nothing. See the login step.
packages: write packages: write
steps: steps:
- uses: https://github.com/actions/checkout@v4 - uses: https://github.com/actions/checkout@v4
@@ -166,11 +169,40 @@ jobs:
echo "host=${host}" >> "$GITHUB_OUTPUT" echo "host=${host}" >> "$GITHUB_OUTPUT"
echo "name=${host}/${GITHUB_REPOSITORY,,}" >> "$GITHUB_OUTPUT" echo "name=${host}/${GITHUB_REPOSITORY,,}" >> "$GITHUB_OUTPUT"
# Why not `secrets.GITHUB_TOKEN`, which is what this was and what the
# GHCR version used: a Gitea package belongs to a **user or org owner,
# not to a repository**, so the ephemeral repo-scoped Actions token
# carries no authority over it and the registry refuses it. GitLab hands
# out working per-job registry credentials ($CI_REGISTRY_PASSWORD, which
# .gitlab-ci.yml uses) and Gitea deliberately does not, so this needs a
# real access token with package write scope, stored as REGISTRY_TOKEN.
#
# The username must be the token's owner, hence repository_owner rather
# than github.actor: the image is pushed into the owner's namespace, and
# actor is whoever happened to trigger the run — a different person on a
# dispatch, and the wrong account entirely on a fork.
- name: Check the registry credential exists
# Without this the failure is a bare `unauthorized` from the daemon,
# which says nothing about what to do. It also tells us something we do
# not currently know: whether the old token was rejected or was simply
# never set.
env:
REGISTRY_TOKEN: ${{ secrets.REGISTRY_TOKEN }}
run: |
if [ -z "${REGISTRY_TOKEN:-}" ]; then
echo "::error::REGISTRY_TOKEN is not set. Create an access token at" \
"${{ github.server_url }}/user/settings/applications with the" \
"package read+write scope, then add it to this repository under" \
"Settings → Actions → Secrets as REGISTRY_TOKEN."
exit 1
fi
echo "REGISTRY_TOKEN is set (${#REGISTRY_TOKEN} chars)"
- uses: https://github.com/docker/login-action@v3 - uses: https://github.com/docker/login-action@v3
with: with:
registry: ${{ steps.img.outputs.host }} registry: ${{ steps.img.outputs.host }}
username: ${{ github.actor }} username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }} password: ${{ secrets.REGISTRY_TOKEN }}
- uses: https://github.com/docker/build-push-action@v6 - uses: https://github.com/docker/build-push-action@v6
with: with:
+16
View File
@@ -358,6 +358,22 @@ The image lands at `gitea.lucaswinther.info/lucasw89/gacha-event-tracker`, tagge
the commit SHA. The registry host is derived from `github.server_url` rather than hardcoded, so a the commit SHA. The registry host is derived from `github.server_url` rather than hardcoded, so a
fork on another instance pushes to its own registry. fork on another instance pushes to its own registry.
**Pushing the image needs one one-time step CI cannot do for itself.** A Gitea package belongs to a
*user or org owner*, not to a repository, so the ephemeral Actions token has no authority over it and
the registry refuses it — `secrets.GITHUB_TOKEN` does not work here, unlike on GHCR and unlike
GitLab's `$CI_REGISTRY_PASSWORD`. So:
1. Create an access token at **Settings → Applications** with the **package** read + write scope.
2. Add it to the repository under **Settings → Actions → Secrets** as **`REGISTRY_TOKEN`**.
The `image` job checks for that secret before it tries to log in, and fails with those instructions
rather than a bare `unauthorized` from the Docker daemon. The username it logs in with is
`github.repository_owner`, not `github.actor` — the image goes to the owner's namespace, and the
actor is merely whoever triggered the run.
One consequence of packages being owner-scoped: the pushed image is **not** automatically associated
with this repository. Linking it is a manual step on the package's own settings page.
The feed job fails if the event count collapses, or if any single source parses to nothing — nine The feed job fails if the event count collapses, or if any single source parses to nothing — nine
healthy sources hide a tenth that has gone quiet, and the total stays comfortably over the floor healthy sources hide a tenth that has gone quiet, and the total stays comfortably over the floor
while one game shows an empty calendar. That is the failure mode a parser-only pipeline is most while one game shows an empty calendar. That is the failure mode a parser-only pipeline is most
File diff suppressed because one or more lines are too long
+4 -4
View File
@@ -1,11 +1,11 @@
{ {
"sourceId": "czn-game8-events", "sourceId": "czn-game8-events",
"url": "https://game8.co/games/Chaos-Zero-Nightmare/archives/559899", "url": "https://game8.co/games/Chaos-Zero-Nightmare/archives/559899",
"contentHash": "449c1adacd9c75d18e68e6a6676e20ed51414a5b63ea1a2728ec64e628b75aa1", "contentHash": "5de7e376ae563fd4e1cc94935f8e0430fa8bd64f22f6f11edb970eb250a2c963",
"bytes": 404171, "bytes": 404144,
"etag": "W/\"449c1adacd9c75d18e68e6a6676e20ed\"", "etag": "W/\"5de7e376ae563fd4e1cc94935f8e0430\"",
"lastModified": null, "lastModified": null,
"contentChangedAt": "2026-09-16T01:01:51.621Z", "contentChangedAt": "2026-09-16T17:28:13.478Z",
"eventCount": 7, "eventCount": 7,
"charset": "utf-8" "charset": "utf-8"
} }
File diff suppressed because one or more lines are too long
+5 -5
View File
@@ -1,11 +1,11 @@
{ {
"sourceId": "endfield-game8-events", "sourceId": "endfield-game8-events",
"url": "https://game8.co/games/Arknights-Endfield/archives/535443", "url": "https://game8.co/games/Arknights-Endfield/archives/535443",
"contentHash": "cbe9ab72e81b7636945dcad1c2a0864cbc8b6d77d1a8a5049495c56cff6f4472", "contentHash": "0716ae84362e7dd5ecc90ea556cd8287d1e85c41c331ffeddd40b2bcf5edf13d",
"bytes": 525644, "bytes": 526206,
"etag": "W/\"cbe9ab72e81b7636945dcad1c2a0864c\"", "etag": "W/\"0716ae84362e7dd5ecc90ea556cd8287\"",
"lastModified": null, "lastModified": null,
"contentChangedAt": "2026-09-16T01:01:34.114Z", "contentChangedAt": "2026-09-16T17:27:57.135Z",
"eventCount": 7, "eventCount": 5,
"charset": "utf-8" "charset": "utf-8"
} }
File diff suppressed because one or more lines are too long
+3 -3
View File
@@ -1,11 +1,11 @@
{ {
"sourceId": "fgo-fandom-events", "sourceId": "fgo-fandom-events",
"url": "https://fategrandorder.fandom.com/api.php?action=parse&page=Event_List_(US)&prop=text&formatversion=2&format=json", "url": "https://fategrandorder.fandom.com/api.php?action=parse&page=Event_List_(US)&prop=text&formatversion=2&format=json",
"contentHash": "36723fb04f1e1802ca0deb55a3a7ae4a645e30643c0a86ff80b346a7dc2556bb", "contentHash": "27799879471d4ac7da246d306a77e666e4a25677e659aeb90ceb115826d4a57b",
"bytes": 656313, "bytes": 656274,
"etag": null, "etag": null,
"lastModified": null, "lastModified": null,
"contentChangedAt": "2026-09-16T01:01:44.553Z", "contentChangedAt": "2026-09-16T17:28:06.501Z",
"eventCount": 5, "eventCount": 5,
"charset": "utf-8" "charset": "utf-8"
} }
File diff suppressed because one or more lines are too long
+2 -2
View File
@@ -1,11 +1,11 @@
{ {
"sourceId": "genshin-fandom-events", "sourceId": "genshin-fandom-events",
"url": "https://genshin-impact.fandom.com/api.php?action=parse&page=Event&prop=text&formatversion=2&format=json", "url": "https://genshin-impact.fandom.com/api.php?action=parse&page=Event&prop=text&formatversion=2&format=json",
"contentHash": "28463835cac0ab18f1f67cb994c66195e47c041b45c7d14f752d8a0a2a7c900b", "contentHash": "2ef4d132ff1799ffeddf7a17c74d927e78e0e7475713aff0c925b23dcfaf26c3",
"bytes": 65059, "bytes": 65059,
"etag": null, "etag": null,
"lastModified": null, "lastModified": null,
"contentChangedAt": "2026-09-16T01:01:42.274Z", "contentChangedAt": "2026-09-16T17:28:04.577Z",
"eventCount": 20, "eventCount": 20,
"charset": "utf-8" "charset": "utf-8"
} }
File diff suppressed because one or more lines are too long
+4 -4
View File
@@ -1,11 +1,11 @@
{ {
"sourceId": "genshin-game8-events", "sourceId": "genshin-game8-events",
"url": "https://game8.co/games/Genshin-Impact/archives/301601", "url": "https://game8.co/games/Genshin-Impact/archives/301601",
"contentHash": "52d3d51149df4a2759606b0421bb67d5af69bd4428078b3b5c6b065eb2a0072b", "contentHash": "bba1861b5f1199a26cfea48cf1f1f04b04e64f8122593f4ed14e5243de7107af",
"bytes": 522544, "bytes": 522978,
"etag": "W/\"52d3d51149df4a2759606b0421bb67d5\"", "etag": "W/\"bba1861b5f1199a26cfea48cf1f1f04b\"",
"lastModified": null, "lastModified": null,
"contentChangedAt": "2026-09-16T01:01:26.091Z", "contentChangedAt": "2026-09-16T17:27:49.749Z",
"eventCount": 12, "eventCount": 12,
"charset": "utf-8" "charset": "utf-8"
} }
File diff suppressed because it is too large Load Diff
+4 -4
View File
@@ -1,11 +1,11 @@
{ {
"sourceId": "gfl2-iopwiki-events", "sourceId": "gfl2-iopwiki-events",
"url": "https://iopwiki.com/wiki/GFL2_Events", "url": "https://iopwiki.com/wiki/GFL2_Events",
"contentHash": "083470ae1c873151e2f8c046f09d0f473a826348431c661625e62d04ddcdd665", "contentHash": "0075c1740d17a840dd66288bec142d4c94c101e628710fe4688457e2f448cb55",
"bytes": 281511, "bytes": 281510,
"etag": null, "etag": null,
"lastModified": "Tue, 15 Sep 2026 22:25:39 GMT", "lastModified": "Wed, 16 Sep 2026 13:47:07 GMT",
"contentChangedAt": "2026-09-16T01:01:45.802Z", "contentChangedAt": "2026-09-16T17:28:07.981Z",
"eventCount": 2, "eventCount": 2,
"charset": "utf-8" "charset": "utf-8"
} }
File diff suppressed because one or more lines are too long
+2 -2
View File
@@ -1,11 +1,11 @@
{ {
"sourceId": "hi3-arustats-events", "sourceId": "hi3-arustats-events",
"url": "https://www.arustats.com/en-us/hi3/timeline", "url": "https://www.arustats.com/en-us/hi3/timeline",
"contentHash": "2e54ea3abc51653a63be845a763c54db50005dcc82e7fcb25920add74ac81222", "contentHash": "eebafac12fd5011e62fe08d1f51bef44e414e860a1ef1ca12225f9a37cf7d27e",
"bytes": 75548, "bytes": 75548,
"etag": null, "etag": null,
"lastModified": null, "lastModified": null,
"contentChangedAt": "2026-09-16T01:01:56.329Z", "contentChangedAt": "2026-09-16T17:28:17.942Z",
"eventCount": 20, "eventCount": 20,
"charset": "utf-8" "charset": "utf-8"
} }
File diff suppressed because one or more lines are too long
+4 -4
View File
@@ -1,11 +1,11 @@
{ {
"sourceId": "hsr-game8-events", "sourceId": "hsr-game8-events",
"url": "https://game8.co/games/Honkai-Star-Rail/archives/408749", "url": "https://game8.co/games/Honkai-Star-Rail/archives/408749",
"contentHash": "b4a7c1ce74e29e080325981a0153d1d581d16d2b96bb1ac5485d7a192f016ad6", "contentHash": "680f058ded1110b9888111ec608741d333002e170389a7ed3a713d82aa791f1a",
"bytes": 428366, "bytes": 428416,
"etag": "W/\"b4a7c1ce74e29e080325981a0153d1d5\"", "etag": "W/\"680f058ded1110b9888111ec608741d3\"",
"lastModified": null, "lastModified": null,
"contentChangedAt": "2026-09-16T01:01:26.617Z", "contentChangedAt": "2026-09-16T17:27:50.297Z",
"eventCount": 5, "eventCount": 5,
"charset": "utf-8" "charset": "utf-8"
} }
File diff suppressed because one or more lines are too long
+4 -4
View File
@@ -1,11 +1,11 @@
{ {
"sourceId": "nikke-fandom-events", "sourceId": "nikke-fandom-events",
"url": "https://nikke-goddess-of-victory-international.fandom.com/api.php?action=parse&page=Event&prop=text&formatversion=2&format=json", "url": "https://nikke-goddess-of-victory-international.fandom.com/api.php?action=parse&page=Event&prop=text&formatversion=2&format=json",
"contentHash": "2f13240d728527f2891cc339e3df049486be63ddf45e56be3540216f03893878", "contentHash": "8a3723af99c0b41f27dc6f4761ea74e9831230525ab9fc42b4b7c9f67b907c9e",
"bytes": 368682, "bytes": 371064,
"etag": null, "etag": null,
"lastModified": null, "lastModified": null,
"contentChangedAt": "2026-09-15T20:18:37.214Z", "contentChangedAt": "2026-09-16T17:28:12.944Z",
"eventCount": 3, "eventCount": 6,
"charset": "utf-8" "charset": "utf-8"
} }
File diff suppressed because one or more lines are too long
+3 -3
View File
@@ -1,11 +1,11 @@
{ {
"sourceId": "nikki-fandom-events", "sourceId": "nikki-fandom-events",
"url": "https://infinity-nikki.fandom.com/api.php?action=parse&page=Event&prop=text&formatversion=2&format=json", "url": "https://infinity-nikki.fandom.com/api.php?action=parse&page=Event&prop=text&formatversion=2&format=json",
"contentHash": "ed045a56170260e50d204ea7319a1ec30fe96a2e4a33144c637884e5b4cb1f5c", "contentHash": "fd53acf4b85f01f50aba480e97f73de90ebe63eecd5fbf41c1e32ddd913bc98e",
"bytes": 415411, "bytes": 415403,
"etag": null, "etag": null,
"lastModified": null, "lastModified": null,
"contentChangedAt": "2026-09-16T01:01:46.979Z", "contentChangedAt": "2026-09-16T17:28:09.162Z",
"eventCount": 0, "eventCount": 0,
"charset": "utf-8" "charset": "utf-8"
} }
File diff suppressed because one or more lines are too long
+5 -5
View File
@@ -1,11 +1,11 @@
{ {
"sourceId": "nte-game8-events", "sourceId": "nte-game8-events",
"url": "https://game8.co/games/Neverness-to-Everness/archives/592073", "url": "https://game8.co/games/Neverness-to-Everness/archives/592073",
"contentHash": "c05a2d7e5d76b96fe091cbb9819f63e6d43ec15853fbc4130285e3379ef28230", "contentHash": "5fa64f3475ac527b3ab3eff40e833a1d43f1c277311314b770b6bea602dc4795",
"bytes": 508168, "bytes": 514544,
"etag": "W/\"c05a2d7e5d76b96fe091cbb9819f63e6\"", "etag": "W/\"5fa64f3475ac527b3ab3eff40e833a1d\"",
"lastModified": null, "lastModified": null,
"contentChangedAt": "2026-09-16T01:01:36.925Z", "contentChangedAt": "2026-09-16T17:28:00.130Z",
"eventCount": 13, "eventCount": 19,
"charset": "utf-8" "charset": "utf-8"
} }
File diff suppressed because one or more lines are too long
+4 -4
View File
@@ -1,11 +1,11 @@
{ {
"sourceId": "p5x-game8-events", "sourceId": "p5x-game8-events",
"url": "https://game8.co/games/Persona-5-Phantom-X/archives/532244", "url": "https://game8.co/games/Persona-5-Phantom-X/archives/532244",
"contentHash": "ad66f537090227428cb4bf07ee04a8ab794083f82e12f0f7d9c49dc3aee61f08", "contentHash": "fb405e9546f197fa668c53ba8e162f59dcecac09d556c272c4162e57b2ed2660",
"bytes": 446826, "bytes": 446647,
"etag": "W/\"ad66f537090227428cb4bf07ee04a8ab\"", "etag": "W/\"fb405e9546f197fa668c53ba8e162f59\"",
"lastModified": null, "lastModified": null,
"contentChangedAt": "2026-09-16T01:01:39.327Z", "contentChangedAt": "2026-09-16T17:28:02.364Z",
"eventCount": 2, "eventCount": 2,
"charset": "utf-8" "charset": "utf-8"
} }
File diff suppressed because one or more lines are too long
+4 -4
View File
@@ -1,11 +1,11 @@
{ {
"sourceId": "pgr-karendar-events", "sourceId": "pgr-karendar-events",
"url": "https://karendar.com/", "url": "https://karendar.com/",
"contentHash": "6eaed8e0aac4bc3ccbe733fe48b56e4f74c2337c3604adf444decf04937046e2", "contentHash": "28fdd8531dc410f82b293b7195ba7b512caffcd0030bb8baaabddb86105d867a",
"bytes": 317167, "bytes": 318828,
"etag": null, "etag": null,
"lastModified": null, "lastModified": null,
"contentChangedAt": "2026-09-16T01:01:58.458Z", "contentChangedAt": "2026-09-16T17:28:19.279Z",
"eventCount": 54, "eventCount": 53,
"charset": "utf-8" "charset": "utf-8"
} }
File diff suppressed because one or more lines are too long
+3 -3
View File
@@ -1,11 +1,11 @@
{ {
"sourceId": "r1999-fandom-events", "sourceId": "r1999-fandom-events",
"url": "https://reverse1999.fandom.com/api.php?action=parse&page=Events&prop=text&formatversion=2&format=json", "url": "https://reverse1999.fandom.com/api.php?action=parse&page=Events&prop=text&formatversion=2&format=json",
"contentHash": "06831119b0c1e9bb679d488b12701e9a055d486dba8817020bf840ab02574207", "contentHash": "9ff919374a94065c1465ad9be37282998bd7c8aefe0ba09ebc1b96802f73fdaa",
"bytes": 148779, "bytes": 152198,
"etag": null, "etag": null,
"lastModified": null, "lastModified": null,
"contentChangedAt": "2026-09-15T20:18:30.404Z", "contentChangedAt": "2026-09-16T17:28:04.945Z",
"eventCount": 10, "eventCount": 10,
"charset": "utf-8" "charset": "utf-8"
} }
+19 -19
View File
@@ -3,7 +3,7 @@
<head> <head>
<meta charset="UTF-8"> <meta charset="UTF-8">
<title>Stella Sora Wiki - Stella Sora Wiki</title> <title>Stella Sora Wiki - Stella Sora Wiki</title>
<script>document.documentElement.className="client-js skin-theme-clientpref-os citizen-feature-autohide-navigation-clientpref-1 citizen-feature-image-dimming-clientpref-0 citizen-feature-pure-black-clientpref-0 citizen-feature-custom-font-size-clientpref-standard citizen-feature-custom-width-clientpref-standard citizen-feature-performance-mode-clientpref-1 citizen-header-position-left citizen-header-position-mobile-bottom";RLCONF={"wgBreakFrames":false,"wgSeparatorTransformTable":["",""],"wgDigitTransformTable":["",""],"wgDefaultDateFormat":"dmy","wgMonthNames":["","January","February","March","April","May","June","July","August","September","October","November","December"],"wgRequestId":"8694de07434fd22087b566ea","wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"Stella_Sora_Wiki","wgTitle":"Stella Sora Wiki","wgCurRevisionId":29320,"wgRevisionId":29320,"wgArticleId":1,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":["Stella Sora Wiki"],"wgPageViewLanguage":"en","wgPageContentLanguage":"en","wgPageContentModel":"wikitext","wgRelevantPageName":"Stella_Sora_Wiki","wgRelevantArticleId":1,"wgIsProbablyEditable":false,"wgRelevantPageIsProbablyEditable":false,"wgRestrictionEdit":["user"],"wgRestrictionMove":["user"],"wgIsMainPage":true,"wgRedirectedFrom":"Main_Page","simpleBatchUploadMaxFilesPerBatch":{"*":5,"autoconfirmed":25,"bureaucrat":500,"confirmed":50,"sysop":250,"user":5},"wgCargoDefaultQueryLimit":100,"wgCargoMapClusteringMinimum":80,"wgCargoMonthNamesShort":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"wgNoticeProject":"all","wgConfirmEditCaptchaNeededForGenericEdit":false,"wgCiteReferencePreviewsActive":true,"wgVisualEditor":{"pageLanguageCode":"en","pageLanguageDir":"ltr","pageVariantFallbacks":"en"},"wgMediaViewerOnClick":true,"wgMediaViewerEnabledByDefault":true,"wgPopupsFlags":0,"wgInternalRedirectTargetUrl":"/wiki/Stella_Sora_Wiki","wgCheckUserClientHintsHeadersJsApi":["brands","architecture","bitness","fullVersionList","mobile","model","platform","platformVersion"],"wgIsMobile":false,"wgEditSubmitButtonLabelPublish":false}; <script>document.documentElement.className="client-js skin-theme-clientpref-os citizen-feature-autohide-navigation-clientpref-1 citizen-feature-image-dimming-clientpref-0 citizen-feature-pure-black-clientpref-0 citizen-feature-custom-font-size-clientpref-standard citizen-feature-custom-width-clientpref-standard citizen-feature-performance-mode-clientpref-1 citizen-header-position-left citizen-header-position-mobile-bottom";RLCONF={"wgBreakFrames":false,"wgSeparatorTransformTable":["",""],"wgDigitTransformTable":["",""],"wgDefaultDateFormat":"dmy","wgMonthNames":["","January","February","March","April","May","June","July","August","September","October","November","December"],"wgRequestId":"383ffe779e299cd06fa7f99d","wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"Stella_Sora_Wiki","wgTitle":"Stella Sora Wiki","wgCurRevisionId":29320,"wgRevisionId":29320,"wgArticleId":1,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":["Stella Sora Wiki"],"wgPageViewLanguage":"en","wgPageContentLanguage":"en","wgPageContentModel":"wikitext","wgRelevantPageName":"Stella_Sora_Wiki","wgRelevantArticleId":1,"wgIsProbablyEditable":false,"wgRelevantPageIsProbablyEditable":false,"wgRestrictionEdit":["user"],"wgRestrictionMove":["user"],"wgIsMainPage":true,"wgRedirectedFrom":"Main_Page","simpleBatchUploadMaxFilesPerBatch":{"*":5,"autoconfirmed":25,"bureaucrat":500,"confirmed":50,"sysop":250,"user":5},"wgCargoDefaultQueryLimit":100,"wgCargoMapClusteringMinimum":80,"wgCargoMonthNamesShort":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"wgNoticeProject":"all","wgConfirmEditCaptchaNeededForGenericEdit":false,"wgCiteReferencePreviewsActive":true,"wgVisualEditor":{"pageLanguageCode":"en","pageLanguageDir":"ltr","pageVariantFallbacks":"en"},"wgMediaViewerOnClick":true,"wgMediaViewerEnabledByDefault":true,"wgPopupsFlags":0,"wgInternalRedirectTargetUrl":"/wiki/Stella_Sora_Wiki","wgCheckUserClientHintsHeadersJsApi":["brands","architecture","bitness","fullVersionList","mobile","model","platform","platformVersion"],"wgIsMobile":false,"wgEditSubmitButtonLabelPublish":false};
RLSTATE={"ext.globalCssJs.user.styles":"ready","ext.gadget.tooltip-pagestyles":"ready","ext.gadget.common-site":"ready","ext.gadget.navbox":"ready","ext.gadget.navbuttons":"ready","ext.gadget.tabber":"ready","ext.gadget.infobox":"ready","ext.gadget.variables":"ready","ext.gadget.audio-button":"ready","ext.gadget.RCSidebarStyles":"ready","site.styles":"ready","user.styles":"ready","ext.globalCssJs.user":"ready","user":"ready","user.options":"loading","skins.citizen.styles":"ready","skins.citizen.codex.styles":"ready","skins.citizen.icons":"ready","ext.CookieWarning.styles":"ready","oojs-ui-core.styles":"ready","oojs-ui.styles.indicators":"ready","mediawiki.widgets.styles":"ready","oojs-ui-core.icons":"ready","ext.MobileDetect.nomobile":"ready","ext.visualEditor.desktopArticleTarget.noscript":"ready","ext.embedVideo.styles":"ready","skins.citizen.tokens":"ready"};RLPAGEMODULES=["mediawiki.action.view.redirect","site","mediawiki.page.ready","skins.citizen.scripts","ext.centralNotice.geoIP","ext.centralNotice.startUp","ext.checkUser.clientHints","ext.CookieWarning","ext.echo.centralauth","ext.eventLogging","ext.urlShortener.toolbar","ext.visualEditor.desktopArticleTarget.init","ext.visualEditor.targetLoader","ext.embedVideo.overlay","mmv.bootstrap","ext.gadget.tooltip","ext.gadget.tooltip-default","ext.gadget.tooltip-userTime","ext.gadget.visualEditor","ext.gadget.countdown","ext.gadget.tab","ext.gadget.collapse","ext.gadget.stat-display","ext.gadget.filter-table","ext.gadget.audio-player","ext.gadget.RCSidebar","ext.gadget.TPT-check-all","ext.popups","ext.centralauth.centralautologin","ext.purge"];</script> RLSTATE={"ext.globalCssJs.user.styles":"ready","ext.gadget.tooltip-pagestyles":"ready","ext.gadget.common-site":"ready","ext.gadget.navbox":"ready","ext.gadget.navbuttons":"ready","ext.gadget.tabber":"ready","ext.gadget.infobox":"ready","ext.gadget.variables":"ready","ext.gadget.audio-button":"ready","ext.gadget.RCSidebarStyles":"ready","site.styles":"ready","user.styles":"ready","ext.globalCssJs.user":"ready","user":"ready","user.options":"loading","skins.citizen.styles":"ready","skins.citizen.codex.styles":"ready","skins.citizen.icons":"ready","ext.CookieWarning.styles":"ready","oojs-ui-core.styles":"ready","oojs-ui.styles.indicators":"ready","mediawiki.widgets.styles":"ready","oojs-ui-core.icons":"ready","ext.MobileDetect.nomobile":"ready","ext.visualEditor.desktopArticleTarget.noscript":"ready","ext.embedVideo.styles":"ready","skins.citizen.tokens":"ready"};RLPAGEMODULES=["mediawiki.action.view.redirect","site","mediawiki.page.ready","skins.citizen.scripts","ext.centralNotice.geoIP","ext.centralNotice.startUp","ext.checkUser.clientHints","ext.CookieWarning","ext.echo.centralauth","ext.eventLogging","ext.urlShortener.toolbar","ext.visualEditor.desktopArticleTarget.init","ext.visualEditor.targetLoader","ext.embedVideo.overlay","mmv.bootstrap","ext.gadget.tooltip","ext.gadget.tooltip-default","ext.gadget.tooltip-userTime","ext.gadget.visualEditor","ext.gadget.countdown","ext.gadget.tab","ext.gadget.collapse","ext.gadget.stat-display","ext.gadget.filter-table","ext.gadget.audio-player","ext.gadget.RCSidebar","ext.gadget.TPT-check-all","ext.popups","ext.centralauth.centralautologin","ext.purge"];</script>
<script>(RLQ=window.RLQ||[]).push(function(){mw.loader.impl(function(){return["user.options@12s5i",function($,jQuery,require,module){mw.user.tokens.set({"patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"}); <script>(RLQ=window.RLQ||[]).push(function(){mw.loader.impl(function(){return["user.options@12s5i",function($,jQuery,require,module){mw.user.tokens.set({"patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"});
}];});});</script> }];});});</script>
@@ -413,7 +413,7 @@ RLSTATE={"ext.globalCssJs.user.styles":"ready","ext.gadget.tooltip-pagestyles":"
</div> </div>
<div class="stellasora-home-card stellasora-home-card--current stellasora-home-current plainlinks"> <div class="stellasora-home-card stellasora-home-card--current stellasora-home-current plainlinks">
<h2 id="Birthdays" class="stellasora-home-card__header mw-html-heading">Birthdays</h2> <h2 id="Birthdays" class="stellasora-home-card__header mw-html-heading">Birthdays</h2>
<div class="stellasora-home-card&#95;&#95;content"><div class="stellasora-birthday-timeline"><div class="stellasora-birthday-timeline&#95;&#95;line"></div><div class="stellasora-birthday-timeline&#95;&#95;item stellasora-birthday-timeline&#95;&#95;item--today stellasora-birthday-timeline&#95;&#95;item--today-empty"><div class="stellasora-birthday-timeline&#95;&#95;item-characters"><div class="stellasora-birthday-timeline&#95;&#95;item-empty-text">No<br />birthdays<br />today</div></div><div class="stellasora-birthday-timeline&#95;&#95;item-date">Sep 15</div></div><div class="stellasora-birthday-timeline&#95;&#95;item"><div class="stellasora-birthday-timeline&#95;&#95;item-characters"><div class="stellasora-birthday-timeline&#95;&#95;character"><div class="stellasora-birthday-timeline&#95;&#95;item-icon"><span class="stellasora-icon stellasora-icon--small" typeof="mw:File"><a href="/wiki/Otoha" title="Otoha"><img src="//static.wikitide.net/stellasorawiki/thumb/1/1a/Otoha-head-xxl.png/48px-Otoha-head-xxl.png" decoding="async" loading="lazy" width="48" height="48" class="mw-file-element" srcset="//static.wikitide.net/stellasorawiki/thumb/1/1a/Otoha-head-xxl.png/72px-Otoha-head-xxl.png 1.5x, //static.wikitide.net/stellasorawiki/thumb/1/1a/Otoha-head-xxl.png/96px-Otoha-head-xxl.png 2x" data-file-width="192" data-file-height="192" /></a></span></div><div class="stellasora-birthday-timeline&#95;&#95;item-name"><a href="/wiki/Otoha" title="Otoha">Otoha</a></div></div></div><div class="stellasora-birthday-timeline&#95;&#95;item-date">Jan 14</div></div><div class="stellasora-birthday-timeline&#95;&#95;item"><div class="stellasora-birthday-timeline&#95;&#95;item-characters"><div class="stellasora-birthday-timeline&#95;&#95;character"><div class="stellasora-birthday-timeline&#95;&#95;item-icon"><span class="stellasora-icon stellasora-icon--small" typeof="mw:File"><a href="/wiki/Canace" title="Canace"><img src="//static.wikitide.net/stellasorawiki/thumb/2/23/Canace-head-xxl.png/48px-Canace-head-xxl.png" decoding="async" loading="lazy" width="48" height="48" class="mw-file-element" srcset="//static.wikitide.net/stellasorawiki/thumb/2/23/Canace-head-xxl.png/72px-Canace-head-xxl.png 1.5x, //static.wikitide.net/stellasorawiki/thumb/2/23/Canace-head-xxl.png/96px-Canace-head-xxl.png 2x" data-file-width="192" data-file-height="192" /></a></span></div><div class="stellasora-birthday-timeline&#95;&#95;item-name"><a href="/wiki/Canace" title="Canace">Canace</a></div></div></div><div class="stellasora-birthday-timeline&#95;&#95;item-date">Jan 22</div></div><div class="stellasora-birthday-timeline&#95;&#95;item"><div class="stellasora-birthday-timeline&#95;&#95;item-characters"><div class="stellasora-birthday-timeline&#95;&#95;character"><div class="stellasora-birthday-timeline&#95;&#95;item-icon"><span class="stellasora-icon stellasora-icon--small" typeof="mw:File"><a href="/wiki/Fuyuka" title="Fuyuka"><img src="//static.wikitide.net/stellasorawiki/thumb/9/95/Fuyuka-head-xxl.png/48px-Fuyuka-head-xxl.png" decoding="async" loading="lazy" width="48" height="48" class="mw-file-element" srcset="//static.wikitide.net/stellasorawiki/thumb/9/95/Fuyuka-head-xxl.png/72px-Fuyuka-head-xxl.png 1.5x, //static.wikitide.net/stellasorawiki/thumb/9/95/Fuyuka-head-xxl.png/96px-Fuyuka-head-xxl.png 2x" data-file-width="192" data-file-height="192" /></a></span></div><div class="stellasora-birthday-timeline&#95;&#95;item-name"><a href="/wiki/Fuyuka" title="Fuyuka">Fuyuka</a></div></div></div><div class="stellasora-birthday-timeline&#95;&#95;item-date">Jan 31</div></div><div class="stellasora-birthday-timeline&#95;&#95;item"><div class="stellasora-birthday-timeline&#95;&#95;item-characters"><div class="stellasora-birthday-timeline&#95;&#95;character"><div class="stellasora-birthday-timeline&#95;&#95;item-icon"><span class="stellasora-icon stellasora-icon--small" typeof="mw:File"><a href="/wiki/Teresa" title="Teresa"><img src="//static.wikitide.net/stellasorawiki/thumb/7/7a/Teresa-head-xxl.png/48px-Teresa-head-xxl.png" decoding="async" loading="lazy" width="48" height="48" class="mw-file-element" srcset="//static.wikitide.net/stellasorawiki/thumb/7/7a/Teresa-head-xxl.png/72px-Teresa-head-xxl.png 1.5x, //static.wikitide.net/stellasorawiki/thumb/7/7a/Teresa-head-xxl.png/96px-Teresa-head-xxl.png 2x" data-file-width="192" data-file-height="192" /></a></span></div><div class="stellasora-birthday-timeline&#95;&#95;item-name"><a href="/wiki/Teresa" title="Teresa">Teresa</a></div></div></div><div class="stellasora-birthday-timeline&#95;&#95;item-date">Feb 21</div></div></div></div> <div class="stellasora-home-card&#95;&#95;content"><div class="stellasora-birthday-timeline"><div class="stellasora-birthday-timeline&#95;&#95;line"></div><div class="stellasora-birthday-timeline&#95;&#95;item stellasora-birthday-timeline&#95;&#95;item--today stellasora-birthday-timeline&#95;&#95;item--today-empty"><div class="stellasora-birthday-timeline&#95;&#95;item-characters"><div class="stellasora-birthday-timeline&#95;&#95;item-empty-text">No<br />birthdays<br />today</div></div><div class="stellasora-birthday-timeline&#95;&#95;item-date">Sep 16</div></div><div class="stellasora-birthday-timeline&#95;&#95;item"><div class="stellasora-birthday-timeline&#95;&#95;item-characters"><div class="stellasora-birthday-timeline&#95;&#95;character"><div class="stellasora-birthday-timeline&#95;&#95;item-icon"><span class="stellasora-icon stellasora-icon--small" typeof="mw:File"><a href="/wiki/Otoha" title="Otoha"><img src="//static.wikitide.net/stellasorawiki/thumb/1/1a/Otoha-head-xxl.png/48px-Otoha-head-xxl.png" decoding="async" loading="lazy" width="48" height="48" class="mw-file-element" srcset="//static.wikitide.net/stellasorawiki/thumb/1/1a/Otoha-head-xxl.png/72px-Otoha-head-xxl.png 1.5x, //static.wikitide.net/stellasorawiki/thumb/1/1a/Otoha-head-xxl.png/96px-Otoha-head-xxl.png 2x" data-file-width="192" data-file-height="192" /></a></span></div><div class="stellasora-birthday-timeline&#95;&#95;item-name"><a href="/wiki/Otoha" title="Otoha">Otoha</a></div></div></div><div class="stellasora-birthday-timeline&#95;&#95;item-date">Jan 14</div></div><div class="stellasora-birthday-timeline&#95;&#95;item"><div class="stellasora-birthday-timeline&#95;&#95;item-characters"><div class="stellasora-birthday-timeline&#95;&#95;character"><div class="stellasora-birthday-timeline&#95;&#95;item-icon"><span class="stellasora-icon stellasora-icon--small" typeof="mw:File"><a href="/wiki/Canace" title="Canace"><img src="//static.wikitide.net/stellasorawiki/thumb/2/23/Canace-head-xxl.png/48px-Canace-head-xxl.png" decoding="async" loading="lazy" width="48" height="48" class="mw-file-element" srcset="//static.wikitide.net/stellasorawiki/thumb/2/23/Canace-head-xxl.png/72px-Canace-head-xxl.png 1.5x, //static.wikitide.net/stellasorawiki/thumb/2/23/Canace-head-xxl.png/96px-Canace-head-xxl.png 2x" data-file-width="192" data-file-height="192" /></a></span></div><div class="stellasora-birthday-timeline&#95;&#95;item-name"><a href="/wiki/Canace" title="Canace">Canace</a></div></div></div><div class="stellasora-birthday-timeline&#95;&#95;item-date">Jan 22</div></div><div class="stellasora-birthday-timeline&#95;&#95;item"><div class="stellasora-birthday-timeline&#95;&#95;item-characters"><div class="stellasora-birthday-timeline&#95;&#95;character"><div class="stellasora-birthday-timeline&#95;&#95;item-icon"><span class="stellasora-icon stellasora-icon--small" typeof="mw:File"><a href="/wiki/Fuyuka" title="Fuyuka"><img src="//static.wikitide.net/stellasorawiki/thumb/9/95/Fuyuka-head-xxl.png/48px-Fuyuka-head-xxl.png" decoding="async" loading="lazy" width="48" height="48" class="mw-file-element" srcset="//static.wikitide.net/stellasorawiki/thumb/9/95/Fuyuka-head-xxl.png/72px-Fuyuka-head-xxl.png 1.5x, //static.wikitide.net/stellasorawiki/thumb/9/95/Fuyuka-head-xxl.png/96px-Fuyuka-head-xxl.png 2x" data-file-width="192" data-file-height="192" /></a></span></div><div class="stellasora-birthday-timeline&#95;&#95;item-name"><a href="/wiki/Fuyuka" title="Fuyuka">Fuyuka</a></div></div></div><div class="stellasora-birthday-timeline&#95;&#95;item-date">Jan 31</div></div><div class="stellasora-birthday-timeline&#95;&#95;item"><div class="stellasora-birthday-timeline&#95;&#95;item-characters"><div class="stellasora-birthday-timeline&#95;&#95;character"><div class="stellasora-birthday-timeline&#95;&#95;item-icon"><span class="stellasora-icon stellasora-icon--small" typeof="mw:File"><a href="/wiki/Teresa" title="Teresa"><img src="//static.wikitide.net/stellasorawiki/thumb/7/7a/Teresa-head-xxl.png/48px-Teresa-head-xxl.png" decoding="async" loading="lazy" width="48" height="48" class="mw-file-element" srcset="//static.wikitide.net/stellasorawiki/thumb/7/7a/Teresa-head-xxl.png/72px-Teresa-head-xxl.png 1.5x, //static.wikitide.net/stellasorawiki/thumb/7/7a/Teresa-head-xxl.png/96px-Teresa-head-xxl.png 2x" data-file-width="192" data-file-height="192" /></a></span></div><div class="stellasora-birthday-timeline&#95;&#95;item-name"><a href="/wiki/Teresa" title="Teresa">Teresa</a></div></div></div><div class="stellasora-birthday-timeline&#95;&#95;item-date">Feb 21</div></div></div></div>
</div> </div>
<style data-mw-deduplicate="TemplateStyles:r2766">.mw-parser-output .stellasora-home-links__link-list--discord .stellasora-home-links__link-list-item--full::before{background-image:url("https://static.wikitide.net/commonswiki/a/aa/Discord_logo_icon.svg")}.mw-parser-output .stellasora-home-links__link-list--x .stellasora-home-links__link-list-item--full::before{background-image:url("https://upload.wikimedia.org/wikipedia/commons/5/55/Logo_X_Corp_%22Twitter%22.svg")}.mw-parser-output .stellasora-home-links__link-list--facebook .stellasora-home-links__link-list-item--full::before{background-image:url("https://upload.wikimedia.org/wikipedia/commons/9/90/Logo_Facebook_Blanco.png")}.mw-parser-output .stellasora-home-links__link-list--youtube .stellasora-home-links__link-list-item--full::before{background-image:url("https://upload.wikimedia.org/wikipedia/commons/4/42/YouTube_light_icon_%282017%29.svg")}.mw-parser-output .stellasora-home-links__link-list--google-play .stellasora-home-links__link-list-item--full::before{background-image:url("https://upload.wikimedia.org/wikipedia/commons/2/2f/Google_Play_2022_icon.svg")}.mw-parser-output .stellasora-home-links__link-list--app-store .stellasora-home-links__link-list-item--full::before{background-image:url("https://upload.wikimedia.org/wikipedia/commons/3/31/Apple_logo_white.svg")}</style><div class="stellasora-home-card stellasora-home-card--links stellasora-home-links plainlinks"> <style data-mw-deduplicate="TemplateStyles:r2766">.mw-parser-output .stellasora-home-links__link-list--discord .stellasora-home-links__link-list-item--full::before{background-image:url("https://static.wikitide.net/commonswiki/a/aa/Discord_logo_icon.svg")}.mw-parser-output .stellasora-home-links__link-list--x .stellasora-home-links__link-list-item--full::before{background-image:url("https://upload.wikimedia.org/wikipedia/commons/5/55/Logo_X_Corp_%22Twitter%22.svg")}.mw-parser-output .stellasora-home-links__link-list--facebook .stellasora-home-links__link-list-item--full::before{background-image:url("https://upload.wikimedia.org/wikipedia/commons/9/90/Logo_Facebook_Blanco.png")}.mw-parser-output .stellasora-home-links__link-list--youtube .stellasora-home-links__link-list-item--full::before{background-image:url("https://upload.wikimedia.org/wikipedia/commons/4/42/YouTube_light_icon_%282017%29.svg")}.mw-parser-output .stellasora-home-links__link-list--google-play .stellasora-home-links__link-list-item--full::before{background-image:url("https://upload.wikimedia.org/wikipedia/commons/2/2f/Google_Play_2022_icon.svg")}.mw-parser-output .stellasora-home-links__link-list--app-store .stellasora-home-links__link-list-item--full::before{background-image:url("https://upload.wikimedia.org/wikipedia/commons/3/31/Apple_logo_white.svg")}</style><div class="stellasora-home-card stellasora-home-card--links stellasora-home-links plainlinks">
<h2 id="Links" class="stellasora-home-card__header mw-html-heading">Links</h2> <h2 id="Links" class="stellasora-home-card__header mw-html-heading">Links</h2>
@@ -444,13 +444,13 @@ RLSTATE={"ext.globalCssJs.user.styles":"ready","ext.gadget.tooltip-pagestyles":"
</div> </div>
<!-- <!--
NewPP limit report NewPP limit report
Parsed by mw193 Parsed by mw182
Cached time: 20260915101440 Cached time: 20260916100616
Cache expiry: 1296000 Cache expiry: 1296000
Reduced expiry: false Reduced expiry: false
Complications: [notoc] Complications: [notoc]
CPU time usage: 0.273 seconds CPU time usage: 0.239 seconds
Real time usage: 0.934 seconds Real time usage: 0.316 seconds
Preprocessor visited node count: 557/1000000 Preprocessor visited node count: 557/1000000
Revision size: 558/2097152 bytes Revision size: 558/2097152 bytes
Postexpand include size: 43236/2097152 bytes Postexpand include size: 43236/2097152 bytes
@@ -459,24 +459,24 @@ Highest expansion depth: 6/100
Expensive parser function count: 3/99 Expensive parser function count: 3/99
Unstrip recursion depth: 0/20 Unstrip recursion depth: 0/20
Unstrip postexpand size: 13570/5000000 bytes Unstrip postexpand size: 13570/5000000 bytes
Lua time usage: 0.115/10.000 seconds Lua time usage: 0.104/10.000 seconds
Lua memory usage: 1284402/52428800 bytes Lua memory usage: 1284402/52428800 bytes
Bucket time usage: 0.089/10 seconds Bucket time usage: 0.008/10 seconds
--> -->
<!-- <!--
Transclusion expansion time report (%,ms,calls,template) Transclusion expansion time report (%,ms,calls,template)
100.00% 772.728 1 -total 100.00% 193.235 1 -total
61.29% 473.639 1 Template:MainPage/Recent 40.34% 77.946 1 Template:MainPage/Recent
53.65% 414.538 6 Template:Card 38.89% 75.152 1 Template:MainPage/Current
18.19% 140.540 1 Template:MainPage/Current 29.12% 56.263 6 Template:Card
16.03% 123.869 1 Template:MainPage/Birthdays 16.98% 32.803 4 Template:MainPage/Banner
4.38% 33.877 4 Template:MainPage/Banner 9.92% 19.171 1 Template:MainPage/Birthdays
2.59% 20.021 1 Template:MainPage/Links 6.59% 12.727 1 Template:MainPage/Links
1.04% 8.042 1 Template:MainPage/Header 2.06% 3.985 1 Template:MainPage/Header
0.74% 5.723 1 Template:MainPage/Navigation 1.79% 3.453 1 Template:MainPage/Navigation
--> -->
<!-- Saved in parser cache with key stellasorawiki:pcache:1:|#|:idhash:canonical and timestamp 20260915101440 and revision id 29320. Rendering was triggered because: page_view <!-- Saved in parser cache with key stellasorawiki:pcache:1:|#|:idhash:canonical and timestamp 20260916100616 and revision id 29320. Rendering was triggered because: page_view
--> -->
</div><noscript><img src="https://stellasora.miraheze.org/wiki/Special:CentralAutoLogin/start?type=1x1&amp;usesul3=1" alt="" width="1" height="1" style="border: none; position: absolute;"></noscript> </div><noscript><img src="https://stellasora.miraheze.org/wiki/Special:CentralAutoLogin/start?type=1x1&amp;usesul3=1" alt="" width="1" height="1" style="border: none; position: absolute;"></noscript>
<div class="printfooter" data-nosnippet="">Retrieved from "<a dir="ltr" href="https://stellasora.miraheze.org/wiki/Stella_Sora_Wiki?oldid=29320">https://stellasora.miraheze.org/wiki/Stella_Sora_Wiki?oldid=29320</a>"</div></div> <div class="printfooter" data-nosnippet="">Retrieved from "<a dir="ltr" href="https://stellasora.miraheze.org/wiki/Stella_Sora_Wiki?oldid=29320">https://stellasora.miraheze.org/wiki/Stella_Sora_Wiki?oldid=29320</a>"</div></div>
@@ -714,7 +714,7 @@ Transclusion expansion time report (%,ms,calls,template)
</div> </div>
</div> </div>
<script>(RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgHostname":"mw193","wgBackendResponseTime":188,"wgPageParseReport":{"limitreport":{"cputime":"0.273","walltime":"0.934","ppvisitednodes":{"value":557,"limit":1000000},"revisionsize":{"value":558,"limit":2097152},"postexpandincludesize":{"value":43236,"limit":2097152},"templateargumentsize":{"value":200,"limit":2097152},"expansiondepth":{"value":6,"limit":100},"expensivefunctioncount":{"value":3,"limit":99},"unstrip-depth":{"value":0,"limit":20},"unstrip-size":{"value":13570,"limit":5000000},"timingprofile":["100.00% 772.728 1 -total"," 61.29% 473.639 1 Template:MainPage/Recent"," 53.65% 414.538 6 Template:Card"," 18.19% 140.540 1 Template:MainPage/Current"," 16.03% 123.869 1 Template:MainPage/Birthdays"," 4.38% 33.877 4 Template:MainPage/Banner"," 2.59% 20.021 1 Template:MainPage/Links"," 1.04% 8.042 1 Template:MainPage/Header"," 0.74% 5.723 1 Template:MainPage/Navigation"]},"scribunto":{"limitreport-timeusage":{"value":"0.115","limit":"10.000"},"limitreport-memusage":{"value":1284402,"limit":52428800}},"bucket":{"limitreport-run-time":{"value":"0.089","limit":"10"}},"cachereport":{"origin":"mw193","timestamp":"20260915101440","ttl":1296000,"transientcontent":false}}});});</script> <script>(RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgHostname":"mw182","wgBackendResponseTime":196,"wgPageParseReport":{"limitreport":{"cputime":"0.239","walltime":"0.316","ppvisitednodes":{"value":557,"limit":1000000},"revisionsize":{"value":558,"limit":2097152},"postexpandincludesize":{"value":43236,"limit":2097152},"templateargumentsize":{"value":200,"limit":2097152},"expansiondepth":{"value":6,"limit":100},"expensivefunctioncount":{"value":3,"limit":99},"unstrip-depth":{"value":0,"limit":20},"unstrip-size":{"value":13570,"limit":5000000},"timingprofile":["100.00% 193.235 1 -total"," 40.34% 77.946 1 Template:MainPage/Recent"," 38.89% 75.152 1 Template:MainPage/Current"," 29.12% 56.263 6 Template:Card"," 16.98% 32.803 4 Template:MainPage/Banner"," 9.92% 19.171 1 Template:MainPage/Birthdays"," 6.59% 12.727 1 Template:MainPage/Links"," 2.06% 3.985 1 Template:MainPage/Header"," 1.79% 3.453 1 Template:MainPage/Navigation"]},"scribunto":{"limitreport-timeusage":{"value":"0.104","limit":"10.000"},"limitreport-memusage":{"value":1284402,"limit":52428800}},"bucket":{"limitreport-run-time":{"value":"0.008","limit":"10"}},"cachereport":{"origin":"mw182","timestamp":"20260916100616","ttl":1296000,"transientcontent":false}}});});</script>
<script> <script>
var _paq = window._paq = window._paq || []; var _paq = window._paq = window._paq || [];
if ( 1 ) { if ( 1 ) {
@@ -1,11 +1,11 @@
{ {
"sourceId": "stellasora-stellasorawiki-events", "sourceId": "stellasora-stellasorawiki-events",
"url": "https://stellasora.miraheze.org/wiki/Main_Page", "url": "https://stellasora.miraheze.org/wiki/Main_Page",
"contentHash": "015f5b0bfce1fdb9625019ce3953e58ffefa8b027cc7c294e884e7130ea6e83e", "contentHash": "12cf450eab698f3cb78db0cb5ea6b7d620b3e4f30867a39212cf622e263f498d",
"bytes": 88435, "bytes": 88435,
"etag": null, "etag": null,
"lastModified": "Tue, 15 Sep 2026 10:00:48 GMT", "lastModified": "Wed, 16 Sep 2026 10:00:48 GMT",
"contentChangedAt": "2026-09-16T01:01:46.108Z", "contentChangedAt": "2026-09-16T17:28:08.401Z",
"eventCount": 4, "eventCount": 4,
"charset": "utf-8" "charset": "utf-8"
} }
File diff suppressed because one or more lines are too long
+5 -5
View File
@@ -1,11 +1,11 @@
{ {
"sourceId": "uma-game8-events", "sourceId": "uma-game8-events",
"url": "https://game8.co/games/Umamusume-Pretty-Derby/archives/536311", "url": "https://game8.co/games/Umamusume-Pretty-Derby/archives/536311",
"contentHash": "096d6fd1c198cc88fbde296db20a46d065e621bf4e4a98ff98e4e35153430018", "contentHash": "0b7c3f7b74954fdca5c9432b42726a226ffaed3b5fb7e891f817bb6a9bef7ec4",
"bytes": 480194, "bytes": 481780,
"etag": "W/\"096d6fd1c198cc88fbde296db20a46d0\"", "etag": "W/\"0b7c3f7b74954fdca5c9432b42726a22\"",
"lastModified": null, "lastModified": null,
"contentChangedAt": "2026-09-16T01:01:54.072Z", "contentChangedAt": "2026-09-16T17:28:15.699Z",
"eventCount": 2, "eventCount": 4,
"charset": "utf-8" "charset": "utf-8"
} }
File diff suppressed because one or more lines are too long
+4 -4
View File
@@ -1,11 +1,11 @@
{ {
"sourceId": "wuwa-game8-events", "sourceId": "wuwa-game8-events",
"url": "https://game8.co/games/Wuthering-Waves/archives/453473", "url": "https://game8.co/games/Wuthering-Waves/archives/453473",
"contentHash": "1cd647f606bd4636365b793467d8c188a252cd6263b58c5962c876fd07439daa", "contentHash": "fff7a2b5970d9322ddf78f62277a8f8e57afcc9cfe6149a3973c062bcad1c853",
"bytes": 694682, "bytes": 694792,
"etag": "W/\"1cd647f606bd4636365b793467d8c188\"", "etag": "W/\"fff7a2b5970d9322ddf78f62277a8f8e\"",
"lastModified": null, "lastModified": null,
"contentChangedAt": "2026-09-16T01:01:29.001Z", "contentChangedAt": "2026-09-16T17:27:52.518Z",
"eventCount": 8, "eventCount": 8,
"charset": "utf-8" "charset": "utf-8"
} }
File diff suppressed because one or more lines are too long
+4 -4
View File
@@ -1,11 +1,11 @@
{ {
"sourceId": "zzz-game8-events", "sourceId": "zzz-game8-events",
"url": "https://game8.co/games/Zenless-Zone-Zero/archives/457176", "url": "https://game8.co/games/Zenless-Zone-Zero/archives/457176",
"contentHash": "b22c4fb4304dba3733ea2d5399f48e51497fa5c92bbaae4cdd83392846132e8d", "contentHash": "99b4ab144e0360eba7a6be7d559489684ad4cd0b087a55a7ddb6cfd71a1ef573",
"bytes": 478734, "bytes": 478917,
"etag": "W/\"b22c4fb4304dba3733ea2d5399f48e51\"", "etag": "W/\"99b4ab144e0360eba7a6be7d55948968\"",
"lastModified": null, "lastModified": null,
"contentChangedAt": "2026-09-16T01:01:31.279Z", "contentChangedAt": "2026-09-16T17:27:54.758Z",
"eventCount": 13, "eventCount": 13,
"charset": "utf-8" "charset": "utf-8"
} }