bi-01 step 02 — Generated code and feature flags

Goal

Stop being fooled by the largest failure mode in Chromium navigation: the code you are grepping for does not exist as source.

Tasks

  1. Prove the failure. Pick a CSS property and grep the tree for a function implementing its parsing. Observe that you mostly find tests and generated references.

  2. Find the declaration instead. Locate the property's entry in core/css/css_properties.json5. From the entry alone, state: its legal keywords, its initial value, whether it is animatable, and which pipeline stage it invalidates (invalidate:).

  3. Count the surface. How many .json5 files exist under third_party/blink/renderer? Name five and say what each generates.

  4. Trace an API to its IDL. For document.querySelector: find the .idl declaration, predict the generated C++ method name from the mangling rule, then confirm with git grep.

  5. Feature flags. Open platform/runtime_enabled_features.json5. Find one feature whose status is not stable, and one whose status is per-platform. Verify the behaviour appears with --enable-blink-features=<Name> on stock Chrome.

Done when

  • You can predict, from a .json5 entry alone, whether changing a property costs layout
  • .idl → generated name → Blink method traced for one attribute and one method
  • One non-default feature flag found and demonstrated at runtime
  • You can state the three reasons a grep legitimately returns nothing