Skip to content

build(deps): Bump firebase from 12.3.0 to 12.14.0#7

Closed
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/npm_and_yarn/firebase-12.14.0
Closed

build(deps): Bump firebase from 12.3.0 to 12.14.0#7
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/npm_and_yarn/firebase-12.14.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jun 14, 2026

Copy link
Copy Markdown

Bumps firebase from 12.3.0 to 12.14.0.

Release notes

Sourced from firebase's releases.

firebase@12.14.0

For more detailed release notes, see Firebase JavaScript SDK Release Notes.

What's Changed

@​firebase/ai@​2.13.0

Minor Changes

  • f0752a0 #9800 - Add initializeDeviceModel() method to allow explicit initialization of on-device model in hybrid mode.

  • bd08cae #9926 - Change "beta" (public preview) tags to "public" (generally available) for all hybrid inference features.

Patch Changes

  • bd2644b #9956 (fixes #9938) - Fix a bug that caused ChatSession.sendMessageStream() and TemplateChatSession.sendMessageStream() to send duplicate user turns in the request.

firebase@12.14.0

Minor Changes

  • 3b337b9 #9917 - Add new API and deprecate old API for creating and deleting fcm registration

  • f0752a0 #9800 - Add initializeDeviceModel() method to allow explicit initialization of on-device model in hybrid mode.

  • d5b0f61 #9913 - Added minimum and maximum FieldValue operations

  • bd08cae #9926 - Change "beta" (public preview) tags to "public" (generally available) for all hybrid inference features.

Patch Changes

  • 2697919 #9845 (fixes #9732) - Updated _isAvailable() to use retry logic for the initial IndexedDB availability check, preventing incorrect fallbacks to in-memory persistence in environments where transactions may occasionally drop on startup.

  • Updated dependencies [3b337b9, bd2644b, 2697919, f0752a0, d5b0f61, 4d3f71a, 85f6f4e, d675580, bd08cae, 51e93fc, a1a2455]:

  • @​firebase/messaging@​0.13.0

  • @​firebase/app@​0.14.13

  • @​firebase/ai@​2.13.0

  • @​firebase/auth@​1.13.2

  • @​firebase/auth-compat@​0.6.7

  • @​firebase/firestore@​4.15.0

  • @​firebase/remote-config@​0.8.4

  • @​firebase/app-check@​0.11.4

  • @​firebase/data-connect@​0.7.1

  • @​firebase/messaging-compat@​0.2.27

  • @​firebase/functions@​0.13.5

  • @​firebase/app-compat@​0.5.13

  • @​firebase/firestore-compat@​0.4.10

  • @​firebase/remote-config-compat@​0.2.25

  • @​firebase/app-check-compat@​0.4.4

  • @​firebase/functions-compat@​0.4.5

... (truncated)

