[05:49:42] Morning o/ [07:42:30] 10Machine-Learning-Team: Upgrade model servers to kserve 0.11.2 - https://phabricator.wikimedia.org/T351633 (10isarantopoulos) 05Open→03Resolved [07:47:39] 10Machine-Learning-Team, 10Patch-For-Review: Enable local runs for article-descriptions model - https://phabricator.wikimedia.org/T351940 (10isarantopoulos) Currently investigating the following error I get on model load when setting low_cpu_usage=True : ` File "/Users/isaranto/repoz/inference-services/articl... [08:01:29] Afk for 1h [08:09:55] (03CR) 10Kosta Harlan: Change default config values to support local/patchdemo deployments [extensions/ORES] - 10https://gerrit.wikimedia.org/r/976157 (https://phabricator.wikimedia.org/T351703) (owner: 10Ilias Sarantopoulos) [08:09:59] (03CR) 10Kosta Harlan: [C: 03+2] Change default config values to support local/patchdemo deployments [extensions/ORES] - 10https://gerrit.wikimedia.org/r/976157 (https://phabricator.wikimedia.org/T351703) (owner: 10Ilias Sarantopoulos) [08:13:00] (03Merged) 10jenkins-bot: Change default config values to support local/patchdemo deployments [extensions/ORES] - 10https://gerrit.wikimedia.org/r/976157 (https://phabricator.wikimedia.org/T351703) (owner: 10Ilias Sarantopoulos) [09:03:37] Back! [09:16:23] morning! [09:41:00] 10Machine-Learning-Team: Apply multi-processing to preprocess() in isvcs that suffer from high latency - https://phabricator.wikimedia.org/T349274 (10elukey) a:05elukey→03None [09:50:53] (03PS18) 10Ilias Sarantopoulos: add revertrisk model to the list of models [extensions/ORES] - 10https://gerrit.wikimedia.org/r/971547 (https://phabricator.wikimedia.org/T348298) [10:36:24] G'day [10:36:39] kevinbazira: will push the a-d update once Jenkins has merged it [10:37:38] klausman: o/ [10:37:43] great. thanks!! [10:40:53] And it's running. Old pod still shutting down [10:42:43] Old pods are gone. I'll tail the logs to see if-when testing shows anything [10:46:11] kevinbazira: it just threw a 500: https://phabricator.wikimedia.org/P53917 [10:46:55] Also, it seems the wmapi is returning 404s [10:47:11] klausman: thanks. I do not have permission to view the link you shared :) [10:47:49] should be visible now [10:48:44] https://phabricator.wikimedia.org/P53918 and here's the 404s [10:50:22] ok, both 404 are because of the internal endpoint: `api-ro.discovery.wmnet` [10:53:04] 10Machine-Learning-Team, 10MediaWiki-extensions-ORES, 10Growth-Team, 10Wikipedia-Android-App-Backlog, 10Patch-For-Review: Add revertrisk-language-agnostic to RecentChanges filters - https://phabricator.wikimedia.org/T348298 (10Samwalton9-WMF) We've come to realise that this task is important for both the... [10:57:07] So are the 404s expected in normal operation? [11:02:10] no they are not expected [11:02:47] is there a way you can confirm whether we can hit this endpoint on k8s/LiftWing? [11:02:47] ``` [11:02:47] 'http://api-ro.discovery.wmnet/api/rest_v1/page/summary/Clandonald' [11:02:47] ``` [11:03:02] I'll give it a shot [11:03:56] What is the Host: header to use? [11:05:02] For a direct request, I am getting an Unconfigured domain page [11:10:23] the host header is `*.wikipedia.org` in this case we could test with: `en.wikipedia.org` [11:11:46] I'll c&p the HTML I get [11:12:50] https://phabricator.wikimedia.org/P53919 [11:14:19] This ran from inside the kserve container inside of article-descriptions-predictor-default-00005-deployment-c6x4tqh [11:14:42] "Did you mean: " ;) [11:16:48] (inside the paste_ [11:16:50] ) [11:17:03] (I think a /wiki/ is missing) [11:17:06] * elukey lunch [11:17:41] great. so the "did you mean" part is suggesting to use: `/wiki/api/rest_v1/page/summary/Clandonald` [11:17:58] instead of `api/rest_v1/page/summary/Clandonald` [11:18:32] thank you for sharing the log klausman. let me push a patch. [11:19:12] I've tried using the suggest URL, but so far, that just hangs [11:19:21] i.e. >>> url = 'http://api-ro.discovery.wmnet/wiki/api/rest_v1/page/summary/Clandonald' [11:19:35] o_o [11:20:20] Kinda wild. [11:21:39] ah, this works: [11:21:47] http://api-ro.discovery.wmnet/wiki/Api/rest_v1/page/summary/Clandonald [11:21:57] (I think. It's a lot of HTML) [11:22:34] ok, we want it to return something similar to what this returns: https://en.wikipedia.org/api/rest_v1/page/summary/Clandonald [11:23:46] yeah, no, I get a whole HTML page, no JSON [11:24:22] I think the hint to go to wiki/api is a red herring, that is not supposed to happen [11:28:44] klausman: how about we try: `http://api-ro.discovery.wmnet/v1/page/summary/Clandonald` [11:29:01] sec [11:29:37] nope, same "we could not find this page" messgae [11:30:43] hmmm... I suggested that because in the rec-api we couldn't hit this endpoint on k8s: [11:30:43] ``` [11:30:43] https://wikimedia.org/api/rest_v1/metrics/pageviews [11:30:43] ``` [11:30:43] so elukey advised that we change it to: [11:30:44] ``` [11:30:44] http://localhost:6033/wikimedia.org/v1/metrics/pageviews [11:30:45] ``` [11:30:45] with the `wikimedia.org` set as the host header and it worked. [11:32:00] so in this case we are trying to access: [11:32:00] ``` [11:32:00] https://en.wikipedia.org/api/rest_v1/page/summary/Clandonald [11:32:00] ``` [11:32:00] so far we have set `*.wikipedia.org` as the host header and are using `api-ro.discovery.wmnet` as the internal k8s endpoint but this endpoint is failing: [11:32:01] ``` [11:32:01] http://api-ro.discovery.wmnet/api/rest_v1/page/summary/Clandonald [11:32:02] ``` [11:32:02] we definitely need to adjust this path `api/rest_v1/page/summary/Clandonald` [11:34:45] oh hang on, I may have done a dumb [11:37:32] So I am trying http://api-ro.discovery.wmnet/api/v1/page/summary/Clandonald with Host: 'wikimedia.org', but that just gives me a 502 [11:37:50] I have also tried H: en.wikipedia.org, but that gives the "we don't know this page" message [11:38:19] Same URL, no /api prefix, and the wm.org Host, also 502. [11:39:03] It's puzzling to me that H: en.... and the same URL-Path as external ("/api/....") doesn't just work. [11:42:43] yep, we experienced this issue with the rec-api. endpoints internal to k8s don't seem to work the same way external ones do and there doesn't seem to be clear documentation on why that is :) [11:49:57] I also looked at the Istio logs, and it just logs this JSON event: https://phabricator.wikimedia.org/P53921 [11:50:22] Which seems like it's just doing what we're asking it to [11:51:23] elukey: I am out of ideas here. Would appreciate a hint :) [11:51:26] to me it seems like you're trying to send some requests to mediawiki even though the endpoints are handled by some other service [11:51:43] /api/rest_v1/ for example is handled by restbase per https://gerrit.wikimedia.org/r/plugins/gitiles/operations/puppet/+/refs/heads/production/hieradata/common/profile/trafficserver/backend.yaml#309 [11:54:00] 10Machine-Learning-Team, 10GrowthExperiments, 10Growth-Team (Sprint 3 (Growth Team)), 10MW-1.42-notes (1.42.0-wmf.7; 2023-11-28): importOresTopics script fails to import topics - https://phabricator.wikimedia.org/T350137 (10Urbanecm_WMF) 05Open→03Resolved [11:57:17] With H: restbase and the original URL (api-ro), I get a 502, but I don't know *yet) from what [11:59:30] Probably Istio itself, since we haven't configured it in ml-serve.yaml [12:01:23] I'll have a think on this over lunch. bbiab [12:14:13] Morning all [12:27:15] o/ [12:27:28] * isaranto afk lunch [13:08:11] wikibugs: [13:24:13] 🐛 [13:31:14] hey folks [13:31:22] back :) [13:32:26] klausman: what taa*vi suggested is that we hit the restbase discovery endpoint [13:32:35] something that we don't currently allow in the mesh [13:33:07] kevinbazira: re: localhost:port, that combination is only needed for services outside the mesh, not isvcs (so ores-legacy and rec-api-ng for the moment) [13:33:13] we discussed it during the last hack meeting [13:35:36] so, the external URL for restbase is https://en.wikipedia.org/api/rest_v1/page/summary/Clandonald [13:35:39] and that works [13:36:09] but as taa*vi mentioned, it doesn't hit (after the CDN) api-ro.discovery.wmnet, but Restbase, that has a different endpoint [13:37:50] just to add more difficulty, RestBase is currently being deprecated in favor of rest-gateway.discovery.wmnet [13:37:55] that has the same API though [13:38:14] so in service.yaml (puppet), rest-gateway.discovery.wmnet seems to listen on port 4113 [13:42:30] kevinbazira: I don't recall what we did for rec-api-ng, what URI do we use? [13:51:10] mmm if I try the following from stat1004 it hangs [13:51:11] https://rest-gateway.discovery.wmnet:4113/wikimedia.org/v1/page/summary/Clandonald [13:57:23] elukey: in the rec-api-ng the internal endpoints and host headers we used are: [13:57:23] https://github.com/wikimedia/research-recommendation-api/blob/master/recommendation/data/recommendation_liftwing.ini#L1-L15 [13:57:23] we used them to access these external endpoints: [13:57:23] https://github.com/wikimedia/research-recommendation-api/blob/master/recommendation/data/recommendation.ini#L1-L7 [13:58:35] yep yep, so we used the rest gateway in that case [13:58:43] but it may not be fully compatible with restbase yet [13:58:55] trying to make the restbase.discovery.wmnet URL to work [13:59:31] okok [14:05:36] ahhh okok [14:05:38] https://restbase.discovery.wmnet:7443/en.wikipedia.org/v1/page/summary/Clandonald [14:05:41] this is the right one [14:05:51] let's see if rest-gateway is similar [14:06:20] yeah https://rest-gateway.discovery.wmnet:4113/en.wikipedia.org/v1/page/summary/Clandonald works [14:06:29] all right I think I have it [14:06:55] so, to recap: [14:07:32] a request like the following, https://en.wikipedia.org/api/rest_v1/page/summary/Clandonald [14:07:55] hits our external CDN cache layer (haproxy + varnish + ATS, if you recall from the hack time) [14:09:02] in there, as taa*vi mentioned, there is a rule that eventually (since we are in the middle of a migration) hits rest-gateway.discovery.wmnet:4113 [14:09:32] this proxy config is stored in the CDN config on puppet, like https://gerrit.wikimedia.org/r/plugins/gitiles/operations/puppet/+/refs/heads/production/hieradata/common/profile/trafficserver/backend.yaml#309 [14:09:56] at the moment you see restbase.discovery.wmnet:7443 but it will be deprecated soon, so we use the new one directly [14:10:30] the discovery endpoints that we just mentioned are not api-ro.discovery.wmnet, that is the MW API load balanced vip [14:10:50] Restbase is https://wikitech.wikimedia.org/wiki/RESTBase, if you are curious [14:11:06] behind the scenes it calls api-ro.discovery.wmnet too, but the APIs are different [14:11:21] so, the proxy rule is the following: [14:11:37] https://en.wikipedia.org/api/rest_v1/page/summary/Clandonald becomes [14:11:48] https://rest-gateway.discovery.wmnet:4113/en.wikipedia.org/v1/page/summary/Clandonald [14:12:02] without a specific Host header should work fine [14:12:16] note how en.wikipedia.org is inserted directly in the URI [14:12:37] there are two tasks to be made: [14:13:05] 1) Allow the Istio mesh to contact rest-gateway.discovery.wmnet (the three configs in ml-serve.yaml in deployment-charts) [14:13:42] 2) the isvc code needs to be adapted to call the rest-gateway directly (where /api/rest_v1 is used) [14:13:49] 3) thanks taavi for the help :) [14:14:12] kevinbazira, klausman: lemme know if anything is not clear --^ [14:16:18] thank you for the explanation elukey. in the model-server we were using: [14:16:19] ``` [14:16:19] http://api-ro.discovery.wmnet/api/rest_v1/page/summary/Clandonald [14:16:19] ``` [14:16:19] I am going to push a patch that updates it to: [14:16:19] ``` [14:16:19] https://rest-gateway.discovery.wmnet:4113/en.wikipedia.org/v1/page/summary/Clandonald [14:16:20] ``` [14:21:22] kevinbazira: I'd wait for Tobias, since we need to add the mesh config before that. If you recall during the hack time we went through how we configure the MW API and eventgate, using HTTP vs HTTPS ports to allow metrics. In this case we need to create another HTTP port (say 4110) and use http:// in the isvc code [14:22:15] sure sure. I'll prepare the patch and wait to merge. is that ok? [14:23:12] we need to decide the http port first, Tobias will do it in deployment-charts, after that you'll have the final URL to call [14:23:57] okok [14:36:13] but please let me know if anything is unclear [14:36:24] we can have a chat over meet if you prefer [14:36:30] (localhost:port vs mesh etc..) [14:36:42] elukey: sounds good re: proxy/mesh changes [14:37:40] ack, are you going to take care of the patch? [14:37:45] I can review it when ready [14:37:47] yes [14:38:05] currently sorting a messed up git checkout [14:41:56] elukey: should we just c&p the series of hosts from the api-ro VS to the restgw VS? Or just use wikipedia (base and wildcard)? [14:43:47] klausman: I think the wikipedia domains should be enough, not sure if the other works [14:43:55] we should test and see [14:44:03] ack. we can always add them later [14:44:05] I think that maybe wikidata works, but not the others [14:49:59] elukey: https://gerrit.wikimedia.org/r/c/operations/deployment-charts/+/978059 --- Not sure I got the ports (4110/4113) right [14:51:46] 10Machine-Learning-Team: refactor revertrisk model server to run locally - https://phabricator.wikimedia.org/T352181 (10isarantopoulos) [14:52:35] 10Machine-Learning-Team, 10Patch-For-Review: Enable local runs for article-descriptions model - https://phabricator.wikimedia.org/T351940 (10isarantopoulos) [14:52:45] 10Machine-Learning-Team: refactor revertrisk model server to run locally - https://phabricator.wikimedia.org/T352181 (10isarantopoulos) [14:55:23] klausman: I came up with 4110 without checking, if it is used in puppet by another service definition we may want something different [14:55:34] (so in case we'll need to add that service, nothing will clash) [14:56:18] 4110 is already used I think. hieradata/common/service.yaml mentions it in "Similar-users" (sockpuppet detection) [14:56:33] yeah so let's use another one [14:56:44] 4111 is unsued, I think, let's use that [14:57:07] sure [14:57:23] 10Machine-Learning-Team: Deploy ctranslate2 version of nllb-200 - https://phabricator.wikimedia.org/T351740 (10isarantopoulos) [14:57:25] change has been updated [14:58:10] klausman: looks good, maybe let's add some info to the description and Bug: #task so we have a reference [14:59:01] 10Machine-Learning-Team: Document load test results - https://phabricator.wikimedia.org/T351939 (10isarantopoulos) [14:59:40] updated [15:00:33] 10Machine-Learning-Team: Bump model servers to debian Bookworm - https://phabricator.wikimedia.org/T352184 (10isarantopoulos) [15:40:12] 10Machine-Learning-Team: Document procedure for updating the underlying distro for model servers (e.g. Bullseye -> Bookworm) - https://phabricator.wikimedia.org/T352189 (10klausman) [15:41:20] 10Machine-Learning-Team, 10Goal: Goal: Increase the number of models hosted on Lift Wing - https://phabricator.wikimedia.org/T348156 (10kevinbazira) Working on migrating the machine-generated article descriptions model from toolforge to LiftWing: - added article-descriptions model-server to LiftWing inference... [15:47:15] 10Machine-Learning-Team: refactor revertrisk model server to run locally - https://phabricator.wikimedia.org/T352181 (10isarantopoulos) p:05Triage→03Medium [15:48:35] 10Machine-Learning-Team, 10MediaWiki-extensions-ORES, 10Growth-Team, 10Wikipedia-Android-App-Backlog, 10Patch-For-Review: Add revertrisk-language-agnostic to RecentChanges filters - https://phabricator.wikimedia.org/T348298 (10isarantopoulos) p:05Triage→03Medium [15:48:57] 10Machine-Learning-Team: Document procedure for updating the underlying distro for model servers (e.g. Bullseye -> Bookworm) - https://phabricator.wikimedia.org/T352189 (10calbon) p:05Triage→03Medium [15:50:31] 10Machine-Learning-Team: Bump model servers to debian Bookworm - https://phabricator.wikimedia.org/T352184 (10calbon) a:03isarantopoulos [15:51:50] 10Machine-Learning-Team, 10Product-Analytics, 10User-Iflorez: Transient error while running lift wing topic model - https://phabricator.wikimedia.org/T351114 (10calbon) p:05Triage→03Medium [15:51:57] 10Machine-Learning-Team, 10Patch-For-Review: Enable local runs for article-descriptions model - https://phabricator.wikimedia.org/T351940 (10isarantopoulos) a:03isarantopoulos [15:52:18] 10Machine-Learning-Team, 10Patch-For-Review: Enable local runs for article-descriptions model - https://phabricator.wikimedia.org/T351940 (10calbon) p:05Triage→03Medium [15:52:46] 10Machine-Learning-Team: Document load test results - https://phabricator.wikimedia.org/T351939 (10calbon) p:05Triage→03Medium [15:55:52] 10Machine-Learning-Team, 10serviceops, 10Patch-For-Review: Bump istio Docker images to Bookworm - https://phabricator.wikimedia.org/T351933 (10calbon) p:05Triage→03Medium [15:56:29] 10Machine-Learning-Team: Document procedure for updating the underlying distro for model servers (e.g. Bullseye -> Bookworm) - https://phabricator.wikimedia.org/T352189 (10isarantopoulos) [15:56:31] 10Machine-Learning-Team: Document load test results - https://phabricator.wikimedia.org/T351939 (10isarantopoulos) [16:20:48] elukey: the istio change should just be a `helmfile -e ml-staging-codfw apply` from admin_ng, right? [16:22:25] yep [16:22:53] ok, pushing, [16:27:47] SO we assume now that a plain request (No Host-header) to https://rest-gateway.discovery.wmnet:4113/en.wikipedia.org/v1/page/summary/Clandonald should just work, right? [16:28:37] Because I am still getting timeouts from inside the container [16:28:55] Oh wai.... [16:29:20] not https [16:29:41] ah, right [16:30:37] http:// to :4113 gives me a conn refused, to :4111 I get a timeout [16:32:19] try to kill/restart the pod just in case, if the envoy proxy needs an encouragement [16:32:25] ack [16:32:25] in theory no but.. [16:35:27] same deal (timeout/conn refused) [16:36:21] ah, I think I know what the problem is [16:37:10] so in the example of event gate http-pott is num 4480, target 4492, and then 4492 as the https port (service entry), and in the dDR, it uses 4480 again [16:37:34] But my config (4111 -> 4113) uses 4113 in the DR, which is wrong [16:39:19] https://gerrit.wikimedia.org/r/c/operations/deployment-charts/+/978098 when you have a moment [16:56:50] klausman: +1, maybe just do a quick kubectl edit to the dr to verify? [16:56:58] good call [16:56:59] in case there is anything more etc.. [16:57:55] what NS is that in? [16:59:50] elukey: or rather, what object would I be editing. It's not just in the exp namespace, so istio-system, I guess? [17:01:25] klausman: should be in knative-serving IIRC [17:07:38] That wssn't it, still getting timeout :-( [17:08:45] mmm weird, what is the URL that you are checking? (to double check) [17:09:15] http://rest-gateway.discovery.wmnet:4111/en.wikipedia.org/v1/page/summary/Clandonald [17:09:42] basically what kevin mentioned earlier, but s/https/http/ [17:13:03] I run `import requests;r=requests.get('http://rest-gateway.discovery.wmnet:4111/en.wikipedia.org/v1/page/summary/Clandonald', timeout=10)` and it always runs into the 10s timeout. [17:20:02] going afk folks, cu tomorrow [17:24:30] Also note: [17:24:31] $ curl http://rest-gateway.discovery.wmnet:4113/en.wikipedia.org/v1/page/summary/Clandonald [17:24:33] curl: (52) Empty reply from server [17:24:39] (from deploy2002) [17:25:26] (ah, https, nvm) [17:40:02] elukey: The IP restbase is on is already in our list of allowed IPs, right? [17:40:28] klausman: ah no I thought network policies were added! [17:40:40] that's it then, sorry I assumed the wrong thing [17:40:49] I can't remember where the IP ranges are configured [17:41:05] it is in the article description's value.yaml under helmfile [17:41:21] you'll find also api-ro etc.. [17:41:35] you can also edit networkpolicies in the pods namespace [17:42:00] to quickly check [17:42:16] or do you mean the ips for the service itself? (discovery one) [17:42:40] if so netbox, but a DNS lookup would do it as well (we don't change the VIP IPs once created, so we are good) [17:43:37] helmfile.d/ml-services/experimental/values.yaml seems like the right place [17:45:05] exactly yes [17:45:47] mh. looks like there isn't one in codfw, only eqiad [17:46:10] nvm, typo [17:46:17] ahhh okok I was worried :D [17:50:05] It works! [17:50:13] >>> r.content [17:50:15] b'{"type":"standard","title":"Clandonald","displayti [17:50:17] (truncated) [17:50:25] Review has been updated [17:51:09] nice! [17:52:39] +1 [17:52:59] merci :) [17:53:11] I will merge and check it is a noop over my already-done edits. [17:58:42] all good [17:58:58] klausman: do you want to explain what we did to the team tomorrow? [17:59:00] kevinbazira: the service should now work, should be good for your tests tomorrow [17:59:46] yep [18:03:14] thank you for fixing the Istio mesh klausman and elukey. is this endpoint working now: [18:03:14] ``` [18:03:14] http://rest-gateway.discovery.wmnet:4113/en.wikipedia.org/v1/page/summary/Clandonald [18:03:14] ``` [18:03:15] if yes, in the model-server we were using: [18:03:16] ``` [18:03:16] http://api-ro.discovery.wmnet/api/rest_v1/page/summary/Clandonald [18:03:17] ``` [18:03:17] we shall push a patch that updates it to: [18:03:18] ``` [18:03:18] http://rest-gateway.discovery.wmnet:4113/en.wikipedia.org/v1/page/summary/Clandonald [18:03:19] ``` [18:09:27] kevinbazira: the port is 4111 but the rest is good [18:09:54] so one thing to keep in mind - in this case, en.wikipedia.org acts as host header [18:10:01] I don't know if we need to support more [18:10:19] so the parameter may need to vary and not be hardcoded [18:11:12] * elukey afk! [18:11:19] have a nice rest of the day folks! [18:12:07] elukey: thank you for clarifying on the port. we shall use `4111` [18:13:16] regarding the host headers, the model-server supports about 24 languages no only `en`: [18:13:16] https://github.com/wikimedia/machinelearning-liftwing-inference-services/blob/main/article-descriptions/model-server/utils.py#L11-L37 [18:14:35] we shall push the patch tomorrow. enjoy the rest of your day. o/ [19:14:54] 10Machine-Learning-Team, 10MediaWiki-extensions-ORES, 10Growth-Team, 10Wikipedia-Android-App-Backlog, 10Patch-For-Review: Add revertrisk-language-agnostic to RecentChanges filters - https://phabricator.wikimedia.org/T348298 (10KStoller-WMF) > In T348298#9362986, @Samwalton9-WMF wrote: > This patch also a... [20:13:35] 10Machine-Learning-Team, 10MediaWiki-extensions-ORES, 10Growth-Team, 10Wikipedia-Android-App-Backlog: CRS: Community rollout plan and discussion about adding revertrisk to RecentChanges filters - https://phabricator.wikimedia.org/T352217 (10KStoller-WMF) [20:14:00] 10Machine-Learning-Team, 10MediaWiki-extensions-ORES, 10Growth-Team, 10Wikipedia-Android-App-Backlog: CRS: Community rollout plan and discussion about adding revertrisk to RecentChanges filters - https://phabricator.wikimedia.org/T352217 (10KStoller-WMF) p:05Triage→03Medium [23:00:52] 10Machine-Learning-Team, 10Add-Link, 10Growth-Team (Sprint 3 (Growth Team)), 10User-notice: Deploy "add a link" to 15th round of wikis - https://phabricator.wikimedia.org/T308141 (10Etonkovidova) [23:04:05] 10Machine-Learning-Team, 10Add-Link, 10Growth-Team (Sprint 3 (Growth Team)), 10User-notice: Deploy "add a link" to 15th round of wikis - https://phabricator.wikimedia.org/T308141 (10Etonkovidova) Checked some wikis from the list - all looks as expected. Leaving the task in the Test in Production columns to... [23:05:25] 10Machine-Learning-Team, 10Product-Analytics, 10User-Iflorez: Transient error while running lift wing topic model - https://phabricator.wikimedia.org/T351114 (10Iflorez) 05Open→03Resolved [23:13:34] 10Machine-Learning-Team, 10Add-Link, 10Growth-Team (Sprint 3 (Growth Team)), 10Serbian-Sites, and 3 others: Deploy "add a link" to 16th round of wikis - https://phabricator.wikimedia.org/T308142 (10Etonkovidova) [23:15:21] 10Machine-Learning-Team, 10Add-Link, 10Growth-Team (Sprint 3 (Growth Team)), 10Serbian-Sites, and 3 others: Deploy "add a link" to 16th round of wikis - https://phabricator.wikimedia.org/T308142 (10Etonkovidova) Checked selected wikis from the list - leaving in the Test in Production column for monitoring... [23:19:52] 10Machine-Learning-Team, 10Add-Link, 10Growth-Team (Sprint 3 (Growth Team)), 10Turkish-Sites, 10User-notice: Deploy "add a link" to 17th round of wikis - https://phabricator.wikimedia.org/T308143 (10Etonkovidova) [23:21:27] 10Machine-Learning-Team, 10Add-Link, 10Growth-Team (Sprint 3 (Growth Team)), 10Turkish-Sites, 10User-notice: Deploy "add a link" to 17th round of wikis - https://phabricator.wikimedia.org/T308143 (10Etonkovidova) Checked selected wikis from the list - all works as expected; leaving in the **Test in Produ...