Pilot Verification Evidence
Updated 9 September 2026
Verified on 7 September 2026. Local checks and live evidence are distinguished below.
Real Provider Test — Passed
- A verified tester replied to Meta's test business number. The signed webhook created one case and a Teams support-pool thread.
- The installed OCDIT bot accepted the tester's authenticated
inboxcommand. - Pick Up assigned the case to the sole allowed staff account.
- Add Internal Note saved team context. The tester confirmed it did not appear in WhatsApp; the database had no outbound job for the note.
- Send to WhatsApp delivered the first reply. Meta sent delivered/read receipts; the tester confirmed the exact text arrived once.
- The customer's follow-up reached the same case with ownership and history retained.
- A second Teams reply was delivered after extending and deploying the existing Meta user token. No extra permissions were added.
- The service restarted with the case, ownership and history preserved. All recorded send/notification jobs completed; no failed or uncertain job remained at inspection.
- HTTPS health reported live mode. Unsigned Meta and unauthenticated Teams requests returned 401. Public demo routes remain unavailable.
- The dedicated nginx site was added without changing the eight existing site configurations; their original hashes still match.
An initial card authorization rejection exposed a configuration error: card actions supplied the Teams 19: team ID without an Entra group ID. The configured team identifier and its stored scope were corrected to the independently verified ID for the same team, after a consistent database backup. No authorization checks were removed.
The installed manifest uses the real bot ID. Private phone numbers, message IDs, credentials and tenant/host identifiers are excluded from this shareable evidence. Meta API sending used v25.0; message webhook subscription used the portal's v26.0. The app remained unpublished and only test traffic was verified.
Automated Checks
npm test: 7 passed, 0 failed on Windows / Node 24.13.0.
The earlier multi-user configuration passed in the Linux Docker image with external networking disabled. The current single-user update was verified on Windows.
- Shared pool: inbound/action deduplication, claim collision, private note, handover, non-owner denial, queued reply and out-of-order delivery receipts. Cards hide handover for a single configured staff member.
- Reply-window expiry at enqueue and send; late webhook timestamps do not reopen it; invalid handover rolls back ownership changes.
- Raw HMAC signature, wrong business-number routing, malformed webhook and media placeholder.
- Teams tenant/team/channel/Entra employee allowlist, including team group-ID mapping.
- Meta send request shape and timeout/5xx ambiguity; no blind retry; receipt reconciliation.
- File-backed restart retains ownership/history and quarantines an in-flight send.
- Single-user live-mode HTTP server: health works, demo routes absent, unauthenticated Teams request rejected by SDK, unsigned Meta callback rejected, valid challenge and signed empty event accepted.
These automated checks alone do not establish provider behavior or an SLA. The separate real-provider evidence above establishes the observed test result only.
Browser Walkthrough
- Fictional Jamie enquiry appeared in the shared pool and customer-side simulator.
- Alex picked it up and added an internal note; the customer side did not show the note.
- Alex handed it to Mei (Manager), with reason retained in team history.
- Switching the demo staff view to Mei enabled her reply. The reply appeared on the customer side with a clear simulated-delivery label.
- Desktop (1440px), tablet (800px) and mobile (390px) layouts inspected. Tablet customer history stays visible; no horizontal overflow observed at 800px.
- Queue keyboard focus persisted across multiple background polling cycles.
- Independent interface review scored both targeted fixes resolved and returned ship.
Build and Package
- TypeScript strict compilation passed.
- Linux Docker image built; tests run as the image's non-root user.
- Generated test Teams manifest validated against Microsoft's v1.20 JSON schema.
- ZIP contains manifest plus 192x192 color and 32x32 outline icons.
- Test manifest used dummy UUID/URLs and is not shipped as an installable production package.
- Six-page feasibility PDF rendered and all six pages visually inspected.
- Customer-facing source package excludes internal delivery notes, credentials, local databases, test outputs, dependencies and the original source PDF.
Remaining Validation
Mobile Teams cards, live multi-user handover, real rate limits, token revocation/rotation recovery, load, backup restore and migration to Azure remain unverified. The Microsoft demo secret expires 14 September; the extended Meta user token expires 6 November, 11:28 AM SGT. Production should use an appropriately scoped service credential and a rotation process.
Tenant Isolation
The tester approved a custom app upload policy assigned only to their account. No extra staff account, license purchase or global policy change was made. Only the new OCDIT Azure resource group/bot and isolated private team were provisioned. The existing host runs a separate non-root service bound to loopback.
Account-Free HTTP Rehearsal
npm run rehearse passed on Windows on 7 September 2026. A separate demo-mode
process received a signed non-empty webhook over HTTP; an unsigned request was
rejected and replaying the signed message created no duplicate. HTTP actions
verified ownership, note isolation, queued simulated sending, a signed simulated
read receipt, handover and resolution. Its temporary database was removed.
This exercises the HTTP-to-store-to-worker path with simulated providers; it does
not exercise Microsoft authentication or outbound provider transport.
Live Support Inbox — 7 September 2026
- Version 0.2.0 installed as the enabled employee's personal Teams app and pinned in their sidebar. Microsoft SSO succeeded without client-supplied actor identity.
- The employee's original WhatsApp case and internal history loaded in the tab.
- A reply sent from the Inbox received Meta delivery and read receipts. The tester replied in WhatsApp; that message appeared in the same case and returned it to Mine / Needs Reply. Reading it did not clear its unanswered state.
- Personal bot notification appeared, and Open in Inbox opened the correct case.
- The channel root card showed the new customer text and Open in Inbox link; nine older thread replies remained, with no new snapshot replies for this test.
- Public health remained live; unauthenticated Inbox API returned 401. The service retains the same tenant and one-employee allowlist. No Graph permissions added.
- Runtime and consistent database rollback copies retained. All eight unrelated nginx configuration hashes passed after the isolated deployment.
- Ten local checks pass, adding 200-case queue/read behavior, SSO claim rejection, personal notification authorization and forged-token HTTP checks to prior coverage.
Live multi-user handover, mobile Teams and sustained load remain unverified.
Live LINE Inbox — 7 September 2026
- Direct LINE Official Account / Messaging API provisioned under a dedicated pilot provider after the tester's approvals. Singapore Communication allowance verified through the API: 500 messages, zero used before the test; no paid upgrade.
- Raw signed webhook verification passed. Webhooks and redelivery enabled; default greeting and auto responses disabled. Invalid signatures remain rejected.
- A real phone enquiry appeared in Teams Unassigned with a LINE label, separate from the existing WhatsApp case. The authorized employee claimed it.
- Send to LINE queued a durable push; LINE accepted it with a provider request ID. The tester replied "LINE received" from their phone. The same case updated and returned to Mine / Needs Reply; a personal staff notification appeared.
- The UI correctly shows Accepted for LINE, without claiming delivery/read receipts. Both WhatsApp and LINE remain visible in the same employee's queue.
- Eleven local checks pass, including LINE HMAC/destination validation, empty verification events, duplicate capture, separate identities, seven-day limits, push retry keys, ambiguous responses and cross-channel receipt isolation.
- Deployed only the existing isolated runtime and its dedicated webhook route, with consistent rollback copies. All eight unrelated nginx config hashes passed.
This is a one-employee, text-only technical demonstration. LINE media, unsend redaction, friendship/block state and production retention remain out of scope; address them before real customer rollout. No live multi-user handover claim.
Live WeChat Inbox — 7 September 2026
- Manual sandbox registration/following and callback submission completed by tester.
- Stable-token access from the owned host succeeded; signed public challenge passed.
- Real enquiry appeared in the Teams channel card and its Inbox deep link opened the correct WeChat case. The authorized employee claimed and replied from Inbox.
- WeChat API accepted the reply. Tester confirmed phone receipt and sent "WeChat received". Same case retained ownership and returned to Mine / Needs Reply.
- All three channel cases were visible together. The UI showed WeChat, 48h reply window, Send to WeChat and Accepted. No delivery/read receipt claim was made.
- Thirteen local checks pass. Existing isolated service was updated with rollback; all eight unrelated nginx config hashes remained unchanged.
- Plain XML over HTTPS sandbox only. Encrypted callbacks, live multi-user handover and WeChat-specific note-isolation testing remain outstanding.
Hardening and Continuity Verification — 7 September
npm test: 15 passing tests. New checks cover internal context, ownership, payload-bound retry IDs, full-history search, report samples and graceful worker drain.npm audit --omit=dev --audit-level=moderate: zero known vulnerabilities.- Browser: save context, induce concurrent inbound, receive a visible conflict, review latest context and save preserved edits. Passed with fictional local data.
- UI finish review: original modal recovery finding resolved; ship within reviewed 872×912 desktop scope. No new mobile verification claim.
- Live deployment: consistent online backup and isolated restore checks passed; rollback app and database snapshots retained. All eight unrelated nginx configuration hashes matched. No environment or tenant changes.
- After deployment, real Teams SSO loaded the updated Inbox and service report: three existing conversations, three response samples and no outstanding delivery jobs. No transport retest was needed for these internal features.
- Original WhatsApp, LINE and WeChat transport evidence above remains valid; no additional customer message was sent for this cut.
Knowledge Library — 7 September
npm test: 17 passing tests. New checks cover source-bound unsaved drafts, reviewer permissions, separate approval, pilot self-review, source evidence, revision/expiry, idempotency and withdrawal before queued dispatch.- Local browser: author submits an answer, separate demo reviewer approves it, owner inserts it into a draft and explicitly sends a simulated reply. Passed.
- Live Teams: existing employee SSO, labeled pilot self-review, source-linked candidate creation, approval with review date and insertion into a reply draft passed. No customer message was sent; the generated test draft was cleared.
- The UI reviewer confirmed the draft/source binding finding was resolved. Reviewed screenshots used the actual desktop browser size; no new mobile claim.
- Deployment preserved all eight unrelated nginx hashes. Only the isolated app and its two approved knowledge reviewer settings changed; no tenant permissions.
- Consistent backup and isolated restore checks passed before deployment and after the live knowledge test. The backup checker now covers all application tables, including knowledge history.
Staff and Administrator Guides — 7 September
- Published staff, administrator setup and operations guides with six screenshots from the actual local UI using fictional data. No live tenant/customer screenshots were published.
- Rechecked current Inbox labels and ownership/reply/reviewer rules against implementation. Native Teams Reload App displayed the latest Knowledge, Case Context and Service Report features. The new User Guide link was clicked in the real Teams desktop client and opened the hosted Staff Guide.
- 17 application tests pass. The independent guide checker passes local targets, fragments, image text and publication boundaries across 11 pages; the private package scan passes.
- Desktop 1440px, narrow 390px and 872px guide captures reviewed. All six guide screenshot assets loaded. No horizontal overflow on home/staff/admin at tested desktop/narrow sizes. Keyboard Skip to Content, contents links and full-size screenshot navigation passed. Print-media styling was inspected; no separate paginated PDF is supplied.
- Independent UI finish review: Ship within the supplied guide/code/screenshot scope. This is not a new mobile Teams validation.
- Published only static guide/home/Inbox-link files and a dedicated guide route. Messaging service remained running; eight unrelated nginx hashes matched. A replacement Inbox file permission mismatch was detected and corrected; hosted Inbox returned 200 afterward.
- Hosted guide pages/assets returned 200; unauthenticated knowledge API returned 401; demo/private-file probes returned 404. Existing site-injected analytics was blocked by the guide CSP; no analytics allowance was added.
- No customer message was sent for the documentation cut; previous transport evidence remains the record of real delivery.
Inbox Clarity and Responsive Cut — 7 September 2026
- Removed repeated queue/composer/report explanations; retained ownership, destination, reply-limit and uncertain-action cues. Full metric definitions remain in the staff guide.
- Inbox queue and conversation checked at 320, 390, 768, 1024 and 1440px. Context, knowledge and report checked at 320, 390, 768 and 1440px. No horizontal overflow at these sizes.
- Simulator and guide home/staff/admin checked at 390, 768 and 1440px without horizontal overflow. These are browser viewport checks, not physical phone or mobile Teams validation.
- A phone scroll regression identified in finish review was fixed across read tracking, polling, earlier-history anchoring and View New Messages. A browser check with 80 fictional messages and 20 earlier messages passed all three behaviors; the reviewer scored the fix resolved.
npm test: 18 passed, including a new check for offscreen/hidden phone cases and desktop read tracking. No provider send was needed.- Six guide screenshots refreshed from the fictional local workflow. Existing local Teams SDK CDN/CSP warnings remain; no new external-script allowance was added.
- Static deployment completed without service/nginx restart; eight unrelated site hashes matched. Hosted Inbox, guides, images and health returned 200; unsigned knowledge API returned 401 and demo/private probes returned 404.
- Reloaded the installed Inbox in the real Teams desktop client: SSO, live queue/history and revised controls loaded. Internal Note mode retained its amber Team Only treatment; the compact Service Report loaded with a Metric Definitions link.
Structured Escalation and Supervisor Recovery — 7 September
- 20 application tests pass. New coverage includes supervisor role enforcement, stale decisions, idempotent escalation retries, required context, old-owner send denial, queued-send transfer rejection and preserved uncertain outcomes.
- Local Inbox rehearsal passed: Alex escalated to Mei; Mei recorded a decision; a supervisor recovered work from another owner. Escalation/decision/recovery only wrote internal evidence and changed ownership/status; they sent no customer message.
- Personal Teams alert tests cover same-owner escalation, a quiet decision, per-recipient failure isolation and no automatic replay after an ambiguous notification result.
- Desktop 1440px and narrow 390px/320px dialogs inspected; no horizontal overflow in the 320px escalation dialog. Ordinary staff recovery and decision controls were hidden. An independent finish review returned Ship for the supplied seven captures and new UI code.
- Eight guide screenshots use the current local UI and fictional data. Live deployment and native Teams verification are recorded separately below when completed.
Live Teams Check
- Deployed the additive schema and new UI to the existing isolated pilot service, with an online-verified backup, a stopped-service consistent database copy and retained application/environment rollback. All eight unrelated nginx configuration hashes matched.
- The sole approved live tester was configured as a supervisor. Native Teams SSO displayed the new controls; the tester's existing WeChat case was escalated to the same tester, appeared in Escalated, then returned to In Progress through Record Decision. Supervisor Recovery with a required reason also passed using that same account.
- The personal Escalated to You card arrived and its Open Conversation action opened the correct case. Teams also displayed a toast; its preview said “Sent a card.” This does not establish consistent notification behavior on other clients or settings.
- Database verification found exactly the expected escalation, decision and recovery transitions, one successful personal alert outcome and no new outbound customer message. All stored delivery jobs were Done after the check. Distinct-person recovery remains verified locally, not with multiple real employees.
- Twelve generated guide pages passed link/fragment and publication checks. All eight staff screenshot assets loaded; staff/admin sections were inspected at narrow/desktop widths. Hosted Inbox and guide endpoints returned 200, unauthenticated Inbox knowledge returned 401, and demo/private-file probes returned 404.
Customer Profiles and Verified Context — 7 September
- 21 application tests pass, including explicit identity-check enforcement, stale case/profile versions, duplicate/changed request IDs, verification cleared by editing, verification withdrawal, fact removal/history, reversible links, preserved channel identities and old-owner edit denial.
- Local UI passed create/link, fact recording and verification, linked-case preview, unlink, new-owner visibility and old-owner read-only controls. A lost response after an actual save was confirmed through Check Last Action without duplicating the unlink. A stale edit preserved its entries and required reviewing the latest saved facts.
- Profile dialog and identity-check form were inspected at desktop 1440px and narrow 390px/320px. No horizontal overflow at the tested narrow widths. A local-preview staff switch now returns to the queue on phones.
- Thirteen guide pages pass local link/fragment and publication checks; ten current screenshots use fictional local data. Live deployment checks are recorded separately below.
Live Customer Profile Verification
On 7 September 2026, the deployed Inbox passed a native Teams check using the single authorized pilot tester: create and explicitly link a fictional training profile, record a service reference as Unverified, then mark it Verified with evidence. Stored verification retains its author, time and source case. One explicit link and three profile events were confirmed. Conversation count and all outbound message IDs were unchanged from the pre-deployment backup. Cross-channel linking, unlinking, conflicting edits and lost-response recovery were exercised locally; they are not multi-user live test claims.
The public profile guide returned HTTP 200; unauthenticated profile API access returned 401. Backup and isolated restore verification passed. The service environment and all eight unrelated nginx configurations were unchanged.
Staff Feedback and Period Reporting - 7 September 2026
23 application tests pass. New checks cover case-bound source evidence, invalid staff/category rejection, supervisor-only review, reason validation, version conflicts, unchanged customer delivery jobs, immutable original suggestions and idempotent retry after restart. Date checks cover Singapore midnight boundaries, inclusive end dates, invalid/reversed/overlong ranges, distinct resolved-case actions, excluded uncertain replies, first-contact samples and unchanged current backlog for an empty period.
Local Inbox checks passed for staff submission, supervisor review, stale-decision draft retention, latest-decision comparison and lost-response reconciliation without duplicate review. Desktop and mobile captures cover feedback forms, review history and period reporting. Invalid date ranges hide old results; empty periods show No Sample. The public guides now contain 14 pages, 12 fictional UI screenshots and the data-flow diagram. These local checks do not claim live multi-user or production readiness.
Live Staff Feedback Check
On 7 September 2026, the existing authorized tester submitted a clearly fictional process suggestion from the WeChat sandbox case in native Teams, selected the original enquiry as evidence, and recorded a Planned supervisor decision with a reason. Review History displayed the decision. Database checks confirmed one suggestion, one review and its case-bound source; conversation state/ownership, outbound message IDs and delivery jobs matched the pre-deployment snapshot. Distinct-person review, Implemented transitions, stale edits and uncertain save recovery remain local test evidence.
The default seven-day Singapore report loaded in native Teams, separately showing current backlog and period activity. Unauthenticated feedback/report API probes returned 401 and the public feedback guide returned 200. The deployment preserved the environment and all eight unrelated nginx configurations; verified consistent backups and the prior release were retained.
A native reload exposed an existing initialization race between the Inbox and deferred action scripts. Startup now waits for DOMContentLoaded. A browser check deliberately delayed escalation.js: the workspace stayed hidden until the scripts were ready, then opened without a page exception. A subsequent native Teams reload was clean. All 23 application tests still pass.
Platform Administration and Data Use — 8 September 2026
- 26 application tests pass, including source permission withdrawal, queued knowledge rejection, transactional usage limits and staff access revocation after restart.
- Hosted administration completed Microsoft sign-in with the explicitly enabled pilot administrator. Saving unchanged policy values produced an audit entry.
- Anonymous Admin and Inbox APIs return 401. Support roles do not grant platform administration; cross-role denial is covered locally with fictional identities.
- Staff offboarding and replacement were tested locally. No real user was disabled.
- Data Use and Administration passed scoped desktop/mobile review. Screenshots use fictional records. The public guide set now contains 17 pages.
- This is one isolated runtime. Multi-workspace administration, capture/deletion, AI execution and remaining measurement work were not complete at that checkpoint; the Stage 1 release below supersedes that build status.
Pilot Evidence and Workload — 8 September 2026
- 27 application tests pass. Aggregate evidence validates numerator/denominator pairs, preserves frozen response samples and correction history, and survives restart.
- Desktop and mobile review passed for Pilot Evidence and Workload by Owner.
- Hosted administrator sign-in after restart passed; the evidence list correctly contains no operating observations. Positive samples exist only in the local demo.
- Teams web displayed the existing tester's three open conversations under Workload by Owner. No new outbound message or delivery-status change occurred across the platform and measurement releases.
- Knowledge-yield/workflow-reuse evidence and backlog-age comparison were open at this checkpoint; the Stage 1 release below completes their build.
Stage 1 Release — 8 September 2026
- 38 application tests pass. New coverage includes workspace binding before writes, scoped administrator revocation, registry conflicts, metric denominators and workflow snapshots, capture-before-storage across three channels, retention scope/holds/stale approvals/unknown-store denial, derived-record erasure and retry tombstones. AI tests cover disabled defaults, source/ownership/policy checks, quotas, explicit review, late withdrawal, bounded responses and no automatic retries.
- Fictional local UI rehearsals cover capture decisions, retention through external disposition, and AI source review/approval. Desktop and narrow scoped finish reviews passed. Twenty screenshots use fictional local data; seventeen guide pages and the architecture data-flow diagram are included.
- AI fixtures are fixed examples, not model output. Prepared provider transport was tested with injected HTTP responses only. No cloud account, credential or inference call was provisioned; the live constructor has no provider.
- Accumulated Stage 1 extensions were deployed with an online-verified backup, stopped-service consistent copy and retained prior app/environment/guides. Database integrity and foreign-key checks passed. All four case IDs and outbound message IDs/statuses match the pre-release snapshot. No customer message was sent.
- Live Teams web reload and SSO passed. The existing case history loaded, AI Assistance states that inference is disabled, and Request Suggestion is disabled. The live administrator signed in through Microsoft; policy shows AI disabled with zero allowed requests. Registry, capture and empty retention views loaded without changes.
- Live AI-run, capture-rule and retention-review counts are zero. No exclusion or deletion was performed on live data. Environment and all eight unrelated nginx configuration hashes are unchanged. Public health/guides return 200, anonymous Inbox/Admin APIs return 401 and the demo-message endpoint returns 404.
- Real multi-user/subsidiary acceptance, model quality, business improvement and production recovery remain separate gates in the Stage 1 acceptance checklist.
Stage 2–4 Release — 8 September 2026
- Release
6688067is deployed on the isolated pilot service. The current local application suite passes 52 tests. - The portable fictional source pack drives deterministic and real-model Discovery. Real OpenRouter requests were verified separately from no-model fixtures. Only fictional source material and the designated test enquiry were approved for this exercise.
- In the real Teams Inbox, Ari generated a model-backed reply from approved demo context. A human explicitly sent it through the existing support flow. The reply was confirmed visible in the designated WhatsApp Web test chat; the tester then sent “Agent reply received” as an inbound follow-up.
- The follow-up returned to the same Teams case under Needs Reply; the outgoing message showed Read. The saved live graph contains Human Review, Send Requested and Provider Outcome: Read. Eight model calls used US$0.0043704 in actual provider charges; the ledger retains a conservative reservation for one uncertain run.
- Both databases passed integrity and foreign-key checks. Four cases were retained, the five outbound records outside the designated test case were unchanged, and no outbound send remained pending. All eight unrelated nginx hashes matched. Anonymous APIs returned 401 through the dedicated HTTPS origin; static pages returned 200. An automated public HTTP client received 403 separately; live browser access and Microsoft sign-in passed.
- Studio stores published persona/context versions, model or simulation mode, source references, read-only fixture results, decisions and observed send outcomes. The 2D and Three.js views inspect the same stored graph; replay timing is illustrative.
- Local checks cover the central administrator boundary, support ownership and private response envelope, idempotency, permission/policy version changes, daily quota reservation, paused/withdrawn draft rejection and Studio-copy retention blocking.
- Tenant staff use approved answers and human-reviewed drafts; knowledge management and agent publication remain central. No model training, Graph ingestion, real booking writes, refunds, equipment controls or autonomous customer sends were added.
- Real multi-user acceptance, production source/provider policy, Azure recovery and demonstrated business improvement remain outstanding. The successful fictional round trip is not a general model-quality or customer-acceptance result.
Application Review — 8 September 2026
- 56 application tests and three runnable UI/layout checks pass. New regressions cover redirect rejection, exact tool-evidence changes, evaluation import bounds, deterministic outage escalation and rejected AI quota-reservation reuse.
- WhatsApp and LINE reject redirects. A loopback 307 test confirms no customer payload reaches the redirect target. Ambiguous outcomes remain uncertain.
- Browser checks on fictional local data verified edited agent-draft send blocking, explicit Clear Draft, builder draft persistence/discard, scenario loading, publication readiness, actual evaluation percentages and mobile overflow.
- No model calls or customer sends were made for this review. Production dependency audit reported zero known vulnerabilities; this is not a penetration-test certificate.
- The original brief comparison and remaining acceptance gates are recorded in
the repository's
docs/REVIEW-2026-09-08.md.
Knowledge Lifecycle and Builder Alignment — 8 September 2026
57 application tests plus three UI/layout checks pass. Clock-controlled regressions cover review and expiry boundaries, legacy approvals, in-flight generation, support insertion/delivery and renewal invalidation. Local browser verification covered the review queue, owner/date approval, process reapproval and agent republication. Copilot alignment uses the supplied screenshot and current official Microsoft documentation; it does not add Microsoft product integration or parity.
Builder Review and Test Workflow — 8 September 2026
60 application tests and four UI/layout checks pass. Working-draft tests keep immutable snapshots, share the bounded model budget, and are rejected at every support delivery boundary. Incomplete evaluation attempts retain their scenario identity and checks from reservation. Comparison checks cover missing results, changed conditions and latest-attempt selection.
Local browser checks verified saved-versus-published changes, unsaved draft testing, trace return, selected-agent/tab preservation, invalidated-result masking and evaluation comparisons. Build, Preview, Evaluate and Monitor fit a 390-pixel viewport without page overflow. Three additional fictional screenshots document these paths. No model requests or customer sends were made for this release.
Integrated Support Workflow — 9 September 2026
129 application tests and eight UI scripts pass for the integrated local workflow. Coverage includes shared assignment, immutable source tickets and successor transfers, reviewed summaries, customer history permission, central AI controls, routing/signatures, support tools, retention and central improvement review.
A migration rehearsal against the private live snapshot preserved five cases and 25 messages. Both support and Studio databases passed integrity checks. It did not replace the live databases. Local browser checks used fictional identities and included reviewed Transfer/Resolve, desktop/mobile layout and persona definition preview. The preview check did not import or publish an agent or call a model. Actual central feedback was empty in that browser check; positive source pagination is covered by the mocked UI regression, not that empty-list observation.
Live remains fc7c021. No Graph permissions were added. Optional Jason-only Activity
installation and AI eligibility for the exact throwaway number's successor tickets
require approval. Deployment checks and a real Teams rehearsal remain outstanding;
these local results are not a production acceptance claim.
Support Workflow Deployment — 9 September 2026
Release b14e484 deployed 192 files and 28 runtime modules. Both databases passed
integrity and foreign-key checks. Five cases and 25 messages were preserved, with
outbound status counts unchanged: Accepted 2, Failed 1, Read 4. Environment and
eight unrelated nginx configuration hashes were unchanged.
Teams web SSO showed Connected and the new Starred, Available, Assigned, Transfer and composer controls. Personal Admin OIDC and Support Settings authorization passed. Routing is enabled for Support Team with Jason only, availability capped at eight hours and capacity 20. Signature configuration was still in progress when this evidence was recorded. No new Microsoft permissions or AI scope were added.
One live summary request on the original approved throwaway case reached the
provider. Its output failed schema_or_evidence validation; the uncertain
reservation remains held. Manual fallback and cancellation passed, with no
transfer or customer send. A validation/accounting fix and bounded retest are
pending. This is not successful live AI-summary acceptance.
A separate local check showed AI Feedback as Planned after a history grant and hid it after withdrawal. The 129 application tests and eight UI scripts remain local evidence. Optional Jason-only Activity installation, successor-ticket AI eligibility and the approved live workflow rehearsal remain acceptance gates.
Live Workflow Acceptance — Release 3b994ec, 9 September 2026
The summary schema/accounting fix is deployed; 131 application tests and eight UI checks pass. The corrected model summary succeeded on the original approved throwaway case. Jason reviewed and edited it, then transferred through Support Team (Jason only). The source resolved and the successor displayed the transferred transcript and internal reviewed summary. A signed canned reply reached WhatsApp, and its inbound response returned to the successor. Manual Resolve and case-study nomination passed on that successor without a provider call.
A new enquiry after resolution created a distinct seventh case. Single-person round-robin assigned Jason; the two previous tickets stayed resolved. Past Conversations began at Permission Required. The WhatsApp permission prompt named Jason, specified exact YES/NO and 24 hours, and carried the Permissions Agent signature. After the tester replied exact YES, Teams displayed Permission Granted, expiry and both prior summaries. View Conversation opened a read-only resolved transcript with disabled status/assignment controls and no composer.
The personal Teams bot received the new-ticket notification. Open in Inbox opened that exact active ticket with its granted history status. This verifies the existing personal-bot fallback, not the optional Activity-feed installation.
Optional signatures are saved; Billing and Technical categories and two canned replies are configured. No Graph permissions or AI scope were expanded. AI remains original-case-only, with no provider calls on the successor or new ticket. The initial rejected summary run remains historical evidence with its held reservation.
Optional Jason-only Activity installation and later-ticket AI eligibility require approval. Distinct-person behavior remains local test evidence; this live rehearsal used one real staff member and does not establish customer acceptance or model quality.
Final reconciliation found seven tickets and 31 messages. The four unrelated tickets and all 19 of their messages retained identical stored content and delivery states; all six added messages belong to the designated test customer. Both current databases and consistent post-rehearsal backups passed integrity and foreign-key checks. Environment and all eight unrelated nginx configuration hashes match the pre-release baseline. No outbound send or model generation remains pending.
Provider-reported key usage is USD0.0053788 against the unchanged USD3 cap. The successful summary recorded 682 input and 133 output tokens, cost USD0.0004856. The earlier uncertain summary retains its conservative USD0.016 reservation.
Tenant-Wide AI Update — Local Verification, 9 September 2026
The user subsequently authorized tenant-wide AI. Commit 42af769 removes the
support-case allowlist and per-ticket AI blocking. The local suite passes 132
application tests and eight UI checks. Capture exclusions, history permission,
knowledge reuse decisions, feature/provider checks, quotas, publication and stop
controls remain. The 100-request/USD3 budget is unchanged.
Deployment is pending. Earlier original-case-only observations above remain accurate for their test dates; they are no longer the requested scope or a pending approval requirement. Optional Teams Activity RSC installation is still unapproved. No Graph permission is added by the tenant-AI update.
Tenant-Wide AI Deployment — 9 September 2026
Release 6b1875f is deployed. Real Teams Reload App showed the simplified name,
Ticket Details and Supervisor menus and Draft with AI on a fresh ticket. The first
insufficient-context result was a zero-cost deterministic fallback. A subsequent
inline completion from a staff-written opening was model-backed, usable and inserted,
then cleared without sending. A model-backed transfer-summary preview was cancelled.
No transfer, resolution or customer send occurred during these checks.
The completion used 626 input/243 output tokens, costing USD0.0006392. The summary used 511 input/110 output tokens, costing USD0.0003804. Both provider runs completed and were usable. All seven case records and 31 messages remained unchanged. Both databases and backups passed integrity and foreign-key checks. Environment and eight unrelated nginx hashes were unchanged.
The suite passes 132 application tests and eight UI checks. The 4fd1b18 supervisor-menu fix passed targeted Edge checks at 1212×575 and
900×575, with all menu labels inside the ticket pane. The 100-request/USD3
budget is unchanged; optional Teams Activity RSC installation remains unapproved.
Microsoft 365 Interface Release — 9 September 2026
Release 9fa2be7553b0 is deployed. 132 application tests, nine UI scripts and
focused browser workflows pass; the production dependency audit reports zero
known vulnerabilities. Live Teams SSO, scoped search and queue restoration passed.
Administration, Support Settings and Agent Builder share navigation and appearance;
real sign-in, saved light mode and restoration to Auto passed. The guide set has
31 refreshed fictional screenshots, with 21-page link and public-boundary checks.
The reviewer scored the requested label, contrast, note-border and graph fixes
resolved. Real multi-staff acceptance remains separate.
Seven cases, 31 messages and 75 Studio entities match the pre-release snapshot. Both databases passed integrity and foreign-key checks. Environment and eight unrelated nginx hashes are unchanged; all 208 installed release files match the manifest. Anonymous application APIs return 401. No customer send, model request, policy save or Microsoft permission change was needed for this UI release.