Commits
  • 62a4653 Version Packages (#10004)
  • 82dd7ed Merge main into release
  • bd08cae feat(ai): Update tags to mark hybrid inference features as GA (#9926)
  • f0752a0 feat(ai)!: Add explicit initializeDeviceModel() method when using hybrid (#...
  • cbb1953 implement onSubChange for FID-based registration (#9996)
  • 85f6f4e fix(firestore): improved robustness and logging in query listen stream creati...
  • 4d3f71a fix(remoteconfig): Stopping last running experiment must call updateActiveExp...
  • d675580 fix(app-check): Fix getLimitedUseToken() (#9987)
  • 3b337b9 Feat/messaging api series (#9917)
  • eefab3e fix(changelog-generator): fix postinstall build failure (#9948)
  • Additional commits viewable in compare view

@dependabot @github

dependabot Bot commented on behalf of github Jun 14, 2026

Copy link
Copy Markdown
Author

Labels

The following labels could not be found: client, dependencies. Please create them before Dependabot can add them to a pull request.

Please fix the above issues or remove invalid values from dependabot.yml.

@dependabot dependabot Bot changed the title Bump firebase from 12.3.0 to 12.14.0 build(deps): Bump firebase from 12.3.0 to 12.14.0 Jun 14, 2026
@dependabot dependabot Bot force-pushed the dependabot/npm_and_yarn/firebase-12.14.0 branch from 5ddccea to bf6c28c Compare June 14, 2026 05:40
Bumps [firebase](https://github.com/firebase/firebase-js-sdk) from 12.3.0 to 12.14.0.
- [Release notes](https://github.com/firebase/firebase-js-sdk/releases)
- [Changelog](https://github.com/firebase/firebase-js-sdk/blob/main/CHANGELOG.md)
- [Commits](https://github.com/firebase/firebase-js-sdk/compare/firebase@12.3.0...firebase@12.14.0)

---
updated-dependencies:
- dependency-name: firebase
  dependency-version: 12.14.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot force-pushed the dependabot/npm_and_yarn/firebase-12.14.0 branch from bf6c28c to 43b3035 Compare June 14, 2026 05:43
miningtheblocks added a commit that referenced this pull request Jun 17, 2026
…base, Cache-Control, CSP defensa)

Cierra 4 HIGH/MEDIUM del Agente #7 Audit Round 2. Cambios de texto en
HTML/JSON sin refactor de comportamiento — risk bajo, ROI alto.

1. verifyGemCode CORS: wildcard `*` → allowlist explícito.

   Pre-fix (Agente #7 MED): cualquier origen podía hacer GET a verifyGemCode
   y enumerar códigos de gemas. El rate-limit 30/min/IP mitigaba bulk-enum
   pero la inconsistencia con submitGemClaim (que sí usa
   setRestrictedCorsHeaders) era reportable.

   Fix: setCorsHeaders(res) → setRestrictedCorsHeaders(req, res). Ahora
   solo miningtheblocks.com / www / miningtheblocks.github.io pueden hacer
   el call. Browser/server-to-server desde otro origen → CORS error.

2. SRI (Subresource Integrity) en Firebase SDK de docs/index.html.

   Pre-fix (Agente #7 HIGH-3): <script src="gstatic.../firebase-X.js"> sin
   integrity. gstatic.com es Google CDN (raro pero supply chain attacks
   documentados en otros CDNs como polyfill.io). Para una página que
   tramita gem claims hasta $100k, integrity verification es defense in
   depth real.

   Fix: integrity="sha384-..." + crossorigin="anonymous" en los 2 script
   tags de Firebase 10.13.2 (app-compat + auth-compat). Hashes computados
   con `curl URL | openssl dgst -sha384 -binary | openssl base64 -A`.

   IMPORTANTE: si bumpean SDK Firebase, hay que recomputar los hashes.
   Comentario inline lo recuerda.

3. Cache-Control: no-store para verify.html.

   Pre-fix (Agente #7 MEDIUM): verify.html maneja oobCode (token de reset
   de 1h valid). Sin Cache-Control, el browser cacheaba la página con el
   token en URL; otro user en el mismo device podía abrirla del back button
   + reset password ajeno.

   Fix: header específico para verify.html en firebase.json:
   `Cache-Control: no-store, no-cache, must-revalidate, private`.

4. Meta CSP defensiva en verify.html.

   Pre-fix (Agente #7 MEDIUM): verify.html NO tiene meta CSP, depende 100%
   del header HTTP firebase.json. Si por error un deploy pierde el header
   (config diff, regla de hosting equivocada), no hay CSP en la página.

   Fix: meta http-equiv="Content-Security-Policy" con el MISMO contenido
   del header. Defense in depth — los browsers aplican la POLÍTICA MÁS
   ESTRICTA si ambos están presentes.

5. Extras en firebase.json:
   - Permissions-Policy expandido: payment=(), usb=(), browsing-topics=(),
     interest-cohort=(), accelerometer/gyroscope/magnetometer/midi/serial/
     bluetooth=(). Bloquea APIs sensibles que la web NO usa.
   - CSP tightening: agregamos base-uri, form-action, object-src none,
     upgrade-insecure-requests (defense in depth contra base tag injection
     + insecure form action).

DEFERRED (requieren browser testing — siguiente iteración):
- HIGH-2: unsafe-inline removal en docs/index.html (refactor: extraer 7
  onclick + 250 líneas de <script> inline a archivo externo).
- HIGH-1: sandbox iframe para docs/adpick.html (riesgo de romper ad
  pipeline → revenue).

Tests: 24/24 helpers pasan. firebase.json JSON valid. index.js parsea OK.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
miningtheblocks added a commit that referenced this pull request Jun 17, 2026
… EN privacy disclosure

Cierra 4 hallazgos MED/LOW pendientes — todo cambios de texto/atributos
sin lógica nueva.

1. ChainHistoryScreen + ActivityScreen a11y (Agente #10 MED-10-43).
   Cada uno tenía 1-2 TouchableOpacity sin labels (back button, report
   button). accessibilityRole="button" + accessibilityLabel + hitSlop 8.
   Cierra el último gap a11y del cliente — todos los screens con
   interactividad ya están cubiertos. DynamicCube201 (cubo 3D) sigue
   sin a11y por naturaleza (rendering GL no es accesible vía SR).

2. verify.html default-DENY en errores no enumerados (Agente #7 LOW).
   Pre-fix (CRIT-24 documentado como "default-deny" pero código era
   default-success): el else de codes desconocidos llamaba showSuccess.
   Si Google agrega nuevo error code en el futuro (TOKEN_REVOKED,
   QUOTA_EXCEEDED, etc.) el user veía "verificado" cuando no lo estaba.
   Fix:
   - data.error.message no reconocido → showError genérico con el code
     truncado a 32 chars (para diagnóstico sin XSS).
   - Respuesta SIN .error pero sin shape esperada (email/localId/kind)
     → showError "respuesta inesperada".
   - Solo respuesta con shape correcta y SIN .error → showSuccess.

3. privacy.html EN section: agrega Cloudflare + GitHub + SCC disclosure
   (Agente #10 HIGH-10-36).
   Commit E agregó la sección ES pero la EN quedó con la lista vieja
   (solo Firebase + Polygon + Pinata). Ahora ambas secciones están
   alineadas con todos los sub-procesadores + SCC clause para UE→USA.
   Aplicado en docs/privacy.html Y public/privacy.html.

Tests: parse OK. helpers OK.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
miningtheblocks added a commit that referenced this pull request Jun 17, 2026
Cierra Agente #7 HIGH-2 (último gran refactor del web hardening).

Pre-fix: CSP del docs/index.html declaraba políticas exhaustivas pero
script-src incluía 'unsafe-inline' + el archivo tenía:
  - 1 bloque <script> inline de 258 LOC (toda la lógica de la página).
  - 7 onclick handlers en buttons (setLang × 2, copyRefCode, verifyCode,
    doLogin, submitClaim, acceptAge).
  - 2 onchange handlers en checkboxes (updateAgeBtn × 2).

Con 'unsafe-inline' la CSP es funcionalmente DECORATIVA contra XSS: la
declaración script-src 'self' https://www.gstatic.com no estaba siendo
enforced para nada inline. Para una página que tramita gem claims hasta
$100k, esto era un gap real.

Refactor:

1. docs/js/app.js (nuevo, ~280 LOC):
   - 100% del contenido del <script> inline (Firebase init, GEM_NAMES,
     GEM_PRIZES, ERRORS dicts, setLang/detectReferral/copyRefCode/verifyCode/
     doLogin/submitClaim/updateAgeBtn/acceptAge + helpers).
   - Sin cambios funcionales (lógica idéntica).
   - + wireEventDelegation() que registra:
     * Click handlers via [data-action="X"] + delegación al body.
     * setLang especial: [data-action="setLang"][data-lang="es|en"].
     * Change handlers directos sobre #check18 y #checkTC para updateAgeBtn.

2. docs/index.html cambios:
   - 9 atributos inline → declarativos:
     * onclick="setLang('es')" → data-action="setLang" data-lang="es"
     * onclick="setLang('en')" → data-action="setLang" data-lang="en"
     * onclick="copyRefCode()" → data-action="copyRefCode"
     * onclick="verifyCode()" → data-action="verifyCode"
     * onclick="doLogin()" → data-action="doLogin"
     * onclick="submitClaim()" → data-action="submitClaim"
     * onclick="acceptAge()" → data-action="acceptAge"
     * onchange="updateAgeBtn()" × 2 → (removido; listener en app.js by id).
   - <script>...258 LOC...</script> → <script src="js/app.js" defer></script>
   - CSP script-src: removido 'unsafe-inline'.
   - Mantenido style-src 'unsafe-inline' (hay style="..." attribute usage
     en algunos botones; refactor a classes queda como P3 follow-up; risk
     bajo porque style attrs no permiten JS execution).

Archivo total reducido de 952 → 699 líneas. CSP ahora hace su trabajo.

TODO post-deploy (operacional): probar en browser que el flow completo
funciona (verifyCode → doLogin → submitClaim → ageGate). Si algo se
rompe, el rollback es revertir este commit + el style-src cambio se
puede hacer en isolation después.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@dependabot @github

dependabot Bot commented on behalf of github Jun 17, 2026

Copy link
Copy Markdown
Author

Superseded by #21.

@dependabot dependabot Bot closed this Jun 17, 2026
@dependabot dependabot Bot deleted the dependabot/npm_and_yarn/firebase-12.14.0 branch June 17, 2026 16:32
miningtheblocks added a commit that referenced this pull request Jun 18, 2026
…en CI

Tier B del backlog del audit Round 2:

1. CRIT-10-04 follow-up + Agente #10 HIGH-10-36 — privacy.html actualizada:
   - Removidos los 4 mentions obsoletos a Google AdMob (el SDK
     react-native-google-mobile-ads fue removido en Commit Q; mantenerlo en
     privacy era misleading).
   - Sección 1.6 (Publicidad) reescrita: la app NO usa native ad SDKs.
     Los ads viven en docs/adpick.html abierto por el user. La red de
     publicidad (effectivecpmnetwork) está aislada en iframe sandbox en
     subdominio separado (ads.miningtheblocks.com) sin acceso a app data.
     AD_ID NO declarado por la app.
   - Sub-procesadores ampliados: Sentry (EU/Frankfurt), Better Stack,
     Filebase (mirror IPFS). Todos con disclosure de jurisdicción de datos
     y referencia a SCC cuando aplica para transferencias UE→USA.
   - Sección 7 (Minors) limpiada de referencias COPPA-AdMob.
   - Versión EN paralela actualizada también.

2. Agente #7 P3 + Agente #11 — SBOM CycloneDX en CI:
   - Nuevo job en .github/workflows/ci.yml que genera SBOM (Software Bill
     of Materials — inventario formal de dependencias en formato CycloneDX
     estándar OWASP) en cada push.
   - 2 SBOMs por run: functions/ + repo root.
   - Tool: @cyclonedx/cdxgen (npx, sin install permanente).
   - Artifacts retenidos 90 días para tracking de CVE futuros + auditorías.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants