wcz-layout
Version:
106 lines (100 loc) • 6.69 kB
Markdown
# WiCOP Setup
Ask the user only through the **AskUserQuestion** pop-up, never as chat text
waiting for a typed reply, and never with a single `Continue`-style option —
that is a wait, not a question. Ask only when there is a real choice, always
with at least two concrete options; enable free text only for open-ended
values (cost center, employee ID), not for yes/no decisions.
To wait for something the user does in the browser, poll in a tool loop:
wait ~5 s, re-check, repeat until the expected state appears or ~5 minutes
pass, then carry straight on. Never end your turn while waiting —
announcing "I'll continue once you have signed in" and stopping ends the
session, and nothing resumes it. Poll cheaply: a full page read returns the
entire sidebar and is tens of kilobytes, so when you are waiting on one
field, screenshot that field's ref instead. Element refs stay valid across
re-renders, so reuse the ones you already have rather than re-reading the
page to rediscover them.
1. Open [WiCOP](https://wicop.wistron.com/). If the sign-in page appears, do
not ask for any application-form values yet. Say in one line that the user
should finish the Microsoft sign-in, then poll inside the same turn until
the URL returns to `wicop.wistron.com`. While the sign-in pages are open,
poll the page title and URL only — never read the page content, because the
password the user types is exposed in the accessibility snapshot. Once back
on WiCOP, confirm the signed-in shell (user name in the header, left
navigation) and continue without asking.
2. Navigate directly to
`https://wicop.wistron.com/wicop/applicationForms/newAccountComboFlow` —
the collapsed left-nav submenu intercepts pointer events and clicking its
links times out. Select **Start**, then **New Account Combo**, set
**Purpose** to `Initialization of a new application.`, and select **OK**.
3. On **IBU Apply**, ask via **AskUserQuestion** for the **Cost Center** and
whether to create **QAS**, **PRD**, or both. Fill the form sequentially from top to bottom;
never interact with a field while a required field above it is incomplete.
Leave prefilled and unneeded fields unchanged. The controls appear on the
page in this order — use these values as each one is reached:
- **I already have an IBU**: keep `No, apply a new IBU`. **IBU Group
(Service Name)** is generated from the fields below; never type into it.
- _Cloud Environment_
- Service Provider: `K8S`
- Application Name (EA ID): search for it yourself first — see step 4
- Service(System) Alias Name: read `package.json` `name` converted to
uppercase letters and digits only, with spaces and punctuation removed
(`my-app` becomes `MYAPP`); the field accepts at most 16 characters
- Cloud Type: `Satellite Cloud`
- Cloud Site: `WCZ`
- Plant: `WCZ` — this control only appears once Cloud Type is
`Satellite Cloud`, below Cloud Site
- Environment: tick only the requested boxes; the list is filtered by
site, so WCZ Satellite offers QAS and PRD only. Each ticked box
enables its own **Cloud Cluster ID** and **Budget (TWD)** below it
- QAS cluster / budget: `wcz-sat-qas-01` / `0`
- PRD cluster / budget: `wcz-sat-prd-01` / `0`
- _Owner information_
- Cost Center: the user-provided value, entered in the editable IBU
control, not the prefilled read-only IBG control
- _Charge Setting_
- Charge Type: `By Fixed Amount (per IBU)`
- Charge Groups: reuse the same Cost Center if its row asks for one
4. When **Application Name (EA ID)** is reached, try to find it yourself. The
registered application names follow no convention — they may differ from
`package.json` `name` in casing, spacing, punctuation, and wording (`My
App`, `MyApp`, `My Application`, or an unrelated label), so do not expect an
exact match. Click the field first — it only starts searching once focused —
then type only a few leading characters of the most likely name to get a
wide option list. The options are loaded lazily, so wait and re-check the
list until it appears instead of concluding there are no matches; read the
options and select the one that clearly matches the project. Make a few
attempts with different guesses (short
prefix, the words separately, the full name). If no option is clearly the
right one, clear the field, say in one line that the user should pick the EA
ID, then poll the field until it holds a value. Resume filling the form
sequentially and select **Next >** when complete.
5. On **IBG Apply**, verify the inherited read-only values and select
**Next >**. This page routinely needs the click twice.
6. On **Project Apply**, set **Memory (GB)** to `2` for each selected
environment; leave other fields unchanged. Ask via **AskUserQuestion**
before selecting **Next >**.
7. On **Team Apply**, ask via **AskUserQuestion** who the GitLab team manager
is, offering exactly two options: `Martin Husar (C1107048)` and the
logged-in user — read that ID and name from the top-right corner of the
WiCOP header.
Populate all other team fields automatically. Add `C0708003`, `C1107048`,
`C2503017`, `C2404003`, `C2404002`, and `C2508015` as GitLab members,
excluding the selected manager from the member list. Each member box is a
search field: type the ID, then select the suggestion it offers before
adding the next row — an unresolved ID is discarded. Use **Copy & Paste
Now** for all other teams. Create a JSM team and select its license-charge
agreement when requested, then copy the GitLab team to it. Do not add a
member row after the final member.
8. On **Review & Confirm**, present the summary to the user, then ask via
**AskUserQuestion**: **"Submit the WiCOP request?"** with options `Submit` /
`Not yet`. Only after they select `Submit`, select **Submit**; in the dialog,
accept the CCoE Policy and select **Confirm**. On the successful-submission
dialog, select **Let's Go** to open **Apply Status**.
9. Close the current browser session.
This applies on every page and to every advancing control (**OK**, **Next >**,
**Submit**, **Confirm**, **Let's Go**): after selecting it, inspect the next
step and continue the workflow without pausing unless user input, a required
confirmation, or a final submission decision is needed. If the UI does not
visibly advance, select the same control once more, then stop.
Do not submit the final request without the user's confirmation. WiCOP sends
the application to the manager, owner, and owner division head for approval.