Flow-er Power
Security & Privacy · Governing policy

Flow-er Power — Information Security & Change Management Policy

Version: 1.0
Effective date: 2026-11-09
Policy owner and production approver: Flow-er Power application owner
Scope: The private Flow-er Power dashboard and its integrations with Plaid, TD, Cloudflare, GitHub, and authorized development assistants.
Review: After the initial trial, following any material security incident or architecture change, and at least annually.

1. Purpose and accountability

This application exists to help authorized members of one household understand balances, spending, upcoming debits, and cash-flow needs. Its financial integrations are read-only. The owner is accountable for access permissions, deployments, incident decisions, data retention, and policy exceptions. AI development assistants may propose or write code but are not security approvers, data custodians, or independent reviewers.

2. Data collected and permitted use

3. Information classification and minimization

Restricted: TD credentials (which this app must not collect); Plaid production secret; Plaid access tokens; financial account identifiers and raw transactions; session and administrative authentication tokens.
Internal: Repository code, infrastructure diagrams, deployment records, risk reviews, and vulnerability details.
Household-visible: Financial data displayed inside the authenticated dashboard.
Public-facing: This policy, a high-level privacy summary, and non-sensitive product information.

Collect only fields needed for approved features. Mask account numbers in the user interface. Do not use actual financial data in tests or preview environments. No analytics, session-replay, or crash-reporting service may receive banking data.

4. Identity and access management

5. Secrets, encryption, and transport

6. Application, network, and data security

7. Storage, retention, deletion, and consent

8. Secure development and change approval

Changes are classified by effective risk, not only by filename. A change described as cosmetic is not low-risk if it can affect scripts, build tooling, dependencies, data access, or security behavior.

RiskExamplesRequired control
LowProven static copy or isolated appearance-only changes with no executable/script, network, dependency, authentication, policy, or data-handling impactAutomated checks; may deploy without per-change owner approval only after an enforced allowlist/gate is verified and approved.
ModerateBudget calculations, transaction categorization, data presentation and queries, behavior-changing dashboard UIOwner reviews the description, test results, and proposed deployment. Manual production approval.
HighPlaid or TD flows, credentials, tokens, authentication, authorization, storage, API routes, external requests, logging, dependency or build configuration, CI/CD, hosting, access policies, financial-data export, or this policy itselfExplicit owner approval before production; documented threat/impact review and rollback plan.
EmergencyContaining an active compromise or fixing an exploitable vulnerabilityOwner-authorized expedited deployment with post-deployment documentation and review as soon as practical.

Initial trial rule (2026-11-09 through 2026-11-15): Every production change, including low-risk changes, requires manual owner approval. Automatic promotion must remain disabled until the owner verifies technical enforcement. After the trial, the default remains manual approval unless the owner explicitly approves and verifies a restricted low-risk automation mechanism. Lack of enforceable branch protection or other equivalent gating means no automatic production deployment.

All production changes must be traceable to a commit or deployment record, include a brief rationale and test evidence, and be reversible. Development assistants may author pull requests or branches but may not independently authorize their production promotion. A self-approval by the owner is not an independent security review; high-risk changes should receive an additional substantive security check where feasible.

9. Incident response and notification

If unauthorized access, leakage, malicious code, exposed secrets, or suspicious account usage is suspected:

  1. Contain: Pause deployments and financial synchronization; restrict Cloudflare access and revoke affected secrets/tokens or Plaid Items as warranted.
  2. Preserve: Retain only necessary security-event metadata, affected commit/deployment identifiers, and timestamps; avoid copying bank data into incident reports.
  3. Assess: Determine which accounts, data, and systems were affected, and whether a data export or unauthorized API request occurred.
  4. Notify: Notify Plaid promptly at security@plaid.com where its account or end-user data may have been compromised; contact affected household members, TD, or regulators where appropriate or legally required.
  5. Recover: Patch and review code, rotate secrets, verify access controls, and cautiously restore service.
  6. Learn: Record the root cause, corrective measures, and policy changes required.

The owner makes incident decisions and keeps a minimal incident log. Report and disclosure timeframes must also follow applicable law and vendor commitments; this policy does not replace them.

10. Vendors, documentation, and review

The initial service providers are TD (financial institution), Plaid (authorized data connectivity), Cloudflare (hosting, access and execution), and GitHub (source control). ChatGPT may be used as an authorized development assistant to write and review non-sensitive source code only. Changes to vendors, third-party processors, or external network destinations require high-risk approval before production use.

Maintain developer procedures in docs/SECURITY_OPERATIONS.md and docs/CHANGE_CONTROL.md. Make this policy accessible from the dashboard under Security & Privacy. Review it after the trial, after significant incidents or architectural changes, and no less than annually. Record versions, approvals, exceptions, and any unimplemented controls accurately.

11. Exceptions and launch condition

Exceptions require a written owner decision recording the reason, duration, compensating control, and expiry. Exceptions must not contradict mandatory Plaid contract terms or applicable laws. Do not connect live accounts until all mandatory launch controls are demonstrably in place.

External references: Plaid Developer Policy; Plaid Trial plan; Cloudflare Pages Git integration.