Social Resilience

The social-confidence practice space, and the deliberate rule that a parent cannot read what a child says inside it.

Status: Live / built, with one significant caveat — this feature was removed from the codebase during a pilot suspension and later reinstated. See "Removal and Reinstatement History" below; a reviewer or school should be told this history, not just the current state.

What It Is

A universal, everyday feature giving every child access to a private, voice-first practice space for social situations — not a clinical or referral-based "programme." It sits on the child's page in the same position as the curiosity cards, i.e. presented as an ordinary part of the app, not a stigmatised add-on.

Core Design Philosophy

See Mission and Philosophy for the full reasoning. In short: social confidence is trained through practice, not built through information. Because of this, the feature is deliberately not targeted or referral-gated:

Interface

Privacy Model Within the Feature

This is the most carefully engineered part of the feature, given the sensitivity of what children may disclose:

Parent Controls (Family Accounts) — Yes, This Control Exists

A parent can turn Social Resilience off at any time. Whether such a control existed was an open question in an earlier version of this document; it is now answered from the code, and the answer is unambiguous. (For a new child profile the space starts open — see the default below — so in practice this control is used to close it.)

The default is ON for new child profiles (changed 2026-08-11). A newly created child profile is written with socialEnabled: true (lib/accounts.js createChild), so the space is open from the moment the profile exists and the parent's toggle is a way to close it rather than a gate they must first unlock.

Two properties of that change matter and are covered by tests (test/social-default.test.js):

Director remains opt-in on both sides.

On the word "universal". This document and Mission and Philosophy describe Social Resilience as universal — available to every child, not just those flagged with an identified need, with no labelling and no referral process. That remains the design intent and the reason the feature is shaped the way it is. Three points of precision, so the word isn't read as a claim about configuration:

Teacher Controls (School Accounts)

Key Arguments Used With Schools

Removal and Reinstatement History

During a pilot suspension in July 2026 (see Pilot Programme and Adversarial Review Process), Social Resilience — along with the Director tab, peer matching, and teacher-to-student messaging — was permanently deleted from source code, not merely disabled behind a flag. This is an important factual point: there was no config toggle to flip back. The deletion also purged the associated encrypted data from both the live database and backups (cryptographically unrecoverable, consistent with the encryption design — see Security Architecture).

The features were later reinstated via git revert and manual merge-conflict resolution against several weeks of intervening commits, with teacher toggles added for related features (PAT, peer matching) that had not originally had them. Reinstatement restored the code, not historical data — the features came back working but empty of prior history.

A critic finding during the adversarial review (see Adversarial Review Process) explicitly challenged that these features had been described as "removed" while their designs remained on file, arguing the only real guarantee they'd stay removed was the developer's word — "insufficient governance." The developer's stated response was not to dispute this but to treat it as a genuine gap, addressed primarily by the school-ownership model (see Governance Model) rather than by disputing the criticism.

← Student / Child Experience · Director Tab (AI Literacy) →