nexa / ARCHITECTURE.md

Commit History

  1. depends: the two bindings, measured again on the tree facts and not taken⁠

    a8f9476
  2. check: dependencies are read when the depends check asks, and where named⁠

    f6ab2f2
  3. figures: the cross-hit row is read from the probes' committed rows⁠

    f7cbc7a
  4. check: the modules a module depends on are read beside it⁠

    d904a25
  5. depends: storedness, merged depends and transitive triggers read from the tree⁠

    5fdf138
  6. constrains: a field Odoo cannot trigger on is asked for by its inputs⁠

    82013bf
  7. layers: an advisory finding gates nothing in the answer layers either⁠

    5be3d19

  1. depends: a name assigned records, measured and not taken⁠

    0539253

  1. ondelete: a read through mapped(), measured and not taken⁠

    d0bca75
  2. depends: a read straight off a call that keeps the records is a read⁠

    177f1ca
  3. eval: the pipeline rows re-measured on the nine Odoo questions⁠

    c0d9522
  4. adversarial: the probes' rows are committed, and CI checks them⁠

    5000730
  5. artifacts: the measurements move out of the repository's root⁠

    fb9624b
  6. check: the eval rows re-measured on the subjects left, and checked⁠

    3ac608a
  7. readme: the 49/57 in the core sample table is OpenSPP's⁠

    facddfd
  8. depends: a read through a method's own output, measured and kept exempt⁠

    b999a8e
  9. depends: Odoo refuses neither a self-dependency nor a path ending .id⁠

    0bc85c5
  10. Merge origin/main: the depends sweep (10a, 10b) and 3.72⁠

    f5646b8
  11. architecture: 3.72 counts what tree facts would leave⁠

    4f63f2b
  12. depends: what a file says a method computes is its output; a lambda stays unread⁠

    054a97a
  13. depends: what a string names and what a subscript picks are reads⁠

    03128a2
  14. readme: the coverage figures nothing was counting⁠

    8b165a1
  15. constrains: a dotted name is read, not matched⁠

    7dbbe3a
  16. onchange: the same check made again on the server backs it⁠

    fed0255
  17. onchange: backed by a constraint on its field, refused only when taken back⁠

    77aa4e0
  18. onchange: a dead _sql_constraints backs nothing on 19⁠

    6eb635c
  19. depends: a mapped() path is a read⁠

    66c7faa
  20. sudo: a public page reading what it publishes is re-scoped⁠

    847fcae
  21. sudo: a domain on records the caller already holds is re-scoped⁠

    d43fe3b
  22. readme: a named live bug above the fold⁠

    6966b08
  23. rule: _sql_constraints is ignored from Odoo 19⁠

    e9d9bcb

  1. datetime: the rule sees where the value goes⁠

    ae568da
  2. sudo: re-scoping has to re-apply every rule everybody gets⁠

    0e2212c
  3. depends-unread: an override that calls super() adds triggers for the chain⁠

    575ff59
  4. narrow: the last three named false-positive classes, and one weakness found on the way⁠

    a9e151c
  5. core: the other two samples, and what depends-unread cannot tell apart⁠

    d275496
  6. datetime: Odoo runs in UTC, and the rule that carried the Python half did not know⁠

    edaf00b
  7. xml: read the data files, and ask noupdate the question per record⁠

    666f897
  8. recursion: ask whether the ORM already refuses the cycle, and whether it can form one⁠

    c298898
  9. figures: every present-tense number, checked against the artifact it came from⁠

    995678a

  1. precision: read the named false positives, and the misses that named themselves⁠

    210b09e

  1. narrow: one corpus, and it is Odoo⁠

    DBax127 +1: Claude Opus 5
    8d155aa
  2. review: a pass over the tool itself, and the silence it was keeping⁠

    DBax127 +1: Claude Opus 5
    223d4f4

  1. report: findings in likelihood order, because history has an opinion⁠

    DBax127 +1: Claude Opus 5
    f3a39c1
  2. triggers: the two conditional rules learn to ask the tree⁠

    DBax127 +1: Claude Opus 5
    6faed22
  3. rules: except-order ships advisory, and advisory grows a second ground⁠

    DBax127 +1: Claude Opus 5
    3e7a0a4
  4. rules: advisory, and prefer-sql-constraint becomes the first one⁠

    DBax127 +1: Claude Opus 5
    24e54d8
  5. semantics: narrow the two worst-aimed rules, at no cost to recall⁠

    DBax127 +1: Claude Opus 5
    6d991e1
  6. recall: --aim, and what 78% other-symbol says about the corpus⁠

    DBax127 +1: Claude Opus 5
    d2d3e7d
  7. eval: re-run check, and correct a number I had published as a constant⁠

    DBax127 +1: Claude Opus 5
    f65702c