diff options
-rw-r--r-- | .gitignore | 9 | ||||
-rw-r--r-- | README.md | 13 | ||||
-rw-r--r-- | advent-of-code/aoc2019.nix (renamed from universe/advent-of-code/aoc2019.nix) | 0 | ||||
-rw-r--r-- | advent-of-code/day_1.py (renamed from universe/advent-of-code/day_1.py) | 0 | ||||
-rw-r--r-- | advent-of-code/day_2.py (renamed from universe/advent-of-code/day_2.py) | 0 | ||||
-rw-r--r-- | advent-of-code/day_3.py (renamed from universe/advent-of-code/day_3.py) | 0 | ||||
-rw-r--r-- | advent-of-code/day_4.py (renamed from universe/advent-of-code/day_4.py) | 0 | ||||
-rw-r--r-- | advent-of-code/day_5.ex (renamed from universe/advent-of-code/day_5.ex) | 0 | ||||
-rw-r--r-- | advent-of-code/day_5.py (renamed from universe/advent-of-code/day_5.py) | 0 | ||||
-rw-r--r-- | advent-of-code/day_5.pyc (renamed from universe/advent-of-code/day_5.pyc) | bin | 5250 -> 5250 bytes | |||
-rw-r--r-- | advent-of-code/day_6.py (renamed from universe/advent-of-code/day_6.py) | 0 | ||||
-rw-r--r-- | advent-of-code/day_7.py (renamed from universe/advent-of-code/day_7.py) | 0 | ||||
-rw-r--r-- | advent-of-code/writePythonBin.nix (renamed from universe/advent-of-code/writePythonBin.nix) | 0 | ||||
-rw-r--r-- | blog/default.nix (renamed from universe/blog/default.nix) | 0 | ||||
-rw-r--r-- | blog/posts/test.md (renamed from universe/blog/posts/test.md) | 0 | ||||
-rw-r--r-- | blog/src/index.html (renamed from universe/blog/src/index.html) | 0 | ||||
-rw-r--r-- | blog/src/server.lisp (renamed from universe/blog/src/server.lisp) | 0 | ||||
-rw-r--r-- | clojure/buildClojure.nix (renamed from universe/clojure/buildClojure.nix) | 0 | ||||
-rw-r--r-- | crack_the_coding_interview/11_1.py (renamed from universe/crack_the_coding_interview/11_1.py) | 0 | ||||
-rw-r--r-- | crack_the_coding_interview/to_tree.hs (renamed from universe/crack_the_coding_interview/to_tree.hs) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/array-traversals.py (renamed from universe/data_structures_and_algorithms/array-traversals.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/balanced-binary-tree.py (renamed from universe/data_structures_and_algorithms/balanced-binary-tree.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/bit-manipulation.py (renamed from universe/data_structures_and_algorithms/bit-manipulation.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/bracket-validator.py (renamed from universe/data_structures_and_algorithms/bracket-validator.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/bst-checker.py (renamed from universe/data_structures_and_algorithms/bst-checker.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/cafe-order-checker.py (renamed from universe/data_structures_and_algorithms/cafe-order-checker.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/cake-thief.py (renamed from universe/data_structures_and_algorithms/cake-thief.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/coins.py (renamed from universe/data_structures_and_algorithms/coins.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/conways-game-of-life.py (renamed from universe/data_structures_and_algorithms/conways-game-of-life.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/delete-node.py (renamed from universe/data_structures_and_algorithms/delete-node.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/dft.py (renamed from universe/data_structures_and_algorithms/dft.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/dijkstra-shortest-path.py (renamed from universe/data_structures_and_algorithms/dijkstra-shortest-path.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/find-duplicate-optimize-for-space-beast.py (renamed from universe/data_structures_and_algorithms/find-duplicate-optimize-for-space-beast.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/find-duplicate-optimize-for-space.py (renamed from universe/data_structures_and_algorithms/find-duplicate-optimize-for-space.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/find-rotation-point.py (renamed from universe/data_structures_and_algorithms/find-rotation-point.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/find-unique-int-among-duplicates.py (renamed from universe/data_structures_and_algorithms/find-unique-int-among-duplicates.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/fixtures.py (renamed from universe/data_structures_and_algorithms/fixtures.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/graph-coloring.py (renamed from universe/data_structures_and_algorithms/graph-coloring.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/graph-to-graphviz.py (renamed from universe/data_structures_and_algorithms/graph-to-graphviz.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/highest-product-of-3.py (renamed from universe/data_structures_and_algorithms/highest-product-of-3.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/inflight-entertainment.py (renamed from universe/data_structures_and_algorithms/inflight-entertainment.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/knapsack-0-1.py (renamed from universe/data_structures_and_algorithms/knapsack-0-1.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/kth-to-last.py (renamed from universe/data_structures_and_algorithms/kth-to-last.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/largest-stack.py (renamed from universe/data_structures_and_algorithms/largest-stack.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/linked-list-cycles.py (renamed from universe/data_structures_and_algorithms/linked-list-cycles.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/merge-sort.py (renamed from universe/data_structures_and_algorithms/merge-sort.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/merging-ranges.py (renamed from universe/data_structures_and_algorithms/merging-ranges.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/mesh-message.gv (renamed from universe/data_structures_and_algorithms/mesh-message.gv) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/mesh-message.py (renamed from universe/data_structures_and_algorithms/mesh-message.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/norman.py (renamed from universe/data_structures_and_algorithms/norman.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/nth-fibonacci.py (renamed from universe/data_structures_and_algorithms/nth-fibonacci.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/optimal-stopping.py (renamed from universe/data_structures_and_algorithms/optimal-stopping.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/perm-tree.py (renamed from universe/data_structures_and_algorithms/perm-tree.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/permutation-palindrome.py (renamed from universe/data_structures_and_algorithms/permutation-palindrome.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/permutations.py (renamed from universe/data_structures_and_algorithms/permutations.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/plot.py (renamed from universe/data_structures_and_algorithms/plot.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/product-of-other-numbers.py (renamed from universe/data_structures_and_algorithms/product-of-other-numbers.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/queue-two-stacks.py (renamed from universe/data_structures_and_algorithms/queue-two-stacks.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/rectangular-love.py (renamed from universe/data_structures_and_algorithms/rectangular-love.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/recursive-string-permutations.py (renamed from universe/data_structures_and_algorithms/recursive-string-permutations.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/reverse-linked-list.py (renamed from universe/data_structures_and_algorithms/reverse-linked-list.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/reverse-words.py (renamed from universe/data_structures_and_algorithms/reverse-words.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/second-largest-item-bst.py (renamed from universe/data_structures_and_algorithms/second-largest-item-bst.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/shortest-path-inject-vertices.py (renamed from universe/data_structures_and_algorithms/shortest-path-inject-vertices.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/shuffle.py (renamed from universe/data_structures_and_algorithms/shuffle.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/string-reverse.py (renamed from universe/data_structures_and_algorithms/string-reverse.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/temperature-tracker.py (renamed from universe/data_structures_and_algorithms/temperature-tracker.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/test.txt (renamed from universe/data_structures_and_algorithms/test.txt) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/top-scores.py (renamed from universe/data_structures_and_algorithms/top-scores.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/topo-sort.py (renamed from universe/data_structures_and_algorithms/topo-sort.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/trickling-water.py (renamed from universe/data_structures_and_algorithms/trickling-water.py) | 0 | ||||
-rw-r--r-- | data_structures_and_algorithms/which-appears-twice.py (renamed from universe/data_structures_and_algorithms/which-appears-twice.py) | 0 | ||||
-rw-r--r-- | deepmind/balanced-binary-tree.py (renamed from universe/deepmind/balanced-binary-tree.py) | 0 | ||||
-rw-r--r-- | deepmind/dijkstra.py (renamed from universe/deepmind/dijkstra.py) | 0 | ||||
-rw-r--r-- | deepmind/efficiency.org (renamed from universe/deepmind/efficiency.org) | 0 | ||||
-rw-r--r-- | deepmind/find-rotation-point.py (renamed from universe/deepmind/find-rotation-point.py) | 0 | ||||
-rw-r--r-- | deepmind/inflight-entertainment.py (renamed from universe/deepmind/inflight-entertainment.py) | 0 | ||||
-rw-r--r-- | deepmind/kth-to-last.py (renamed from universe/deepmind/kth-to-last.py) | 0 | ||||
-rw-r--r-- | deepmind/merging-ranges.py (renamed from universe/deepmind/merging-ranges.py) | 0 | ||||
-rw-r--r-- | deepmind/recursive-string-permutations.py (renamed from universe/deepmind/recursive-string-permutations.py) | 0 | ||||
-rw-r--r-- | deepmind/reverse-linked-list.py (renamed from universe/deepmind/reverse-linked-list.py) | 0 | ||||
-rw-r--r-- | deepmind/stock-price.py (renamed from universe/deepmind/stock-price.py) | 0 | ||||
-rw-r--r-- | deepmind/which-appears-twice.py (renamed from universe/deepmind/which-appears-twice.py) | 0 | ||||
-rw-r--r-- | default.nix (renamed from universe/default.nix) | 0 | ||||
-rw-r--r-- | docker/README.md (renamed from universe/docker/README.md) | 0 | ||||
-rw-r--r-- | docker/cloud_run.nix (renamed from universe/docker/cloud_run.nix) | 0 | ||||
-rw-r--r-- | docker/config.lisp (renamed from universe/docker/config.lisp) | 0 | ||||
-rw-r--r-- | haskell-file/f-todo.org (renamed from universe/haskell-file/f-todo.org) | 0 | ||||
-rw-r--r-- | haskell-file/f.hs (renamed from universe/haskell-file/f.hs) | 0 | ||||
-rw-r--r-- | haskell-file/shell.nix (renamed from universe/haskell-file/shell.nix) | 0 | ||||
-rw-r--r-- | haskell-file/tests.hs (renamed from universe/haskell-file/tests.hs) | 0 | ||||
-rw-r--r-- | java/Another.java (renamed from universe/java/Another.java) | 0 | ||||
-rw-r--r-- | java/Main.java (renamed from universe/java/Main.java) | 0 | ||||
-rw-r--r-- | lisp/f/README.md (renamed from universe/lisp/f/README.md) | 0 | ||||
-rw-r--r-- | lisp/f/default.nix (renamed from universe/lisp/f/default.nix) | 0 | ||||
-rw-r--r-- | lisp/f/main.lisp (renamed from universe/lisp/f/main.lisp) | 0 | ||||
-rw-r--r-- | lisp/prelude.lisp (renamed from universe/lisp/prelude.lisp) | 0 | ||||
-rw-r--r-- | lisp/prelude.nix (renamed from universe/lisp/prelude.nix) | 0 | ||||
-rw-r--r-- | third_party/lisp/anaphora.nix (renamed from universe/third_party/lisp/anaphora.nix) | 0 | ||||
-rw-r--r-- | third_party/lisp/cl-arrows.nix (renamed from universe/third_party/lisp/cl-arrows.nix) | 0 | ||||
-rw-r--r-- | third_party/lisp/cl-colors.nix (renamed from universe/third_party/lisp/cl-colors.nix) | 0 | ||||
-rw-r--r-- | third_party/lisp/let-plus.nix (renamed from universe/third_party/lisp/let-plus.nix) | 0 | ||||
-rw-r--r-- | third_party/lisp/linear-programming.nix (renamed from universe/third_party/lisp/linear-programming.nix) | 0 | ||||
-rw-r--r-- | third_party/lisp/prove.nix (renamed from universe/third_party/lisp/prove.nix) | 0 | ||||
-rw-r--r-- | universe/.envrc | 1 | ||||
-rw-r--r-- | universe/.gitignore | 7 | ||||
-rw-r--r-- | universe/README.md | 9 | ||||
-rw-r--r-- | universe/ac_types/ac_types.py | 378 | ||||
-rw-r--r-- | universe/ac_types/attributes.pb | 1014 | ||||
-rw-r--r-- | universe/ac_types/dict.py | 10 | ||||
-rw-r--r-- | universe/ac_types/example.textproto | 523 | ||||
-rw-r--r-- | universe/ac_types/expected/EU Election Certification (Non-Olympus).textproto | 255 | ||||
-rw-r--r-- | universe/ac_types/expected/EU Election Certification (Olympus).textproto | 550 | ||||
-rw-r--r-- | universe/ac_types/expected/Non-Sensitive Ads Review (Olympus).textproto | 126 | ||||
-rw-r--r-- | universe/ac_types/f.py | 46 | ||||
-rw-r--r-- | universe/ac_types/fs.py | 9 | ||||
-rw-r--r-- | universe/ac_types/input_constant.py | 78 | ||||
-rw-r--r-- | universe/ac_types/log.py | 9 | ||||
-rw-r--r-- | universe/ac_types/notes_with_jason.txt | 60 | ||||
-rw-r--r-- | universe/ac_types/output.textproto | 4483 | ||||
-rw-r--r-- | universe/ac_types/parse.py | 138 | ||||
-rw-r--r-- | universe/ac_types/parse.pyc | bin | 5462 -> 0 bytes | |||
-rw-r--r-- | universe/ac_types/prelude.py | 19 | ||||
-rw-r--r-- | universe/ac_types/pretty.py | 7 | ||||
-rw-r--r-- | universe/ac_types/pretty.pyc | bin | 456 -> 0 bytes | |||
-rw-r--r-- | universe/ac_types/regex.py | 18 | ||||
-rw-r--r-- | universe/ac_types/scrape.py | 51 | ||||
-rw-r--r-- | universe/ac_types/serialize.py | 67 | ||||
-rw-r--r-- | universe/ac_types/string.py | 90 | ||||
-rw-r--r-- | universe/ac_types/string.pyc | bin | 2546 -> 0 bytes | |||
-rw-r--r-- | universe/ac_types/test_utils.py | 21 | ||||
-rw-r--r-- | universe/ac_types/test_utils.pyc | bin | 966 -> 0 bytes | |||
-rw-r--r-- | universe/ac_types/todo.org | 5 |
133 files changed, 17 insertions, 7979 deletions
diff --git a/.gitignore b/.gitignore index e201d3ac43ab..83bf215fa9b4 100644 --- a/.gitignore +++ b/.gitignore @@ -17,5 +17,12 @@ Vundle.vim **/*/.emacs.d/custom.el **/*/.emacs.d/projectile-bookmarks.eld **/*/.emacs.d/bookmarks -__pycache__/ **/*/transient/history.el + +# Haskell +*.hi +*.o + +# Python +__pycache__ +*.class \ No newline at end of file diff --git a/README.md b/README.md index 8fc59767c3cc..b63be11c4a81 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,15 @@ # dotfiles -I'm documenting this primarily for personal use. This repository contains shell -configs, vim configs, emacs configs, a list of commonly used applications, and -other items. +This is my mono-repo. Having a personal mono-repo is a new idea for me, so at +the time of this writing, the state of this repository is fledgling. -Configuration is everything. +I'm attempting to amass a collection of functions across a variety of languages +while minimizing the costs of sharing the code across a projects. Stay tuned for +more updates as my definition of the mono-repo becomes more clear, my opinions +evolve, and my preferences change. + +My configuration also lives inside of my mono-repo. Things like Emacs, Tmux, +SSH, and other tools are configured herein. # Installation diff --git a/universe/advent-of-code/aoc2019.nix b/advent-of-code/aoc2019.nix index 10e6c559a9b4..10e6c559a9b4 100644 --- a/universe/advent-of-code/aoc2019.nix +++ b/advent-of-code/aoc2019.nix diff --git a/universe/advent-of-code/day_1.py b/advent-of-code/day_1.py index bd4024e3ec7d..bd4024e3ec7d 100644 --- a/universe/advent-of-code/day_1.py +++ b/advent-of-code/day_1.py diff --git a/universe/advent-of-code/day_2.py b/advent-of-code/day_2.py index 77774c1bb5ad..77774c1bb5ad 100644 --- a/universe/advent-of-code/day_2.py +++ b/advent-of-code/day_2.py diff --git a/universe/advent-of-code/day_3.py b/advent-of-code/day_3.py index 6dd863528c1c..6dd863528c1c 100644 --- a/universe/advent-of-code/day_3.py +++ b/advent-of-code/day_3.py diff --git a/universe/advent-of-code/day_4.py b/advent-of-code/day_4.py index adef73b452dc..adef73b452dc 100644 --- a/universe/advent-of-code/day_4.py +++ b/advent-of-code/day_4.py diff --git a/universe/advent-of-code/day_5.ex b/advent-of-code/day_5.ex index 807e3c9177be..807e3c9177be 100644 --- a/universe/advent-of-code/day_5.ex +++ b/advent-of-code/day_5.ex diff --git a/universe/advent-of-code/day_5.py b/advent-of-code/day_5.py index 3d82846e6126..3d82846e6126 100644 --- a/universe/advent-of-code/day_5.py +++ b/advent-of-code/day_5.py diff --git a/universe/advent-of-code/day_5.pyc b/advent-of-code/day_5.pyc index d95573e94326..d95573e94326 100644 --- a/universe/advent-of-code/day_5.pyc +++ b/advent-of-code/day_5.pyc Binary files differdiff --git a/universe/advent-of-code/day_6.py b/advent-of-code/day_6.py index aba99b8239ff..aba99b8239ff 100644 --- a/universe/advent-of-code/day_6.py +++ b/advent-of-code/day_6.py diff --git a/universe/advent-of-code/day_7.py b/advent-of-code/day_7.py index 14597d5104e3..14597d5104e3 100644 --- a/universe/advent-of-code/day_7.py +++ b/advent-of-code/day_7.py diff --git a/universe/advent-of-code/writePythonBin.nix b/advent-of-code/writePythonBin.nix index 1730edb2ebe4..1730edb2ebe4 100644 --- a/universe/advent-of-code/writePythonBin.nix +++ b/advent-of-code/writePythonBin.nix diff --git a/universe/blog/default.nix b/blog/default.nix index 5359a0ab6f37..5359a0ab6f37 100644 --- a/universe/blog/default.nix +++ b/blog/default.nix diff --git a/universe/blog/posts/test.md b/blog/posts/test.md index ec2e030b2824..ec2e030b2824 100644 --- a/universe/blog/posts/test.md +++ b/blog/posts/test.md diff --git a/universe/blog/src/index.html b/blog/src/index.html index a9d9cf7eaa25..a9d9cf7eaa25 100644 --- a/universe/blog/src/index.html +++ b/blog/src/index.html diff --git a/universe/blog/src/server.lisp b/blog/src/server.lisp index ad8169fa1af9..ad8169fa1af9 100644 --- a/universe/blog/src/server.lisp +++ b/blog/src/server.lisp diff --git a/universe/clojure/buildClojure.nix b/clojure/buildClojure.nix index 1596279de1c5..1596279de1c5 100644 --- a/universe/clojure/buildClojure.nix +++ b/clojure/buildClojure.nix diff --git a/universe/crack_the_coding_interview/11_1.py b/crack_the_coding_interview/11_1.py index ec7b65dae0c3..ec7b65dae0c3 100644 --- a/universe/crack_the_coding_interview/11_1.py +++ b/crack_the_coding_interview/11_1.py diff --git a/universe/crack_the_coding_interview/to_tree.hs b/crack_the_coding_interview/to_tree.hs index 8496d88c0c0c..8496d88c0c0c 100644 --- a/universe/crack_the_coding_interview/to_tree.hs +++ b/crack_the_coding_interview/to_tree.hs diff --git a/universe/data_structures_and_algorithms/array-traversals.py b/data_structures_and_algorithms/array-traversals.py index 35cb4392812e..35cb4392812e 100644 --- a/universe/data_structures_and_algorithms/array-traversals.py +++ b/data_structures_and_algorithms/array-traversals.py diff --git a/universe/data_structures_and_algorithms/balanced-binary-tree.py b/data_structures_and_algorithms/balanced-binary-tree.py index 01fd965fd540..01fd965fd540 100644 --- a/universe/data_structures_and_algorithms/balanced-binary-tree.py +++ b/data_structures_and_algorithms/balanced-binary-tree.py diff --git a/universe/data_structures_and_algorithms/bit-manipulation.py b/data_structures_and_algorithms/bit-manipulation.py index dc30bb508887..dc30bb508887 100644 --- a/universe/data_structures_and_algorithms/bit-manipulation.py +++ b/data_structures_and_algorithms/bit-manipulation.py diff --git a/universe/data_structures_and_algorithms/bracket-validator.py b/data_structures_and_algorithms/bracket-validator.py index a50f8b074e55..a50f8b074e55 100644 --- a/universe/data_structures_and_algorithms/bracket-validator.py +++ b/data_structures_and_algorithms/bracket-validator.py diff --git a/universe/data_structures_and_algorithms/bst-checker.py b/data_structures_and_algorithms/bst-checker.py index 689be97a8503..689be97a8503 100644 --- a/universe/data_structures_and_algorithms/bst-checker.py +++ b/data_structures_and_algorithms/bst-checker.py diff --git a/universe/data_structures_and_algorithms/cafe-order-checker.py b/data_structures_and_algorithms/cafe-order-checker.py index e34a2b136ab6..e34a2b136ab6 100644 --- a/universe/data_structures_and_algorithms/cafe-order-checker.py +++ b/data_structures_and_algorithms/cafe-order-checker.py diff --git a/universe/data_structures_and_algorithms/cake-thief.py b/data_structures_and_algorithms/cake-thief.py index 9eddb34b2db3..9eddb34b2db3 100644 --- a/universe/data_structures_and_algorithms/cake-thief.py +++ b/data_structures_and_algorithms/cake-thief.py diff --git a/universe/data_structures_and_algorithms/coins.py b/data_structures_and_algorithms/coins.py index eb5754f98210..eb5754f98210 100644 --- a/universe/data_structures_and_algorithms/coins.py +++ b/data_structures_and_algorithms/coins.py diff --git a/universe/data_structures_and_algorithms/conways-game-of-life.py b/data_structures_and_algorithms/conways-game-of-life.py index 3836bcd0c653..3836bcd0c653 100644 --- a/universe/data_structures_and_algorithms/conways-game-of-life.py +++ b/data_structures_and_algorithms/conways-game-of-life.py diff --git a/universe/data_structures_and_algorithms/delete-node.py b/data_structures_and_algorithms/delete-node.py index 7e431e224962..7e431e224962 100644 --- a/universe/data_structures_and_algorithms/delete-node.py +++ b/data_structures_and_algorithms/delete-node.py diff --git a/universe/data_structures_and_algorithms/dft.py b/data_structures_and_algorithms/dft.py index 127d48c1864b..127d48c1864b 100644 --- a/universe/data_structures_and_algorithms/dft.py +++ b/data_structures_and_algorithms/dft.py diff --git a/universe/data_structures_and_algorithms/dijkstra-shortest-path.py b/data_structures_and_algorithms/dijkstra-shortest-path.py index 03907f604044..03907f604044 100644 --- a/universe/data_structures_and_algorithms/dijkstra-shortest-path.py +++ b/data_structures_and_algorithms/dijkstra-shortest-path.py diff --git a/universe/data_structures_and_algorithms/find-duplicate-optimize-for-space-beast.py b/data_structures_and_algorithms/find-duplicate-optimize-for-space-beast.py index 93fdd9eed2d6..93fdd9eed2d6 100644 --- a/universe/data_structures_and_algorithms/find-duplicate-optimize-for-space-beast.py +++ b/data_structures_and_algorithms/find-duplicate-optimize-for-space-beast.py diff --git a/universe/data_structures_and_algorithms/find-duplicate-optimize-for-space.py b/data_structures_and_algorithms/find-duplicate-optimize-for-space.py index e2739f0f6055..e2739f0f6055 100644 --- a/universe/data_structures_and_algorithms/find-duplicate-optimize-for-space.py +++ b/data_structures_and_algorithms/find-duplicate-optimize-for-space.py diff --git a/universe/data_structures_and_algorithms/find-rotation-point.py b/data_structures_and_algorithms/find-rotation-point.py index 2103a5b84f75..2103a5b84f75 100644 --- a/universe/data_structures_and_algorithms/find-rotation-point.py +++ b/data_structures_and_algorithms/find-rotation-point.py diff --git a/universe/data_structures_and_algorithms/find-unique-int-among-duplicates.py b/data_structures_and_algorithms/find-unique-int-among-duplicates.py index dfa5de42cc0b..dfa5de42cc0b 100644 --- a/universe/data_structures_and_algorithms/find-unique-int-among-duplicates.py +++ b/data_structures_and_algorithms/find-unique-int-among-duplicates.py diff --git a/universe/data_structures_and_algorithms/fixtures.py b/data_structures_and_algorithms/fixtures.py index 27689ca76d04..27689ca76d04 100644 --- a/universe/data_structures_and_algorithms/fixtures.py +++ b/data_structures_and_algorithms/fixtures.py diff --git a/universe/data_structures_and_algorithms/graph-coloring.py b/data_structures_and_algorithms/graph-coloring.py index bc7f7ceea562..bc7f7ceea562 100644 --- a/universe/data_structures_and_algorithms/graph-coloring.py +++ b/data_structures_and_algorithms/graph-coloring.py diff --git a/universe/data_structures_and_algorithms/graph-to-graphviz.py b/data_structures_and_algorithms/graph-to-graphviz.py index 0e7e97a20ca7..0e7e97a20ca7 100644 --- a/universe/data_structures_and_algorithms/graph-to-graphviz.py +++ b/data_structures_and_algorithms/graph-to-graphviz.py diff --git a/universe/data_structures_and_algorithms/highest-product-of-3.py b/data_structures_and_algorithms/highest-product-of-3.py index 889663e058da..889663e058da 100644 --- a/universe/data_structures_and_algorithms/highest-product-of-3.py +++ b/data_structures_and_algorithms/highest-product-of-3.py diff --git a/universe/data_structures_and_algorithms/inflight-entertainment.py b/data_structures_and_algorithms/inflight-entertainment.py index 6e17baef3709..6e17baef3709 100644 --- a/universe/data_structures_and_algorithms/inflight-entertainment.py +++ b/data_structures_and_algorithms/inflight-entertainment.py diff --git a/universe/data_structures_and_algorithms/knapsack-0-1.py b/data_structures_and_algorithms/knapsack-0-1.py index c72d19d4ed73..c72d19d4ed73 100644 --- a/universe/data_structures_and_algorithms/knapsack-0-1.py +++ b/data_structures_and_algorithms/knapsack-0-1.py diff --git a/universe/data_structures_and_algorithms/kth-to-last.py b/data_structures_and_algorithms/kth-to-last.py index 8291e54533d5..8291e54533d5 100644 --- a/universe/data_structures_and_algorithms/kth-to-last.py +++ b/data_structures_and_algorithms/kth-to-last.py diff --git a/universe/data_structures_and_algorithms/largest-stack.py b/data_structures_and_algorithms/largest-stack.py index aab9671eb6d3..aab9671eb6d3 100644 --- a/universe/data_structures_and_algorithms/largest-stack.py +++ b/data_structures_and_algorithms/largest-stack.py diff --git a/universe/data_structures_and_algorithms/linked-list-cycles.py b/data_structures_and_algorithms/linked-list-cycles.py index 75a4b993944c..75a4b993944c 100644 --- a/universe/data_structures_and_algorithms/linked-list-cycles.py +++ b/data_structures_and_algorithms/linked-list-cycles.py diff --git a/universe/data_structures_and_algorithms/merge-sort.py b/data_structures_and_algorithms/merge-sort.py index 6dbe0fa0f3c3..6dbe0fa0f3c3 100644 --- a/universe/data_structures_and_algorithms/merge-sort.py +++ b/data_structures_and_algorithms/merge-sort.py diff --git a/universe/data_structures_and_algorithms/merging-ranges.py b/data_structures_and_algorithms/merging-ranges.py index 4e3604d5bcca..4e3604d5bcca 100644 --- a/universe/data_structures_and_algorithms/merging-ranges.py +++ b/data_structures_and_algorithms/merging-ranges.py diff --git a/universe/data_structures_and_algorithms/mesh-message.gv b/data_structures_and_algorithms/mesh-message.gv index 1e67c3954f5f..1e67c3954f5f 100644 --- a/universe/data_structures_and_algorithms/mesh-message.gv +++ b/data_structures_and_algorithms/mesh-message.gv diff --git a/universe/data_structures_and_algorithms/mesh-message.py b/data_structures_and_algorithms/mesh-message.py index c9d7d9d74151..c9d7d9d74151 100644 --- a/universe/data_structures_and_algorithms/mesh-message.py +++ b/data_structures_and_algorithms/mesh-message.py diff --git a/universe/data_structures_and_algorithms/norman.py b/data_structures_and_algorithms/norman.py index 379ba92abba8..379ba92abba8 100644 --- a/universe/data_structures_and_algorithms/norman.py +++ b/data_structures_and_algorithms/norman.py diff --git a/universe/data_structures_and_algorithms/nth-fibonacci.py b/data_structures_and_algorithms/nth-fibonacci.py index cdb2846ea338..cdb2846ea338 100644 --- a/universe/data_structures_and_algorithms/nth-fibonacci.py +++ b/data_structures_and_algorithms/nth-fibonacci.py diff --git a/universe/data_structures_and_algorithms/optimal-stopping.py b/data_structures_and_algorithms/optimal-stopping.py index af13239941d0..af13239941d0 100644 --- a/universe/data_structures_and_algorithms/optimal-stopping.py +++ b/data_structures_and_algorithms/optimal-stopping.py diff --git a/universe/data_structures_and_algorithms/perm-tree.py b/data_structures_and_algorithms/perm-tree.py index 0eb389c26bb9..0eb389c26bb9 100644 --- a/universe/data_structures_and_algorithms/perm-tree.py +++ b/data_structures_and_algorithms/perm-tree.py diff --git a/universe/data_structures_and_algorithms/permutation-palindrome.py b/data_structures_and_algorithms/permutation-palindrome.py index 0a2136a408f2..0a2136a408f2 100644 --- a/universe/data_structures_and_algorithms/permutation-palindrome.py +++ b/data_structures_and_algorithms/permutation-palindrome.py diff --git a/universe/data_structures_and_algorithms/permutations.py b/data_structures_and_algorithms/permutations.py index fc2c1ef7eebc..fc2c1ef7eebc 100644 --- a/universe/data_structures_and_algorithms/permutations.py +++ b/data_structures_and_algorithms/permutations.py diff --git a/universe/data_structures_and_algorithms/plot.py b/data_structures_and_algorithms/plot.py index 5601891a0d9b..5601891a0d9b 100644 --- a/universe/data_structures_and_algorithms/plot.py +++ b/data_structures_and_algorithms/plot.py diff --git a/universe/data_structures_and_algorithms/product-of-other-numbers.py b/data_structures_and_algorithms/product-of-other-numbers.py index d05e82d42b02..d05e82d42b02 100644 --- a/universe/data_structures_and_algorithms/product-of-other-numbers.py +++ b/data_structures_and_algorithms/product-of-other-numbers.py diff --git a/universe/data_structures_and_algorithms/queue-two-stacks.py b/data_structures_and_algorithms/queue-two-stacks.py index 63da08ebf79a..63da08ebf79a 100644 --- a/universe/data_structures_and_algorithms/queue-two-stacks.py +++ b/data_structures_and_algorithms/queue-two-stacks.py diff --git a/universe/data_structures_and_algorithms/rectangular-love.py b/data_structures_and_algorithms/rectangular-love.py index 47c0f53979c6..47c0f53979c6 100644 --- a/universe/data_structures_and_algorithms/rectangular-love.py +++ b/data_structures_and_algorithms/rectangular-love.py diff --git a/universe/data_structures_and_algorithms/recursive-string-permutations.py b/data_structures_and_algorithms/recursive-string-permutations.py index 70461ddf5dac..70461ddf5dac 100644 --- a/universe/data_structures_and_algorithms/recursive-string-permutations.py +++ b/data_structures_and_algorithms/recursive-string-permutations.py diff --git a/universe/data_structures_and_algorithms/reverse-linked-list.py b/data_structures_and_algorithms/reverse-linked-list.py index b7396b20ce3f..b7396b20ce3f 100644 --- a/universe/data_structures_and_algorithms/reverse-linked-list.py +++ b/data_structures_and_algorithms/reverse-linked-list.py diff --git a/universe/data_structures_and_algorithms/reverse-words.py b/data_structures_and_algorithms/reverse-words.py index 5df12ebabdc7..5df12ebabdc7 100644 --- a/universe/data_structures_and_algorithms/reverse-words.py +++ b/data_structures_and_algorithms/reverse-words.py diff --git a/universe/data_structures_and_algorithms/second-largest-item-bst.py b/data_structures_and_algorithms/second-largest-item-bst.py index bc167d975a7b..bc167d975a7b 100644 --- a/universe/data_structures_and_algorithms/second-largest-item-bst.py +++ b/data_structures_and_algorithms/second-largest-item-bst.py diff --git a/universe/data_structures_and_algorithms/shortest-path-inject-vertices.py b/data_structures_and_algorithms/shortest-path-inject-vertices.py index e08ea66b8f50..e08ea66b8f50 100644 --- a/universe/data_structures_and_algorithms/shortest-path-inject-vertices.py +++ b/data_structures_and_algorithms/shortest-path-inject-vertices.py diff --git a/universe/data_structures_and_algorithms/shuffle.py b/data_structures_and_algorithms/shuffle.py index bdfbad24263c..bdfbad24263c 100644 --- a/universe/data_structures_and_algorithms/shuffle.py +++ b/data_structures_and_algorithms/shuffle.py diff --git a/universe/data_structures_and_algorithms/string-reverse.py b/data_structures_and_algorithms/string-reverse.py index 8b4cdac1c271..8b4cdac1c271 100644 --- a/universe/data_structures_and_algorithms/string-reverse.py +++ b/data_structures_and_algorithms/string-reverse.py diff --git a/universe/data_structures_and_algorithms/temperature-tracker.py b/data_structures_and_algorithms/temperature-tracker.py index 6b042182f01c..6b042182f01c 100644 --- a/universe/data_structures_and_algorithms/temperature-tracker.py +++ b/data_structures_and_algorithms/temperature-tracker.py diff --git a/universe/data_structures_and_algorithms/test.txt b/data_structures_and_algorithms/test.txt index ce013625030b..ce013625030b 100644 --- a/universe/data_structures_and_algorithms/test.txt +++ b/data_structures_and_algorithms/test.txt diff --git a/universe/data_structures_and_algorithms/top-scores.py b/data_structures_and_algorithms/top-scores.py index 8e7b073dd8bd..8e7b073dd8bd 100644 --- a/universe/data_structures_and_algorithms/top-scores.py +++ b/data_structures_and_algorithms/top-scores.py diff --git a/universe/data_structures_and_algorithms/topo-sort.py b/data_structures_and_algorithms/topo-sort.py index fe295b0279ff..fe295b0279ff 100644 --- a/universe/data_structures_and_algorithms/topo-sort.py +++ b/data_structures_and_algorithms/topo-sort.py diff --git a/universe/data_structures_and_algorithms/trickling-water.py b/data_structures_and_algorithms/trickling-water.py index 45621990ecf9..45621990ecf9 100644 --- a/universe/data_structures_and_algorithms/trickling-water.py +++ b/data_structures_and_algorithms/trickling-water.py diff --git a/universe/data_structures_and_algorithms/which-appears-twice.py b/data_structures_and_algorithms/which-appears-twice.py index e9a4f0eb24d0..e9a4f0eb24d0 100644 --- a/universe/data_structures_and_algorithms/which-appears-twice.py +++ b/data_structures_and_algorithms/which-appears-twice.py diff --git a/universe/deepmind/balanced-binary-tree.py b/deepmind/balanced-binary-tree.py index 7fc174a2a9f3..7fc174a2a9f3 100644 --- a/universe/deepmind/balanced-binary-tree.py +++ b/deepmind/balanced-binary-tree.py diff --git a/universe/deepmind/dijkstra.py b/deepmind/dijkstra.py index 6975dbe4d1d6..6975dbe4d1d6 100644 --- a/universe/deepmind/dijkstra.py +++ b/deepmind/dijkstra.py diff --git a/universe/deepmind/efficiency.org b/deepmind/efficiency.org index 89a45c52ad8a..89a45c52ad8a 100644 --- a/universe/deepmind/efficiency.org +++ b/deepmind/efficiency.org diff --git a/universe/deepmind/find-rotation-point.py b/deepmind/find-rotation-point.py index 5c21d5167ce9..5c21d5167ce9 100644 --- a/universe/deepmind/find-rotation-point.py +++ b/deepmind/find-rotation-point.py diff --git a/universe/deepmind/inflight-entertainment.py b/deepmind/inflight-entertainment.py index 2116b27b0b97..2116b27b0b97 100644 --- a/universe/deepmind/inflight-entertainment.py +++ b/deepmind/inflight-entertainment.py diff --git a/universe/deepmind/kth-to-last.py b/deepmind/kth-to-last.py index 5335e419f7ec..5335e419f7ec 100644 --- a/universe/deepmind/kth-to-last.py +++ b/deepmind/kth-to-last.py diff --git a/universe/deepmind/merging-ranges.py b/deepmind/merging-ranges.py index 23b40793b8f1..23b40793b8f1 100644 --- a/universe/deepmind/merging-ranges.py +++ b/deepmind/merging-ranges.py diff --git a/universe/deepmind/recursive-string-permutations.py b/deepmind/recursive-string-permutations.py index f50db2838707..f50db2838707 100644 --- a/universe/deepmind/recursive-string-permutations.py +++ b/deepmind/recursive-string-permutations.py diff --git a/universe/deepmind/reverse-linked-list.py b/deepmind/reverse-linked-list.py index 82fac171d5d1..82fac171d5d1 100644 --- a/universe/deepmind/reverse-linked-list.py +++ b/deepmind/reverse-linked-list.py diff --git a/universe/deepmind/stock-price.py b/deepmind/stock-price.py index 7055b66af196..7055b66af196 100644 --- a/universe/deepmind/stock-price.py +++ b/deepmind/stock-price.py diff --git a/universe/deepmind/which-appears-twice.py b/deepmind/which-appears-twice.py index c01379295d32..c01379295d32 100644 --- a/universe/deepmind/which-appears-twice.py +++ b/deepmind/which-appears-twice.py diff --git a/universe/default.nix b/default.nix index ff4f40d8f943..ff4f40d8f943 100644 --- a/universe/default.nix +++ b/default.nix diff --git a/universe/docker/README.md b/docker/README.md index 34f762cc1970..34f762cc1970 100644 --- a/universe/docker/README.md +++ b/docker/README.md diff --git a/universe/docker/cloud_run.nix b/docker/cloud_run.nix index 70be4040c36b..70be4040c36b 100644 --- a/universe/docker/cloud_run.nix +++ b/docker/cloud_run.nix diff --git a/universe/docker/config.lisp b/docker/config.lisp index 54f8e5f34462..54f8e5f34462 100644 --- a/universe/docker/config.lisp +++ b/docker/config.lisp diff --git a/universe/haskell-file/f-todo.org b/haskell-file/f-todo.org index 6dd43a96291f..6dd43a96291f 100644 --- a/universe/haskell-file/f-todo.org +++ b/haskell-file/f-todo.org diff --git a/universe/haskell-file/f.hs b/haskell-file/f.hs index 295575f3f48d..295575f3f48d 100644 --- a/universe/haskell-file/f.hs +++ b/haskell-file/f.hs diff --git a/universe/haskell-file/shell.nix b/haskell-file/shell.nix index f2621d6eac5a..f2621d6eac5a 100644 --- a/universe/haskell-file/shell.nix +++ b/haskell-file/shell.nix diff --git a/universe/haskell-file/tests.hs b/haskell-file/tests.hs index e3967b77de1f..e3967b77de1f 100644 --- a/universe/haskell-file/tests.hs +++ b/haskell-file/tests.hs diff --git a/universe/java/Another.java b/java/Another.java index e431e157336b..e431e157336b 100644 --- a/universe/java/Another.java +++ b/java/Another.java diff --git a/universe/java/Main.java b/java/Main.java index 0bfa9ebc2a34..0bfa9ebc2a34 100644 --- a/universe/java/Main.java +++ b/java/Main.java diff --git a/universe/lisp/f/README.md b/lisp/f/README.md index 34e07180d492..34e07180d492 100644 --- a/universe/lisp/f/README.md +++ b/lisp/f/README.md diff --git a/universe/lisp/f/default.nix b/lisp/f/default.nix index 6911b2102634..6911b2102634 100644 --- a/universe/lisp/f/default.nix +++ b/lisp/f/default.nix diff --git a/universe/lisp/f/main.lisp b/lisp/f/main.lisp index a51c38127815..a51c38127815 100644 --- a/universe/lisp/f/main.lisp +++ b/lisp/f/main.lisp diff --git a/universe/lisp/prelude.lisp b/lisp/prelude.lisp index 3522567ea0f7..3522567ea0f7 100644 --- a/universe/lisp/prelude.lisp +++ b/lisp/prelude.lisp diff --git a/universe/lisp/prelude.nix b/lisp/prelude.nix index 9051f82394ff..9051f82394ff 100644 --- a/universe/lisp/prelude.nix +++ b/lisp/prelude.nix diff --git a/universe/third_party/lisp/anaphora.nix b/third_party/lisp/anaphora.nix index 04a1dd847feb..04a1dd847feb 100644 --- a/universe/third_party/lisp/anaphora.nix +++ b/third_party/lisp/anaphora.nix diff --git a/universe/third_party/lisp/cl-arrows.nix b/third_party/lisp/cl-arrows.nix index 60cd8a375b1c..60cd8a375b1c 100644 --- a/universe/third_party/lisp/cl-arrows.nix +++ b/third_party/lisp/cl-arrows.nix diff --git a/universe/third_party/lisp/cl-colors.nix b/third_party/lisp/cl-colors.nix index 2217e68ce70b..2217e68ce70b 100644 --- a/universe/third_party/lisp/cl-colors.nix +++ b/third_party/lisp/cl-colors.nix diff --git a/universe/third_party/lisp/let-plus.nix b/third_party/lisp/let-plus.nix index a3a15776bf86..a3a15776bf86 100644 --- a/universe/third_party/lisp/let-plus.nix +++ b/third_party/lisp/let-plus.nix diff --git a/universe/third_party/lisp/linear-programming.nix b/third_party/lisp/linear-programming.nix index 432fedb8bcac..432fedb8bcac 100644 --- a/universe/third_party/lisp/linear-programming.nix +++ b/third_party/lisp/linear-programming.nix diff --git a/universe/third_party/lisp/prove.nix b/third_party/lisp/prove.nix index d6c0fe7413cb..d6c0fe7413cb 100644 --- a/universe/third_party/lisp/prove.nix +++ b/third_party/lisp/prove.nix diff --git a/universe/.envrc b/universe/.envrc deleted file mode 100644 index 365d37dbcabf..000000000000 --- a/universe/.envrc +++ /dev/null @@ -1 +0,0 @@ -export NIX_PATH=nixpkgs=$HOME/.nix-defexpr/nixpkgs:depot=$HOME/depot:universe=$HOME/universe diff --git a/universe/.gitignore b/universe/.gitignore deleted file mode 100644 index 12ecf28fd42f..000000000000 --- a/universe/.gitignore +++ /dev/null @@ -1,7 +0,0 @@ -# Haskell -*.hi -*.o - -# Python -__pycache__ -*.class diff --git a/universe/README.md b/universe/README.md deleted file mode 100644 index 4fa248554751..000000000000 --- a/universe/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# Universe - -This is my mono-repo. Having a personal mono-repo is a new idea for me, so at -the time of this writing, the state of this repository is fledgling. - -I'm attempting to amass a collection of functions across a variety of languages -while minimizing the costs of sharing the code across a projects. Stay tuned for -more updates as my definition of the mono-repo becomes more clear, my opinions -evolve, and my preferences change. diff --git a/universe/ac_types/ac_types.py b/universe/ac_types/ac_types.py deleted file mode 100644 index 8a3513c59798..000000000000 --- a/universe/ac_types/ac_types.py +++ /dev/null @@ -1,378 +0,0 @@ -from itertools import product -import string -from pretty import pretty_print -import csv -import parse -import serialize -import dict -import scrape -import fs -import f -import log -import regex -import input_constant -from test_utils import simple_assert - -################################################################################ -# Main -################################################################################ -enable_tests = True - - -# parse_csv :: Path -> [RowAsDict] -def parse_csv(path): - parser = { - "Name": parse.required("Name", parse.identity), - "Type": parse.required("Type", parse.as_type), - # TODO: Are we sure we want to default to False here? - "Optional": parse.if_empty(False, parse.as_yes_no), - # We'd like to skip rows where "Data Source Type" is empty. - "Data Source Type": parse.nullable(parse.as_data_source_type), - "Data Source/Value": parse.nullable(parse.identity), - } - result = [] - # Below are only the column in which we're interested: - columns = [ - 'Name', - 'Type', - 'Optional', - 'Data Source Type', - 'Data Source/Value', - ] - assert set(columns) == set(parser.keys()) - with open(path, 'r') as f: - reader = csv.DictReader(f) - for row in reader: - try: - parsed = parse.apply_parser(parser, row) - result.append(dict.take(columns, parsed)) - except Exception as e: - pretty_print(row) - raise Exception('Failed parsing the following row: {}'.format( - ','.join(row.values()))) - return - - return result - - -def serialize_id_value(xs): - return string.indent('\n'.join([ - 'id: {}'.format(serialize.literal(xs['id'])), - 'value: {}'.format(serialize.literal(xs['value'])), - ])) - - -# serialize_parent_routing_frd :: RowAsDict -> [String] -def serialize_parent_routing_frd(row): - # All parent_routing_frds should be set as Hard-Code - assert row['Data Source Type'] == 'Hard-Code' - - frds = { - 'Consult Type': '^88149', - 'neoenum.program': '^87379', - 'form.country': '^16296', - 'Form.ad_language': "^3906" - } - name, value = row['Name'], parse.as_union_type(row['Data Source/Value']) - - result = [] - for x in value: - header = 'parent_lookup_frds {' - fields = serialize_id_value({'id': frds[name], 'value': x}) - footer = '}' - result.append('\n'.join([header, fields, footer])) - - return result - - -actual = serialize_parent_routing_frd({ - 'Name': - 'neoenum.program', - 'Data Source Type': - 'Hard-Code', - 'Data Source/Value': - '"olympus" or "olympus_plus"', -}) -expected = [ - """parent_lookup_frds { - id: "^87379" - value: "olympus" -}""", - """parent_lookup_frds { - id: "^87379" - value: "olympus_plus" -}""", -] -simple_assert(actual, expected, name='serialize_parent_routing_frd') - -actual = serialize_parent_routing_frd({ - 'Name': - 'Consult Type', - 'Type': - 'Parent Routing FRD', - 'AIV': - False, - 'Optional': - False, - 'Data Source Type': - 'Hard-Code', - 'Data Source/Value': - 'ads_accountappeals_autoconsult' -}) -expected = [ - """parent_lookup_frds { - id: "^88149" - value: "ads_accountappeals_autoconsult" -}""" -] -simple_assert(actual, expected, name='serialize_parent_routing_frd') - - -def serialize_return_routing_frd(row): - header = 'parent_return_routing_frds {' - fields = serialize_id_value({ - 'id': row['Name'], - 'value': row['Data Source/Value'], - }) - footer = '}' - return '\n'.join([header, fields, footer]) - - -def serialize_consult_routing_frd(row): - header = 'consult_routing_frds {' - fields = serialize_id_value({ - 'id': row['Name'], - 'value': row['Data Source/Value'], - }) - footer = '}' - return '\n'.join([header, fields, footer]) - - -# TODO: Reconcile this definition with serialize.input. -# serialize_inputs :: RowAsDict -> [String] -def serialize_input(row): - value_type = row['Data Source Type'] - name, value = string.trim_prefix('IDENTIFIER_', - row['Name']), row['Data Source/Value'] - - if ' or ' in value and value_type != 'Hard-Code': - log.warn('Found a union type in a non-"Hard-Code" row: {}'.format(row)) - - # TODO: We need to resolve row['Name'] into "^<id-number>". But only - # Sometimes... so... when is that sometimes? - if value_type == 'Hard-Code': - return serialize.input( - input_type='CONSTANT', - fields={ - 'consult_frd_id': name, - 'is_optional': row['Optional'], - # TODO: Call resolution function. - 'constant_value': input_constant.to_rule_id(value), - }) - elif value_type == 'Atlas': - # We need to remove the trailing parens if they exist. See the CSVs for more - # context. - value = regex.remove(r'\s\([\w\s]+\)$', value) - return serialize.input(input_type='SIGNAL', - fields={ - 'consult_frd_id': name, - 'is_optional': row['Optional'], - }) - elif value_type == 'Form': - # TODO: Prefer a generic serialize.dictionary - # We need to remove the trailing parens if they exist. See the CSVs for more - # context. - value = regex.remove(r'\s\([\w\s]+\)$', value) - return serialize.input(input_type='PARENT_FRD', - fields={ - 'consult_frd_id': - name, - 'is_optional': - row['Optional'], - 'parent_frd_id': - scrape.attribute_id_for( - value, error_when_absent=False), - }) - else: - raise Exception("This should not have occurred.") - - -# csv_to_proto :: Path -> [Protobuf] -def csv_to_proto(path): - """Maps the CSV located at `path` into a textproto that Auto Consult will consume.""" - # ORGANIZATION, which is currently a 'Consult Routing FRD' should become a - # 'Consult Parameter' as "neo_organization". - consult_routing_frds_blacklist = {'ORGANIZATION'} - index = { - 'Parent Routing FRD': [], - 'Consult Parameter': [], - 'Return Routing FRD': [], - 'Consult Routing FRD': [], - 'Input': [] - } - - # Index each row according to its "Type" column. - for row in parse_csv(path): - name, rtype, dst = row['Name'], row['Type'], row['Data Source Type'] - # Here we need to mutate the spreadsheet because the curators encoded a - # 'Consult Parameter', "ORGANIZATION", as a 'Consult Routing FRD'. - if name == 'ORGANIZATION' and rtype == 'Consult Routing FRD': - row['Type'] = 'Consult Parameter' - index['Consult Parameter'].append(row) - continue - if dst is None: - log.warn('Column "Data Source Type" is None. Skipping this row.') - continue - if dst == 'N/A': - continue - index[row['Type']].append(row) - - return serialize_index(index) - - -def serialize_consult_parameters(xs): - result = [] - transforms = { - 'Taxonomy ID': 'taxonomy_id', - 'View ID': 'view_id', - 'Timeout': 'max_wait_time_for_consult_secs', - 'Re-Route if Customer Responds': 'reroute_on_customer_interaction', - 'ORGANIZATION': 'neo_organization' - } - parsers = { - 'Taxonomy ID': - parse.identity, - 'View ID': - parse.identity, - 'Timeout': - lambda x: parse.as_hours(x) * 60 * 60, - 'Re-Route if Customer Responds': - parse.as_mapping({ - 'TRUE': True, - 'FALSE': False - }), - 'ORGANIZATION': - parse.identity - } - for row in xs: - name = row['Name'] - parser = parsers[name] - key, value = transforms[name], parser(row['Data Source/Value']) - result.append(' {}: {}'.format(key, serialize.literal(value))) - - return '\n'.join(result) - - -def serialize_index(index): - header = 'consult_settings {' - - consult_parameters = serialize_consult_parameters( - index['Consult Parameter']) - - product_xs = [] - parent_lookup_frds = [] - for row in index['Parent Routing FRD']: - product_xs.append(serialize_parent_routing_frd(row)) - for frds in product(*product_xs): - parent_lookup_frds.append('\n'.join(frds)) - - # TODO: Cover with tests. - parent_return_routing_frds = string.indent('\n'.join([ - serialize_return_routing_frd(row) - for row in index['Return Routing FRD'] - ])) - - # TODO: Cover with tests. - consult_routing_frds = string.indent('\n'.join([ - serialize_consult_routing_frd(row) - for row in index['Consult Routing FRD'] - ])) - - inputs = string.indent('\n'.join( - [serialize_input(row) for row in index['Input']])) - - footer = '}' - - result = [] - for parent_frd in parent_lookup_frds: - result.append('\n'.join([ - header, consult_parameters, - string.indent(parent_frd), parent_return_routing_frds, - consult_routing_frds, inputs, footer - ])) - - return '\n'.join(result) - - -csv_directory = f.ensure_absolute("~/auto-consult-csv") -# TODO: Add missing files. -csvs = [ - 'Non-Sensitive Ads Review (Olympus).csv', - 'Ads Review (Olympus).csv', - 'Ad Review (Non-Olympus).csv', - 'Review Account Under Review (Olympus).csv', - 'Accounts Review Requests (Non-Olympus).csv', - 'Review Suspended Account (Olympus).csv', - 'Review Suspended Account (Non-Olympus).csv', - 'Suspended Long Form (Olympus).csv', - 'Suspended Long Form (Non-Olympus).csv', - 'Copyright (Olympus).csv', - 'Copyright (Non-Olympus).csv', - 'EU Election Certification (Olympus).csv', - 'EU Election Certification #2 (Olympus).csv', - 'EU Election Certification (Non-Olympus).csv', - 'EU Election Certification #2 (Non-Olympus).csv', - 'US Election Certification (Olympus).csv', - 'US Election Certification (Non-Olympus).csv', - 'IN Election Certification (Olympus).csv', - 'IN Election Certification (Non-Olympus).csv', - 'NY Election Certification (Olympus).csv', - 'NY Election Certification (Non-Olympus).csv', - 'Ticket Seller Certification (Olympus).csv', - 'Ticket Seller Certification (Non-Olympus).csv', - 'Pharma Certification EMEA (Olympus).csv', - 'Pharma Certification EMEA (Non-Olympus).csv', - 'CSFP Certification (Olympus).csv', - 'CSFP Certification (Non-Olympus).csv', - 'Social Casino Games Certification (Olympus).csv', - 'Social Casino Games Certification (NonOlympus).csv', - 'Gambling Certification (Olympus).csv', - 'Gambling Certification (Non-Olympus).csv', - 'Addiction Services Certification (Olympus).csv', - 'Addiction Services Certification (Non-Olympus).csv', - 'HTML5 Application (Olympus).csv', - 'HTML5 Application (Non-Olympus).csv', - # TODO: Support this once Jason unblocks. - # 'Account Take Over (Olympus).csv', - # TODO: Support this once Jason unblocks. - # 'Account Take Over (Non-Olympus).csv', - 'Free Desktop Software Policy (Olympus).csv', - 'Free Desktop Software Policy (Non-Olympus).csv', - 'Untrustworthy Promotions (Olympus).csv', - 'Untrustworthy Promotions (Non-Olympus).csv', -] - -# TODO: Dump these CSVs into SQL to run basic queries on the " or " count, etc. -# Only 'Hard-Code' fields seem to have " or "s in them; SQL can help me verify -# this claim. - -for x in csvs: - print('# File: "{}"'.format(f.strip_extension(x))) - print(csv_to_proto(f.join(csv_directory, x))) - -################################################################################ -# Tests -################################################################################ -if enable_tests: - tests = [ - # 'EU Election Certification (Olympus).csv', - 'EU Election Certification (Non-Olympus).csv', - # 'Non-Sensitive Ads Review (Olympus).csv', - ] - for csv_file in tests: - textproto_file = f.join('expected', - f.change_extension('.textproto', csv_file)) - actual = csv_to_proto( - f.ensure_absolute(f.join(csv_directory, csv_file))) - expected = open(textproto_file, 'r').read() - simple_assert(actual, expected, name='csv_to_proto') diff --git a/universe/ac_types/attributes.pb b/universe/ac_types/attributes.pb deleted file mode 100644 index 6b893647c7ba..000000000000 --- a/universe/ac_types/attributes.pb +++ /dev/null @@ -1,1014 +0,0 @@ -configs { - # System Attribute - Category - id: "^^1" - type: STRING - access_type: READ_WRITE -} -configs { - # System Attribute - Product - id: "^^11" - type: STRING - access_type: READ -} -configs { - # System Attribute - Customer Email - id: "^^3" - type: STRING - access_type: READ -} -configs { - # System Attribute - Adwords Customer ID - id: "^^30" - type: STRING - access_type: READ -} -configs { - # System Attribute - Customer Gaia ID - id: "^^4" - type: INT - access_type: READ -} -configs { - # System Attribute - Customer Name - id: "^^5" - type: STRING - access_type: READ -} -configs { - # System Attribute - Locale - id: "^^9" - type: STRING - access_type: READ -} -configs { - # System Attribute - Case Source - id: "^1006" - type: STRING - access_type: READ -} -configs { - # AR.Claim.KnowledgeTestClaimId - id: "^106464" - type: STRING - access_type: READ -} -configs { - # AR.Claim.IssueType - id: "^106466" - type: ENUM - access_type: READ -} -configs { - # AR.Claim.StrongAuthPhone - id: "^106474" - type: STRING - access_type: READ -} -configs { - # AR.Claim.IsStopMessageReceived - id: "^106482" - type: BOOL - access_type: READ -} -configs { - # Atlas.CustomerId - id: "^1421" - type: STRING - access_type: READ -} -configs { - # Form.form-id - id: "^4297" - type: STRING - access_type: READ -} -configs { - # Form.Ar_descr_textbox - id: "^6664" - type: STRING - access_type: READ -} -configs { - # AR.ART.LastDecisionRecommended - id: "^106918" - type: ENUM - access_type: WRITE -} -configs { - # AR.ART.LastDecisionTaken - id: "^106919" - type: ENUM - access_type: WRITE -} -configs { - # AR.ART.LastDecisionTime - id: "^106920" - type: STRING - access_type: WRITE -} -configs { - # AR.ART.LastDecisionType - id: "^106921" - type: ENUM - access_type: WRITE -} -configs { - # System Attribute - Resolution ID - id: "^22020" - type: STRING - access_type: WRITE -} -configs { - # b/134163005 - frd.quality_pre_check_state.core - id: "^83347" - type: STRING - access_type: READ_WRITE -} -configs { - # b/134168536 - PRIORITY - id: "^^10" - type: INT - access_type: READ -} -configs { - # b/134169885 - STO_InternalCategory - id: "^3618" - type: STRING - access_type: READ_WRITE -} -configs { - # b/134408264 - neo.notification_requested - id: "^84074" - type: STRING - access_type: READ_WRITE -} -configs { - # b/135613797 - Form.media_plan_ID - id: "^75926" - type: STRING - access_type: READ -} -configs { - # b/135613797 - Form.help_needed - id: "^80735" - type: STRING - access_type: READ -} -configs { - # b/135614853 - sales_task.company_id - id: "^14773" - type: INT - access_type: READ -} -configs { - # b/135614853 - sales_task.TeamName - id: "^16367" - type: STRING - access_type: READ -} -configs { - # b/135614853 - sales_task.VerticalName - id: "^16368" - type: STRING - access_type: READ -} -configs { - # b/135614853 - sales_task.RegionName - id: "^16369" - type: STRING - access_type: READ -} -configs { - # b/135614853 - sales_task.Sector - id: "^16372" - type: STRING - access_type: READ -} -configs { - # b/135614853 - sales_task.SubSector - id: "^16373" - type: STRING - access_type: READ -} -configs { - # b/135614853 - sales_task.parent_company_id - id: "^25555" - type: STRING - access_type: READ -} -configs { - # b/135614853 - sales_task.service_channel - id: "^25557" - type: STRING - access_type: READ -} -configs { - # b/135614853 - sales_task.company_name - id: "^26743" - type: STRING - access_type: READ -} -configs { - # b/135614853 - sales_task.global_parent_company_id - id: "^29339" - type: STRING - access_type: READ -} -configs { - # b/135614853 - sales_task.global_parent_company_name - id: "^29340" - type: STRING - access_type: READ -} -configs { - # b/135614853 - sales_task.parent_company_name - id: "^29341" - type: STRING - access_type: READ -} -configs { - # b/135614853 - CaseCreator.Email - id: "^5709" - type: STRING - access_type: READ -} -configs { - # b/135614853 - neo.product - id: "^68613" - type: STRING - access_type: READ -} -configs { - # b/135614853 - neo.request_type - id: "^68616" - type: STRING - access_type: READ -} -configs { - # b/135614853 - neo.workdriver - id: "^68617" - type: STRING - access_type: READ -} -configs { - # b/135614853 - neo.campaign_type - id: "^68621" - type: STRING - access_type: READ -} -configs { - # b/135614853 - neo.market - id: "^69794" - type: STRING - access_type: READ -} -configs { - # b/135614853 - neo.interaction_type - id: "^69795" - type: STRING - access_type: READ -} -configs { - # b/135614853 - sales_task.chutney_key - id: "^70302" - type: STRING - access_type: READ -} -configs { - # b/135614853 - frd.case_source.core - id: "^76697" - type: STRING - access_type: READ -} -configs { - # b/135614853 - frd.google_ads_internal_customer_id.target - id: "^77629" - type: INT - access_type: READ -} -configs { - # b/135614853 - frd.google_ads_internal_customer_id.target_candidate - id: "^77634" - type: INT - access_type: READ -} -configs { - # b/135614853 - neo.Sales_Region - id: "^81664" - type: STRING - access_type: READ -} -configs { - # b/135614853 - neo.source_mechanism - id: "^82204" - type: STRING - access_type: READ -} -configs { - # b/135614853 - neo.vertical - id: "^82589" - type: STRING - access_type: READ -} -configs { - # b/135943348 - IS_CONSULT - id: "^1224" - type: BOOL - access_type: READ -} -configs { - # b/135943691 - Form.ic_sto_priority - id: "^6078" - type: STRING - access_type: READ -} -configs { - # b/135943174 - neo.program - id: "^69798" - type: STRING - access_type: READ -} -configs { - # b/135942978 - Form.what_is_your_question_about - id: "^14511" - type: STRING - access_type: READ -} -configs { - # b/135942692 - sales_task.gt_priority - id: "^25484" - type: STRING - access_type: READ -} -configs { - # b/138591197 - Form.pii_status - id: "^30810" - type: STRING - access_type: READ -} -configs { - # b/138591197 - Form.pii_status - STAGING ATTRIBUTE - id: "^122997" - type: STRING - access_type: READ -} -configs { - # b/138590939 - Form.pii_AWID - id: "^30811" - type: STRING - access_type: READ -} -configs { - # b/138590939 - Form.pii_AWID - STAGING ATTRIBUTE - id: "^122998" - type: STRING - access_type: READ -} -configs { - # b/138590649 - Form.customerId - id: "^1658" - type: STRING - access_type: READ -} -configs { - # b/138592092 - Form.form - id: "^3664" - type: STRING - access_type: READ -} -configs { - # b/138592092 - Form.form - STAGING ATTRIBUTE - id: "^113826" - type: STRING - access_type: READ -} -configs { - # b/138591447 - Form.pubid - id: "^3693" - type: STRING - access_type: READ -} -configs { - # b/138591447 - Form.pubid - STAGING ATTRIBUTE - id: "^102721" - type: STRING - access_type: READ -} -configs { - # b/138590817 - Form.status - id: "^7502" - type: STRING - access_type: READ -} -configs { - # b/138590817 - Form.status - STAGING ATTRIBUTE - id: "^104111" - type: STRING - access_type: READ -} -configs { - # b/138811198 - sales_task.Country - id: "^16371" - type: STRING - access_type: READ -} -configs { - # b/138811198 - sales_task.country_code - id: "^25556" - type: STRING - access_type: READ -} -configs { - # b/138811198 - sales_task.client_business_objective - id: "^85372" - type: STRING - access_type: READ -} -configs { - # b/138811198 - sales_task.timeline_consideration - id: "^85375" - type: STRING - access_type: READ -} -configs { - # b/138843621 - Form.bse_priority_level - id: "^71223" - type: STRING - access_type: READ -} -configs { - # b/139361297 - Form.pub_id - id: "^4302" - type: STRING - access_type: READ -} -configs { - # b/139361297 - Form.admob_pubid - id: "^8472" - type: STRING - access_type: READ -} -configs { - # b/139361297 - Form.upload_document_id - id: "^7067" - type: STRING - access_type: READ -} -configs { - # b/139761352 - sales_task.assigned_to - id: "^73218" - type: STRING - access_type: READ -} -configs { - # b/140811258 - neo.source_context - id: "^83722" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.account_assigned_to_a_PTL - id: "^84587" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.account_id - id: "^2259" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.Additional_Advertiser_ID_s - id: "^84575" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.additional_comments - id: "^3501" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.advertiser_name - id: "^4171" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.agency_id - id: "^76244" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.Authorized_Buyers_customer_ID - id: "^87627" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.company_id - id: "^3416" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.company_name - id: "^3239" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.Country_of_Support - id: "^84581" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.Customer_Contact_Email - id: "^84577" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.customer_contact_name - id: "^7553" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.Greentea_ID - id: "^86872" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.impact - id: "^68442" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.impact_type - id: "^16645" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.Link_Partner_s - id: "^84589" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.network_id - id: "^2939" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.Notification_Email - id: "^84582" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.partner_agency_name - id: "^86962" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.partner_id - id: "^2342" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.Primary_Advertiser_ID_1 - id: "^86874" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.Primary_Advertiser_ID - id: "^84591" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.Primary_Product - id: "^84588" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.Request_Type - id: "^4833" - type: STRING - access_type: READ -} -configs { - # b/141865219 - Form.Request_Sub_Type - id: "^84831" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.Rquest_Sub_Type - id: "^84593" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.sector - id: "^18760" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.sub_sector - id: "^87768" - type: STRING - access_type: READ -} -configs { - # b/141027066 - Form.Work_doesnt_affect_Advertiser - id: "^84565" - type: STRING - access_type: READ -} -configs { - # b/142882516 - sales_task.support_need - id: "^60520" - type: ENUM - access_type: READ -} -configs { - # b/142882516 - sales_task.campaign_name - id: "^25128" - type: STRING - access_type: READ -} -configs { - # b/142882516 - sales_task.net_campaign_budget - id: "^25118" - type: STRING - access_type: READ -} -configs { - # b/142882516 - sales_task.currency - id: "^25115" - type: STRING - access_type: READ -} -configs { - # b/142882516 - sales_task.advertiser_market - id: "^81059" - type: STRING - access_type: READ -} -configs { - # b/142882516 - sales_task.advertiser_market_cs - id: "^81091" - type: STRING - access_type: READ -} -configs { - # b/142882516 - sales_task.country_cs - id: "^81090" - type: STRING - access_type: READ -} -configs { - # b/142882516 - sales_task.campaign_start_date - id: "^25108" - type: STRING - access_type: READ -} -configs { - # b/142882516 - sales_task.campaign_end_date - id: "^25114" - type: STRING - access_type: READ -} -configs { - # b/142882516 - sales_task.potential_date - id: "^80985" - type: STRING - access_type: READ -} -configs { - # b/142882516 - sales_task.date_flexible - id: "^80991" - type: STRING - access_type: READ -} -configs { - # b/142882516 - sales_task.agency - id: "^25116" - type: STRING - access_type: READ -} -configs { - # b/142882516 - sales_task.sales_poc - id: "^61764" - type: STRING - access_type: READ -} -configs { - # b/142882516 - sales_task.external_poc - id: "^62583" - type: STRING - access_type: READ -} -configs { - # b/142882516 - sales_task.dvip_status - id: "^80988" - type: STRING - access_type: READ -} -configs { - # b/142882516 - sales_task.campaign_supported - id: "^81060" - type: STRING - access_type: READ -} -configs { - # b/142882516 - sales_task.ad_platform - id: "^80983" - type: STRING - access_type: READ -} -configs { - # b/142882516 - sales_task.video_format - id: "^80992" - type: STRING - access_type: READ -} -configs { - # b/142882516 - sales_task.launched_before - id: "^80959" - type: STRING - access_type: READ -} -configs { - # b/142882516 - sales_task.request_details - id: "^25126" - type: STRING - access_type: READ -} -configs { - # b/142882516 - neo.component - id: "^68623" - type: STRING - access_type: READ -} -configs { - # b/142882516 - neoenum.gps_project_type - id: "^88941" - type: STRING - access_type: READ -} -configs { - # b/143390406 - neoenum.youtube_program_pitched - id: "^88894" - type: STRING - access_type: READ_WRITE -} -configs { - # b/143892899 - neo.organization - id: "^69793" - type: STRING - access_type: READ -} -configs { - # b/145022355 - LR_isFlagged - id: "^6736" - type: BOOL - access_type: READ -} -configs { - # b/145022355 - legal_AbuseCategory - id: "^3614" - type: ENUM - access_type: READ -} -configs { - # b/145022355 - legal_HiddenProduct - id: "^3615" - type: ENUM - access_type: READ -} -configs { - # b/145022355 - CountryIsoAlpha2 - id: "^3497" - type: ENUM - access_type: READ -} -configs { - # b/145022355 - legal_ChillingId - id: "^3616" - type: STRING - access_type: READ -} -configs { - # b/145022355 - LegalRemovals_SESTA - id: "^71537" - type: BOOL - access_type: READ -} -configs { - # b/145707965 - sales_task.accounts_field2 - id: "^80051" - type: STRING - access_type: READ -} -configs { - # b/145707965 - sales_task.cid_rollup - id: "^80052" - type: STRING - access_type: READ -} -configs { - # b/145707965 - sales_task.proposed_company_id - id: "^62779" - type: STRING - access_type: READ -} -configs { - # b/146005429 - Form.geolocation - id: "^3328" - type: STRING - access_type: READ -} -configs { - # b/146066105 - Form.url_box3 - id: "^5653" - type: STRING - access_type: READ -} -configs { - # b/146066105 - Form.full_name - id: "^2981" - type: STRING - access_type: READ -} -configs { - # b/146066105 - Form.signature - id: "^3483" - type: STRING - access_type: READ -} -configs { - # b/146060287 - Form.publisher_code - id: "^86622" - type: STRING - access_type: READ -} -configs { - # b/146445306 - neoenum.consult_type - id: "^88149" - type: STRING - access_type: READ -} -configs { - # b/146445306 - neoenum.program - id: "^87379" - type: STRING - access_type: READ -} -configs { - # b/146445306 - Form.ad_language - id: "^3906" - type: STRING - access_type: READ -} -configs { - # b/146445306 - Form.summary_of_issue - id: "^5305" - type: STRING - access_type: READ -} -configs { - # b/146445306 - Atlas.AbuseTagIds - id: "^2356" - type: STRING - access_type: READ -} -configs { - # b/146445306 - Form.website_req - id: "^1677" - type: STRING - access_type: READ -} -configs { - # b/146445306 - Form.who_pays - id: "^14657" - type: STRING - access_type: READ -} -configs { - # b/146445306 - Form.sample_keywords - id: "^1881" - type: STRING - access_type: READ -} -configs { - # b/146445306 - Form.billing_address_street - id: "^1880" - type: STRING - access_type: READ -} -configs { - # b/146445306 - Form.billing_address_town - id: "^1879" - type: STRING - access_type: READ -} -configs { - # b/146445306 - Form.billing_address_zip - id: "^1885" - type: STRING - access_type: READ -} -configs { - # b/146445306 - Form.billing_country_req - id: "^1886" - type: STRING - access_type: READ -} -configs { - # b/146445306 - Form.business_desc - id: "^14660" - type: STRING - access_type: READ -} -configs { - # b/146445306 - Form.owner_or_emp - id: "^14661" - type: STRING - access_type: READ -} -configs { - # b/146445306 - Form.payment_option - id: "^1882" - type: STRING - access_type: READ -} -configs { - # b/146445306 - ChatForm.phone_number - id: "^30248" - type: STRING - access_type: READ -} -configs { - # b/146445306 - pool - id: "^^35" - type: STRING - access_type: READ -} -configs { - # b/146649910 - neoenum.product - id: "^87422" - type: STRING - access_type: READ -} -configs { - # b/146347546 - sales_task.requested_quarter - id: "^77809" - type: STRING - access_type: READ -} -configs { - # b/146347546 - sales_task.proposed_company_name - id: "^62778" - type: STRING - access_type: READ -} -configs { - # b/146347546 - sales_task.company_name_pdc_copy - id: "^80083" - type: STRING - access_type: READ -} -configs { - # b/146347546 - sales_task.company_currently_exists - id: "^75285" - type: STRING - access_type: READ -} -configs { - # b/146347546 - sales_task.parent_or_division - id: "^76645" - type: STRING - access_type: READ -} -configs { - # b/146347546 - sales_task.proposed_company_website - id: "^76644" - type: STRING - access_type: READ -} \ No newline at end of file diff --git a/universe/ac_types/dict.py b/universe/ac_types/dict.py deleted file mode 100644 index 9975ec8a970f..000000000000 --- a/universe/ac_types/dict.py +++ /dev/null @@ -1,10 +0,0 @@ -# Naming options for this module: -# - map (like Elixir and standard.el): Overwrites python's built-in `map` function. -# - dict: Overwrites python's built-in `dict` function. - - -def take(ks, xs): - result = {} - for k in ks: - result[k] = xs[k] - return result diff --git a/universe/ac_types/example.textproto b/universe/ac_types/example.textproto deleted file mode 100644 index 987c45f78f7e..000000000000 --- a/universe/ac_types/example.textproto +++ /dev/null @@ -1,523 +0,0 @@ -# Please, see the link below for the definition of the messages in this file. -# https://cs.corp.google.com/piper///depot/google3/google/internal/alkali/applications/casesconsultservice/v1/consult.proto - -# Instances of ConsultMetadata message. - -## The following ConsultMetadata instance is just an example. -consult_settings { - taxonomy_id: "9126664" # Ads Taxonomy: http://composer/9126664 - view_id: "Routing" - neo_organization: "gcc" - max_wait_time_for_consult_secs: 3600 # 1 hr - reroute_on_customer_interaction: false - parent_lookup_frds { - # Instances of Attribute message. - id: "^^11" # Attribute name: PRODUCT. - value: "ac-demo-value1" - } - parent_lookup_frds { - id: "^^1" # Attribute name: CATEGORY. - value: "ac-demo-value2" - } - parent_return_routing_frds { - # Instances of Attribute message. - id: "^123" # Attribute name: XYZ. - value: "sample 1" - } - consult_routing_frds { - # Instances of Attribute message. - id: "^987" # Attribute name: Demo. - value: "sample 2" - } - inputs { - # Instance of ConsultInput - type: CONSTANT - consult_frd_id: "^0123" - is_optional: true - constant_value: "This is an input" - } - inputs { - type: SIGNAL - consult_frd_id: "^9876" - is_optional: false - signal_type: CID - } -} - -# Note the following test case must be modeled with a LACK of configuration -# * AC-004: https://docs.google.com/spreadsheets/d/1yec_SVbkGL3vHegNkqFweF-Ea8YaFczeZYuhXChavJM/edit#gid=505426631&range=5:5 -# As such, it's imperative that all "autoconsult_test" fixtures also match a language -# This test will be performed by specifying a language that's not covered in this configuration - -# General Success Case - consults to T&S robot test pool -# Supports Test Cases: -# * AC-001: https://docs.google.com/spreadsheets/d/1yec_SVbkGL3vHegNkqFweF-Ea8YaFczeZYuhXChavJM/edit#gid=505426631&range=2:2 -# * AC-003: https://docs.google.com/spreadsheets/d/1yec_SVbkGL3vHegNkqFweF-Ea8YaFczeZYuhXChavJM/edit#gid=505426631&range=4:4 -consult_settings { - taxonomy_id: "9249441" # T&S Taxonomy: http://composer/9249441 - view_id: "Routing" - neo_organization: "trust_safety" - max_wait_time_for_consult_secs: 3600 # 1 hr - reroute_on_customer_interaction: false - parent_lookup_frds { - id: "^88149" # Attribute name: neoenum.consult_type https://cases.corp.google.com/Client.html#A~%5E88149 - value: "autoconsult_test" - } - parent_lookup_frds { - id: "^3906" # Form.ad_language https://cases.corp.google.com/Client.html#A~%5E3906 - value: "af" # Afrikaans - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" # FRD Name: Robot Workflow State. - value: "automation_escalate" - } - consult_routing_frds { - id: "VERTICAL" # FRD Name: Product Group - value: "engineering" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: CID - } - inputs { - type: PARENT_FRD - consult_frd_id: "ISSUE_DESCRIPTION" - is_optional: true - parent_frd_id: "^5305" # Form.summary_of_issue https://cases.corp.google.com/Client.html#A~%5E5305 - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "unreviewed_ads_keywords_and_extensions" - } - inputs { - type: CONSTANT - consult_frd_id: "FEATURE" - is_optional: false - constant_value: "regular_review" - } - inputs { - type: PARENT_FRD - consult_frd_id: "BUSINESS_LANGUAGE" - is_optional: true - parent_frd_id: "^3906" # Form.ad_language https://cases.corp.google.com/Client.html#A~%5E3906 - } - inputs { - type: CONSTANT - consult_frd_id: "COMPLEXITY" - is_optional: false - constant_value: "easy" - } -} - -# General success case - consults to TDA manual test pool -# Defines a non-optional input that will be Empty -# Supports Test Cases: -# * AC-002: https://docs.google.com/spreadsheets/d/1yec_SVbkGL3vHegNkqFweF-Ea8YaFczeZYuhXChavJM/edit#gid=505426631&range=3:3 -# * AC-008: https://docs.google.com/spreadsheets/d/1yec_SVbkGL3vHegNkqFweF-Ea8YaFczeZYuhXChavJM/edit#gid=505426631&range=9:9 -# * AC-015: https://docs.google.com/spreadsheets/d/1yec_SVbkGL3vHegNkqFweF-Ea8YaFczeZYuhXChavJM/edit#gid=505426631&range=16:16 -# * AC-016: https://docs.google.com/spreadsheets/d/1yec_SVbkGL3vHegNkqFweF-Ea8YaFczeZYuhXChavJM/edit#gid=505426631&range=17:17 -# * AC-017: https://docs.google.com/spreadsheets/d/1yec_SVbkGL3vHegNkqFweF-Ea8YaFczeZYuhXChavJM/edit#gid=505426631&range=18:18 -# * AC-018: https://docs.google.com/spreadsheets/d/1yec_SVbkGL3vHegNkqFweF-Ea8YaFczeZYuhXChavJM/edit#gid=505426631&range=19:19 -# * AC-019: https://docs.google.com/spreadsheets/d/1yec_SVbkGL3vHegNkqFweF-Ea8YaFczeZYuhXChavJM/edit#gid=505426631&range=20:20 -# * AC-020: https://docs.google.com/spreadsheets/d/1yec_SVbkGL3vHegNkqFweF-Ea8YaFczeZYuhXChavJM/edit#gid=505426631&range=21:21 -# * AC-021: https://docs.google.com/spreadsheets/d/1yec_SVbkGL3vHegNkqFweF-Ea8YaFczeZYuhXChavJM/edit#gid=505426631&range=22:22 -# * AC-022: https://docs.google.com/spreadsheets/d/1yec_SVbkGL3vHegNkqFweF-Ea8YaFczeZYuhXChavJM/edit#gid=505426631&range=23:23 -consult_settings { - taxonomy_id: "9126664" # Ads Taxonomy: http://composer/9126664 - view_id: "Routing" - neo_organization: "gcc" - max_wait_time_for_consult_secs: 3600 # 1 hr - reroute_on_customer_interaction: false - parent_lookup_frds { - id: "^88149" # Attribute name: neoenum.consult_type https://cases.corp.google.com/Client.html#A~%5E88149 - value: "autoconsult_test" - } - parent_lookup_frds { - id: "^3906" # Form.ad_language https://cases.corp.google.com/Client.html#A~%5E3906 - value: "da" # dansk - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" # FRD Name: Robot Workflow State. - value: "automation_escalate" - } - consult_routing_frds { - id: "CONSULT_TYPE" # FRD Name: Consult Type - value: "autoconsult_test" - } - consult_routing_frds { - id: "ROBOT_WORKFLOW_STATE" # FRD Name: Robot Workflow State. - value: "automation_escalate" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: CID - } - inputs { - type: PARENT_FRD - consult_frd_id: "ISSUE_DESCRIPTION" - is_optional: true - parent_frd_id: "^5305" # Form.summary_of_issue https://cases.corp.google.com/Client.html#A~%5E5305 - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "unreviewed_ads_keywords_and_extensions" - } -} - -# This tests a misconfigured signal type -# Supports Test Cases: -# * AC-005: https://docs.google.com/spreadsheets/d/1yec_SVbkGL3vHegNkqFweF-Ea8YaFczeZYuhXChavJM/edit#gid=505426631&range=6:6 -consult_settings { - taxonomy_id: "9126664" # Ads Taxonomy: http://composer/9126664 - view_id: "Routing" - neo_organization: "gcc" - max_wait_time_for_consult_secs: 3600 # 1 hr - reroute_on_customer_interaction: false - parent_lookup_frds { - id: "^88149" # Attribute name: neoenum.consult_type https://cases.corp.google.com/Client.html#A~%5E88149 - value: "autoconsult_test" - } - parent_lookup_frds { - id: "^3906" # Form.ad_language https://cases.corp.google.com/Client.html#A~%5E3906 - value: "en-AU" # English (Australia) - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" # FRD Name: Robot Workflow State. - value: "automation_escalate" - } - consult_routing_frds { - id: "CONSULT_TYPE" # FRD Name: Consult Type - value: "autoconsult_test" - } - consult_routing_frds { - id: "ROBOT_WORKFLOW_STATE" # FRD Name: Robot Workflow State. - value: "automation_escalate" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: UNKNOWN - } - inputs { - type: PARENT_FRD - consult_frd_id: "ISSUE_DESCRIPTION" - is_optional: true - parent_frd_id: "^5305" # Form.summary_of_issue https://cases.corp.google.com/Client.html#A~%5E5305 - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "unreviewed_ads_keywords_and_extensions" - } -} - -# Defines a non-optional input that will be missing -# Supports Test Cases: -# * AC-006: https://docs.google.com/spreadsheets/d/1yec_SVbkGL3vHegNkqFweF-Ea8YaFczeZYuhXChavJM/edit#gid=505426631&range=7:7 -consult_settings { - taxonomy_id: "9126664" # Ads Taxonomy: http://composer/9126664 - view_id: "Routing" - neo_organization: "gcc" - max_wait_time_for_consult_secs: 3600 # 1 hr - reroute_on_customer_interaction: false - parent_lookup_frds { - id: "^88149" # Attribute name: neoenum.consult_type https://cases.corp.google.com/Client.html#A~%5E88149 - value: "autoconsult_test" - } - parent_lookup_frds { - id: "^3906" # Form.ad_language https://cases.corp.google.com/Client.html#A~%5E3906 - value: "en-CA" # English (Canada) - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" # FRD Name: Robot Workflow State. - value: "automation_escalate" - } - consult_routing_frds { - id: "CONSULT_TYPE" # FRD Name: Consult Type - value: "autoconsult_test" - } - consult_routing_frds { - id: "ROBOT_WORKFLOW_STATE" # FRD Name: Robot Workflow State. - value: "automation_escalate" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: CID - } - inputs { - type: PARENT_FRD - consult_frd_id: "ISSUE_DESCRIPTION" - is_optional: false - parent_frd_id: "^999999" # Made-up attribute ID - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "unreviewed_ads_keywords_and_extensions" - } -} - -# Defines a non-optional input that will be empty -# Supports Test Cases: -# * AC-008: https://docs.google.com/spreadsheets/d/1yec_SVbkGL3vHegNkqFweF-Ea8YaFczeZYuhXChavJM/edit#gid=505426631&range=9:9 -consult_settings { - taxonomy_id: "9126664" # Ads Taxonomy: http://composer/9126664 - view_id: "Routing" - neo_organization: "gcc" - max_wait_time_for_consult_secs: 3600 # 1 hr - reroute_on_customer_interaction: false - parent_lookup_frds { - id: "^88149" # Attribute name: neoenum.consult_type https://cases.corp.google.com/Client.html#A~%5E88149 - value: "autoconsult_test" - } - parent_lookup_frds { - id: "^3906" # Form.ad_language https://cases.corp.google.com/Client.html#A~%5E3906 - value: "en-GB" # English (United Kingdom) - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" # FRD Name: Robot Workflow State. - value: "automation_escalate" - } - consult_routing_frds { - id: "CONSULT_TYPE" # FRD Name: Consult Type - value: "autoconsult_test" - } - consult_routing_frds { - id: "ROBOT_WORKFLOW_STATE" # FRD Name: Robot Workflow State. - value: "automation_escalate" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: CID - } - inputs { - type: PARENT_FRD - consult_frd_id: "ISSUE_DESCRIPTION" - is_optional: false # Not optional - parent_frd_id: "^5305" # Form.summary_of_issue https://cases.corp.google.com/Client.html#A~%5E5305 - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "unreviewed_ads_keywords_and_extensions" - } -} - -# Defines a non-optional input that will be missing -# Supports Test Cases: -# * AC-009: https://docs.google.com/spreadsheets/d/1yec_SVbkGL3vHegNkqFweF-Ea8YaFczeZYuhXChavJM/edit#gid=505426631&range=10:10 -consult_settings { - taxonomy_id: "9126664" # Ads Taxonomy: http://composer/9126664 - view_id: "Routing" - neo_organization: "gcc" - max_wait_time_for_consult_secs: 3600 # 1 hr - reroute_on_customer_interaction: false - parent_lookup_frds { - id: "^88149" # Attribute name: neoenum.consult_type https://cases.corp.google.com/Client.html#A~%5E88149 - value: "autoconsult_test" - } - parent_lookup_frds { - id: "^3906" # Form.ad_language https://cases.corp.google.com/Client.html#A~%5E3906 - value: "en" # English - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" # FRD Name: Robot Workflow State. - value: "automation_escalate" - } - consult_routing_frds { - id: "CONSULT_TYPE" # FRD Name: Consult Type - value: "autoconsult_test" - } - consult_routing_frds { - id: "ROBOT_WORKFLOW_STATE" # FRD Name: Robot Workflow State. - value: "automation_escalate" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: CID - } - inputs { - type: PARENT_FRD - consult_frd_id: "ISSUE_DESCRIPTION" - is_optional: false # Not optional - parent_frd_id: "^999999" # Made-up attribute ID - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "unreviewed_ads_keywords_and_extensions" - } -} - -# Defines multiple non-optional inputs that will not validate -# Supports Test Cases: -# * AC-011: https://docs.google.com/spreadsheets/d/1yec_SVbkGL3vHegNkqFweF-Ea8YaFczeZYuhXChavJM/edit#gid=505426631&range=12:12 -consult_settings { - taxonomy_id: "9126664" # Ads Taxonomy: http://composer/9126664 - view_id: "Routing" - neo_organization: "gcc" - max_wait_time_for_consult_secs: 3600 # 1 hr - reroute_on_customer_interaction: false - parent_lookup_frds { - id: "^88149" # Attribute name: neoenum.consult_type https://cases.corp.google.com/Client.html#A~%5E88149 - value: "autoconsult_test" - } - parent_lookup_frds { - id: "^3906" # Form.ad_language https://cases.corp.google.com/Client.html#A~%5E3906 - value: "en-IN" # English (India) - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" # FRD Name: Robot Workflow State. - value: "automation_escalate" - } - consult_routing_frds { - id: "CONSULT_TYPE" # FRD Name: Consult Type - value: "autoconsult_test" - } - consult_routing_frds { - id: "ROBOT_WORKFLOW_STATE" # FRD Name: Robot Workflow State. - value: "automation_escalate" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: CID - } - inputs { - type: PARENT_FRD - consult_frd_id: "ISSUE_DESCRIPTION" - is_optional: false # Not optional - parent_frd_id: "^999999" # Made-up attribute ID - } - inputs { - type: PARENT_FRD - consult_frd_id: "ISSUE_DESCRIPTION" - is_optional: false # Not optional - parent_frd_id: "^5305" # Form.summary_of_issue https://cases.corp.google.com/Client.html#A~%5E5305 - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "unreviewed_ads_keywords_and_extensions" - } -} - -# Long Timeout Fixture -# Re-Route On Customer Interaction set at this level -# Supports Test Cases: -# * AC-013: https://docs.google.com/spreadsheets/d/1yec_SVbkGL3vHegNkqFweF-Ea8YaFczeZYuhXChavJM/edit#gid=505426631&range=14:14 -consult_settings { - taxonomy_id: "9126664" # Ads Taxonomy: http://composer/9126664 - view_id: "Routing" - neo_organization: "gcc" - max_wait_time_for_consult_secs: 36000 # 10 hrs - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" # Attribute name: neoenum.consult_type https://cases.corp.google.com/Client.html#A~%5E88149 - value: "autoconsult_test" - } - parent_lookup_frds { - id: "^3906" # Form.ad_language https://cases.corp.google.com/Client.html#A~%5E3906 - value: "en-NZ" # English (New Zealand) - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" # FRD Name: Robot Workflow State. - value: "automation_escalate" - } - consult_routing_frds { - id: "CONSULT_TYPE" # FRD Name: Consult Type - value: "autoconsult_test" - } - consult_routing_frds { - id: "ROBOT_WORKFLOW_STATE" # FRD Name: Robot Workflow State. - value: "automation_escalate" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: CID - } - inputs { - type: PARENT_FRD - consult_frd_id: "ISSUE_DESCRIPTION" - is_optional: true - parent_frd_id: "^5305" # Form.summary_of_issue https://cases.corp.google.com/Client.html#A~%5E5305 - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "unreviewed_ads_keywords_and_extensions" - } -} - -# Zero Timeout Fixture -# Supports Test Cases: -# * AC-014: https://docs.google.com/spreadsheets/d/1yec_SVbkGL3vHegNkqFweF-Ea8YaFczeZYuhXChavJM/edit#gid=505426631&range=15:15 -consult_settings { - taxonomy_id: "9126664" # Ads Taxonomy: http://composer/9126664 - view_id: "Routing" - neo_organization: "gcc" - max_wait_time_for_consult_secs: 0 # 0 hrs - reroute_on_customer_interaction: false - parent_lookup_frds { - id: "^88149" # Attribute name: neoenum.consult_type https://cases.corp.google.com/Client.html#A~%5E88149 - value: "autoconsult_test" - } - parent_lookup_frds { - id: "^3906" # Form.ad_language https://cases.corp.google.com/Client.html#A~%5E3906 - value: "en-NZ" # English (New Zealand) - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" # FRD Name: Robot Workflow State. - value: "automation_escalate" - } - consult_routing_frds { - id: "CONSULT_TYPE" # FRD Name: Consult Type - value: "autoconsult_test" - } - consult_routing_frds { - id: "ROBOT_WORKFLOW_STATE" # FRD Name: Robot Workflow State. - value: "automation_escalate" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: CID - } - inputs { - type: PARENT_FRD - consult_frd_id: "ISSUE_DESCRIPTION" - is_optional: true - parent_frd_id: "^5305" # Form.summary_of_issue https://cases.corp.google.com/Client.html#A~%5E5305 - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "unreviewed_ads_keywords_and_extensions" - } -} \ No newline at end of file diff --git a/universe/ac_types/expected/EU Election Certification (Non-Olympus).textproto b/universe/ac_types/expected/EU Election Certification (Non-Olympus).textproto deleted file mode 100644 index 5ebfebb6783d..000000000000 --- a/universe/ac_types/expected/EU Election Certification (Non-Olympus).textproto +++ /dev/null @@ -1,255 +0,0 @@ -consult_settings { - taxonomy_id: "9249441" - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - neo_organization: "trust_safety" - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - value: "Germany" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: CID - } -} -consult_settings { - taxonomy_id: "9249441" - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - neo_organization: "trust_safety" - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - value: "Netherlands" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: CID - } -} -consult_settings { - taxonomy_id: "9249441" - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - neo_organization: "trust_safety" - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - value: "Spain" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: CID - } -} -consult_settings { - taxonomy_id: "9249441" - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - neo_organization: "trust_safety" - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - value: "Check Republic" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: CID - } -} -consult_settings { - taxonomy_id: "9249441" - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - neo_organization: "trust_safety" - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - value: "United Kingdom" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: CID - } -} diff --git a/universe/ac_types/expected/EU Election Certification (Olympus).textproto b/universe/ac_types/expected/EU Election Certification (Olympus).textproto deleted file mode 100644 index 8650de0d5e88..000000000000 --- a/universe/ac_types/expected/EU Election Certification (Olympus).textproto +++ /dev/null @@ -1,550 +0,0 @@ -consult_settings { - taxonomy_id: "9249441" - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - neo_organization: "trust_safety" - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_lookup_frds { - id: "^16296" - value: "Germany" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: CID - } -} -consult_settings { - taxonomy_id: "9249441" - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - neo_organization: "trust_safety" - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_lookup_frds { - id: "^16296" - value: "Netherlands" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: CID - } -} -consult_settings { - taxonomy_id: "9249441" - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - neo_organization: "trust_safety" - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_lookup_frds { - id: "^16296" - value: "Spain" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: CID - } -} -consult_settings { - taxonomy_id: "9249441" - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - neo_organization: "trust_safety" - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_lookup_frds { - id: "^16296" - value: "Check Republic" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: CID - } -} -consult_settings { - taxonomy_id: "9249441" - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - neo_organization: "trust_safety" - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_lookup_frds { - id: "^16296" - value: "United Kingdom" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: CID - } -} -consult_settings { - taxonomy_id: "9249441" - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - neo_organization: "trust_safety" - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_lookup_frds { - id: "^16296" - value: "Germany" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: CID - } -} -consult_settings { - taxonomy_id: "9249441" - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - neo_organization: "trust_safety" - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_lookup_frds { - id: "^16296" - value: "Netherlands" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: CID - } -} -consult_settings { - taxonomy_id: "9249441" - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - neo_organization: "trust_safety" - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_lookup_frds { - id: "^16296" - value: "Spain" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: CID - } -} -consult_settings { - taxonomy_id: "9249441" - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - neo_organization: "trust_safety" - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_lookup_frds { - id: "^16296" - value: "Check Republic" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: CID - } -} -consult_settings { - taxonomy_id: "9249441" - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - neo_organization: "trust_safety" - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_lookup_frds { - id: "^16296" - value: "United Kingdom" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: CID - } -} \ No newline at end of file diff --git a/universe/ac_types/expected/Non-Sensitive Ads Review (Olympus).textproto b/universe/ac_types/expected/Non-Sensitive Ads Review (Olympus).textproto deleted file mode 100644 index 5ff397946bec..000000000000 --- a/universe/ac_types/expected/Non-Sensitive Ads Review (Olympus).textproto +++ /dev/null @@ -1,126 +0,0 @@ -consult_settings { - taxonomy_id: "9249441" - view_id: "Routing - Ads_Adsreview" - max_wait_time_for_consult_secs: 43200 - reroute_on_customer_interaction: true - neo_organization: "trust_safety" - parent_lookup_frds { - id: "^88149" - value: "ad_review_request_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "ads_review" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: CID - } - inputs { - type: PARENT_FRD - consult_frd_id: "ISSUE_DESCRIPTION" - is_optional: false - parent_frd_id: "^2941" - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "unreviewed_ads_keywords_and_extensions" - } - inputs { - type: CONSTANT - consult_frd_id: "FEATURE" - is_optional: false - constant_value: "regular_review" - } - inputs { - type: PARENT_FRD - consult_frd_id: "BUSINESS_LANGUAGE" - is_optional: false - parent_frd_id: "^3906" - } - inputs { - type: CONSTANT - consult_frd_id: "INDENTIFIER_COMPLEXITY" - is_optional: false - constant_value: "easy" - } -} -consult_settings { - taxonomy_id: "9249441" - view_id: "Routing - Ads_Adsreview" - max_wait_time_for_consult_secs: 43200 - reroute_on_customer_interaction: true - neo_organization: "trust_safety" - parent_lookup_frds { - id: "^88149" - value: "ad_review_request_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "ads_review" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: CID - } - inputs { - type: PARENT_FRD - consult_frd_id: "ISSUE_DESCRIPTION" - is_optional: false - parent_frd_id: "^2941" - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "unreviewed_ads_keywords_and_extensions" - } - inputs { - type: CONSTANT - consult_frd_id: "FEATURE" - is_optional: false - constant_value: "regular_review" - } - inputs { - type: PARENT_FRD - consult_frd_id: "BUSINESS_LANGUAGE" - is_optional: false - parent_frd_id: "^3906" - } - inputs { - type: CONSTANT - consult_frd_id: "INDENTIFIER_COMPLEXITY" - is_optional: false - constant_value: "easy" - } -} \ No newline at end of file diff --git a/universe/ac_types/f.py b/universe/ac_types/f.py deleted file mode 100644 index 44dcf0d32bf7..000000000000 --- a/universe/ac_types/f.py +++ /dev/null @@ -1,46 +0,0 @@ -import os -import string -from test_utils import simple_assert - - -def join(*args): - return os.path.join(*args) - - -simple_assert(join("/", "tmp", "a.txt"), "/tmp/a.txt", name="join") - - -def ensure_absolute(path): - """Ensures `path` is an absolute path.""" - return os.path.abspath(os.path.expanduser(path)) - - -simple_assert(ensure_absolute("~/a.txt"), - "/usr/local/google/home/wpcarro/a.txt", - name="ensure_absolute") - - -def filename(path): - """Return just the filename of `path`.""" - return os.path.basename(path) - - -simple_assert(filename("~/a.txt"), "a.txt", name="filename") -simple_assert(filename("/path/to/file"), "file", name="filename") - - -def strip_extension(path): - """Remove file extension from path.""" - return os.path.splitext(path)[0] - - -simple_assert(strip_extension("~/a.txt"), "~/a", name="filename") -simple_assert(strip_extension("/path/to/file.txt"), - "/path/to/file", - name="strip_extension") - - -def change_extension(ext, path): - """Change `path`'s file extension to `ext`.""" - assert string.starts_with('.', ext) - return strip_extension(path) + ext diff --git a/universe/ac_types/fs.py b/universe/ac_types/fs.py deleted file mode 100644 index 68b34b64bffe..000000000000 --- a/universe/ac_types/fs.py +++ /dev/null @@ -1,9 +0,0 @@ -from glob import glob -import f - - -def ls(pattern): - """Return a list of files that match `pattern`. This is a DWIM function and - will handle relative paths, absolute paths, etc. It should behave - approximately similarly to GNU's ls.""" - return glob(f.ensure_absolute(pattern)) diff --git a/universe/ac_types/input_constant.py b/universe/ac_types/input_constant.py deleted file mode 100644 index 9b32a3b493be..000000000000 --- a/universe/ac_types/input_constant.py +++ /dev/null @@ -1,78 +0,0 @@ -from test_utils import simple_assert - - -def to_rule_id(x): - """Transform `x` to the casing expected in a rule ID.""" - return x.lower().replace(' ', - '_').replace('(', - '').replace(')', - '').replace('/', '_') - - -expected = { - 'Cloaking or Cloaking Suspect': 'cloaking_or_cloaking_suspect', - 'Phishing': 'phishing', - 'System Suspended Advertiser': 'system_suspended_advertiser', - 'Affiliate Spam': 'affiliate_spam', - 'Untrustworthy Behavior': 'untrustworthy_behavior', - 'Payment Fraud': 'payment_fraud', - 'Bad Debt': 'bad_debt', - 'Sleeper': 'sleeper', - 'Gaming': 'gaming', - 'Counterfeit': 'counterfeit', - 'Coupon Abuse': 'coupon_abuse', - 'Fraud chargeback': 'fraud_chargeback', - 'Friendly chargeback': 'friendly_chargeback', - 'Customer service chargeback': 'customer_service_chargeback', - 'Delinquency (wont pay)': 'delinquency_wont_pay', - 'Direct Debit Abuse/Suspect': 'direct_debit_abuse_suspect', - 'Delinquent Account Abuse': 'delinquent_account_abuse', - 'Billing Customer Shutdown': 'billing_customer_shutdown', - 'Violations Across Multiple Accounts(VAMA)': - 'violations_across_multiple_accountsvama', - 'Risk Mitigation Daily Spend Limit Raise': - 'risk_mitigation_daily_spend_limit_raise', - 'Review Account Under Review': 'review_account_under_review', - 'Runaway Spenders Daily Spend Limit': 'runaway_spenders_daily_spend_limit', - 'Double Serving': 'double_serving', - 'Gaining an Unfair Advantage': 'gaining_an_unfair_advantage', - 'Office of Foreign Assets Control (OFAC) Sanctions': - 'office_of_foreign_assets_control_ofac_sanctions', - 'Terms of service violation': 'terms_of_service_violation', - 'Spam': 'spam', - 'Sexually Explicit Content': 'sexually_explicit_content', - 'Illegal drugs (Dangerous Products)': 'illegal_drugs_dangerous_products', - 'Hate speech': 'hate_speech', - 'Harrassment': 'harrassment', - 'Malicious Or Unwanted Software': 'malicious_or_unwanted_software', - 'Online Gambling': 'online_gambling', - 'Social Casino Games': 'social_casino_games', - 'Online Pharmacy Certification Required': - 'online_pharmacy_certification_required', - 'Copyrights': 'copyrights', - 'Addiction Services': 'addiction_services', - 'Elections': 'elections', - 'Unwanted Software': 'unwanted_software', - 'Event Ticket Reseller': 'event_ticket_reseller', - 'Cryptocurrency': 'cryptocurrency', - 'Complex Speculative Financial Policy': - 'complex_speculative_financial_policy', - 'US Elections Ads (New York Only)': 'us_elections_ads_new_york_only', - 'Alcohol Information': 'alcohol_information', - 'Inappropriate Content': 'inappropriate_content', - 'Adult Content': 'adult_content', - 'final reason blogger suspension': 'final_reason_blogger_suspension', - 'final reason calendar suspension': 'final_reason_calendar_suspension', - 'final reason writely suspension': 'final_reason_writely_suspension', - 'final reason groups reloaded suspension': - 'final_reason_groups_reloaded_suspension', - 'final reason gplus suspension': 'final_reason_gplus_suspension', - 'Terrorist Content': 'terrorist_content', - 'Underage account': 'underage_account', - 'Terrorist Content': 'terrorist_content', - 'Elections': 'elections', - 'Policy System Suspension': 'policy_system_suspension', -} - -for x, y in expected.items(): - simple_assert(to_rule_id(x), y, 'to_rule_id') diff --git a/universe/ac_types/log.py b/universe/ac_types/log.py deleted file mode 100644 index 797e2f719942..000000000000 --- a/universe/ac_types/log.py +++ /dev/null @@ -1,9 +0,0 @@ -enable = False - - -def warn(x): - """Print `x` as a warning.""" - if enable: - print('[Warning]: {}'.format(x)) - else: - return None diff --git a/universe/ac_types/notes_with_jason.txt b/universe/ac_types/notes_with_jason.txt deleted file mode 100644 index 5c2972ee579f..000000000000 --- a/universe/ac_types/notes_with_jason.txt +++ /dev/null @@ -1,60 +0,0 @@ -# TODO: Handle Cartesian product for each "or" in row["Data Source/Value"] - -# Notes from Jason: -# Type -# - Require ID -# - Parent Routing FRD -# - Consult Input -# - Raw -# - everything else... -# -# Hard-Code: CONSTANT...constant_value -# -# Atlas.CustomerID == SIGNAL -# all else (!Hard-Code && !Atlas.CustomerID): Parent FRD - - -consult_settings { - # Consult Parameter - taxonomy_id: # (row['Name'] == 'Taxonomy ID') row['Data Source/Value'] - view_id: # (row['Name'] == 'View ID') row['Data Source/Value'] - neo_organization: # (row['Name'] == 'ORGANIZATION') row['Data Source/Value'] - max_wait_time_for_consult_secs: # (row['Name'] == 'Timeout') hours_to_seconds(as_hours(row['Data Source/Value'])) - reroute_on_customer_interaction: # (row['Name'] == 'Re-Route if Customer Responds') as_yes_no(row['Data Source/Value']) - - # Parent Routing FRD - rows - |> filter(row['Type'] == 'Parent Routing FRD') - |> map((row) => parent_lookup_frds { - id: ??? # as_id(row['Name']) - value: ??? row['Data Source/Value'] - }) - - # Consult Routing FRD - rows - |> filter(row['Type'] == 'Consult Routing FRD') - |> map((row) => consult_routing_frds { - id: row['Name'] - value: row['Data Source/Value'] - }) - - # Return Routing FRD - rows - |> filter(row['Type'] == 'Return Routing FRD') - |> map((row) => parent_return_routing_frds { - id: ??? - value: ??? - }) - - # Input (Note: There seem to be more than one variant of these) - rows - |> filter(row['Type'] == 'Input') - |> map((row) => inputs { - constant_value: ??? - consult_frd_id: ??? - is_optional: ??? - parent_frd_id: ??? - signal_type: ??? - type: ??? - }) -} diff --git a/universe/ac_types/output.textproto b/universe/ac_types/output.textproto deleted file mode 100644 index de2cce77ca71..000000000000 --- a/universe/ac_types/output.textproto +++ /dev/null @@ -1,4483 +0,0 @@ -# File: "Non-Sensitive Ads Review (Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_Adsreview" - max_wait_time_for_consult_secs: 43200 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ad_review_request_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "ads_review" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: "^1421" - } - inputs { - type: PARENT_FRD - consult_frd_id: "ISSUE_DESCRIPTION" - is_optional: false - parent_frd_id: "^2941" - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "unreviewed_ads_keywords_and_extensions" - } - inputs { - type: CONSTANT - consult_frd_id: "FEATURE" - is_optional: false - constant_value: "regular_review" - } - inputs { - type: PARENT_FRD - consult_frd_id: "BUSINESS_LANGUAGE" - is_optional: false - parent_frd_id: "^3906" - } - inputs { - type: CONSTANT - consult_frd_id: "INDENTIFIER_COMPLEXITY" - is_optional: false - constant_value: "easy" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_Adsreview" - max_wait_time_for_consult_secs: 43200 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ad_review_request_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "ads_review" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: "^1421" - } - inputs { - type: PARENT_FRD - consult_frd_id: "ISSUE_DESCRIPTION" - is_optional: false - parent_frd_id: "^2941" - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "unreviewed_ads_keywords_and_extensions" - } - inputs { - type: CONSTANT - consult_frd_id: "FEATURE" - is_optional: false - constant_value: "regular_review" - } - inputs { - type: PARENT_FRD - consult_frd_id: "BUSINESS_LANGUAGE" - is_optional: false - parent_frd_id: "^3906" - } - inputs { - type: CONSTANT - consult_frd_id: "INDENTIFIER_COMPLEXITY" - is_optional: false - constant_value: "easy" - } -} -# File: "Ads Review (Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_Adsreview" - max_wait_time_for_consult_secs: 43200 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ad_review_request_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "ads_review" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: "^1421" - } - inputs { - type: PARENT_FRD - consult_frd_id: "ISSUE_DESCRIPTION" - is_optional: false - parent_frd_id: "^5305" - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "unreviewed_ads_keywords_and_extensions" - } - inputs { - type: CONSTANT - consult_frd_id: "FEATURE" - is_optional: false - constant_value: "regular_review" - } - inputs { - type: PARENT_FRD - consult_frd_id: "BUSINESS_LANGUAGE" - is_optional: false - parent_frd_id: "^3906" - } - inputs { - type: CONSTANT - consult_frd_id: "INDENTIFIER_COMPLEXITY" - is_optional: false - constant_value: "easy" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_Adsreview" - max_wait_time_for_consult_secs: 43200 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ad_review_request_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "ads_review" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: "^1421" - } - inputs { - type: PARENT_FRD - consult_frd_id: "ISSUE_DESCRIPTION" - is_optional: false - parent_frd_id: "^5305" - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "unreviewed_ads_keywords_and_extensions" - } - inputs { - type: CONSTANT - consult_frd_id: "FEATURE" - is_optional: false - constant_value: "regular_review" - } - inputs { - type: PARENT_FRD - consult_frd_id: "BUSINESS_LANGUAGE" - is_optional: false - parent_frd_id: "^3906" - } - inputs { - type: CONSTANT - consult_frd_id: "INDENTIFIER_COMPLEXITY" - is_optional: false - constant_value: "easy" - } -} -# File: "Ad Review (Non-Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_Adsreview" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ad_review_request_autoconsult" - } - - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "ads_review" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: "^1421" - } - inputs { - type: PARENT_FRD - consult_frd_id: "ISSUE_DESCRIPTION" - is_optional: false - parent_frd_id: "^5305" - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "unreviewed_ads_keywords_and_extensions" - } - inputs { - type: CONSTANT - consult_frd_id: "FEATURE" - is_optional: false - constant_value: "regular_review" - } - inputs { - type: PARENT_FRD - consult_frd_id: "BUSINESS_LANGUAGE" - is_optional: false - parent_frd_id: "^3906" - } - inputs { - type: CONSTANT - consult_frd_id: "INDENTIFIER_COMPLEXITY" - is_optional: false - constant_value: "easy" - } -} -# File: "Review Account Under Review (Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_accountappeals" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_accountappeals_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "accounts_review" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: "^1421" - } - inputs { - type: PARENT_FRD - consult_frd_id: "ISSUE_DESCRIPTION" - is_optional: false - parent_frd_id: "^2941" - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "review_account_under_review" - } - inputs { - type: CONSTANT - consult_frd_id: "INDENTIFIER_COMPLEXITY" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "POLICY" - is_optional: false - signal_type: "^2356" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_accountappeals" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_accountappeals_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "accounts_review" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: "^1421" - } - inputs { - type: PARENT_FRD - consult_frd_id: "ISSUE_DESCRIPTION" - is_optional: false - parent_frd_id: "^2941" - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "review_account_under_review" - } - inputs { - type: CONSTANT - consult_frd_id: "INDENTIFIER_COMPLEXITY" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "POLICY" - is_optional: false - signal_type: "^2356" - } -} -# File: "Accounts Review Requests (Non-Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_accountappeals" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_accountappeals_autoconsult" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "accounts_review" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: "^1421" - } - inputs { - type: PARENT_FRD - consult_frd_id: "ISSUE_DESCRIPTION" - is_optional: false - parent_frd_id: "^2941" - } - inputs { - type: CONSTANT - consult_frd_id: "INDENTIFIER_COMPLEXITY" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "POLICY" - is_optional: false - signal_type: "^2356" - } -} -# File: "Review Suspended Account (Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_accountappeals" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_accountappeals_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "accounts_review" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: "^1421" - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "rereview_suspended_account" - } - inputs { - type: CONSTANT - consult_frd_id: "INDENTIFIER_COMPLEXITY" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "POLICY" - is_optional: false - signal_type: "^2356" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_accountappeals" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_accountappeals_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "accounts_review" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: "^1421" - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "rereview_suspended_account" - } - inputs { - type: CONSTANT - consult_frd_id: "INDENTIFIER_COMPLEXITY" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "POLICY" - is_optional: false - signal_type: "^2356" - } -} -# File: "Review Suspended Account (Non-Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_accountappeals" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_accountappeals_autoconsult" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "accounts_review" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: "^1421" - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "rereview_suspended_account" - } - inputs { - type: CONSTANT - consult_frd_id: "INDENTIFIER_COMPLEXITY" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "POLICY" - is_optional: false - signal_type: "^2356" - } -} -# File: "Suspended Long Form (Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_accountappeals" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_accountappeals_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "accounts_review" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.policy" - is_optional: false - signal_type: "^2356" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.website_req" - is_optional: false - parent_frd_id: "^1677" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.who_pays" - is_optional: false - parent_frd_id: "^14657" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.summary_of_issue" - is_optional: false - parent_frd_id: "^5305" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.sample_keywords" - is_optional: false - parent_frd_id: "^1881" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_address_street" - is_optional: false - parent_frd_id: "^1880" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_address_town" - is_optional: false - parent_frd_id: "^1879" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_address_zip" - is_optional: false - parent_frd_id: "^1885" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_country_req" - is_optional: false - parent_frd_id: "^1886" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.business_desc" - is_optional: false - parent_frd_id: "^14660" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.countries_business_serve" - is_optional: false - parent_frd_id: "^14659" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.name" - is_optional: false - parent_frd_id: "^1665" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.owner_or_emp" - is_optional: false - parent_frd_id: "^14661" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.payment_option" - is_optional: false - parent_frd_id: "^1882" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.phone_number" - is_optional: false - parent_frd_id: "^30248" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_accountappeals" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_accountappeals_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "accounts_review" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.policy" - is_optional: false - signal_type: "^2356" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.website_req" - is_optional: false - parent_frd_id: "^1677" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.who_pays" - is_optional: false - parent_frd_id: "^14657" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.summary_of_issue" - is_optional: false - parent_frd_id: "^5305" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.sample_keywords" - is_optional: false - parent_frd_id: "^1881" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_address_street" - is_optional: false - parent_frd_id: "^1880" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_address_town" - is_optional: false - parent_frd_id: "^1879" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_address_zip" - is_optional: false - parent_frd_id: "^1885" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_country_req" - is_optional: false - parent_frd_id: "^1886" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.business_desc" - is_optional: false - parent_frd_id: "^14660" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.countries_business_serve" - is_optional: false - parent_frd_id: "^14659" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.name" - is_optional: false - parent_frd_id: "^1665" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.owner_or_emp" - is_optional: false - parent_frd_id: "^14661" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.payment_option" - is_optional: false - parent_frd_id: "^1882" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.phone_number" - is_optional: false - parent_frd_id: "^30248" - } -} -# File: "Suspended Long Form (Non-Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_accountappeals" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_accountappeals_autoconsult" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "accounts_review" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.policy" - is_optional: false - signal_type: "^2356" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.website_req" - is_optional: false - parent_frd_id: "^1677" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.who_pays" - is_optional: false - parent_frd_id: "^14657" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.summary_of_issue" - is_optional: false - parent_frd_id: "^5305" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.sample_keywords" - is_optional: false - parent_frd_id: "^1881" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_address_street" - is_optional: false - parent_frd_id: "^1880" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_address_town" - is_optional: false - parent_frd_id: "^1879" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_address_zip" - is_optional: false - parent_frd_id: "^1885" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_country_req" - is_optional: false - parent_frd_id: "^1886" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.business_desc" - is_optional: false - parent_frd_id: "^14660" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.countries_business_serve" - is_optional: false - parent_frd_id: "^14659" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.name" - is_optional: false - parent_frd_id: "^1665" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.owner_or_emp" - is_optional: false - parent_frd_id: "^14661" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.payment_option" - is_optional: false - parent_frd_id: "^1882" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.phone_number" - is_optional: false - parent_frd_id: "^30248" - } -} -# File: "Copyright (Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "POLICY" - is_optional: false - constant_value: "copyrights" - } - inputs { - type: CONSTANT - consult_frd_id: "INDENTIFIER_COMPLEXITY" - is_optional: false - constant_value: "easy" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "POLICY" - is_optional: false - constant_value: "copyrights" - } - inputs { - type: CONSTANT - consult_frd_id: "INDENTIFIER_COMPLEXITY" - is_optional: false - constant_value: "easy" - } -} -# File: "Copyright (Non-Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - inputs { - type: CONSTANT - consult_frd_id: "REQUEST" - is_optional: false - constant_value: "certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "POLICY" - is_optional: false - constant_value: "copyrights" - } - inputs { - type: CONSTANT - consult_frd_id: "INDENTIFIER_COMPLEXITY" - is_optional: false - constant_value: "easy" - } -} -# File: "EU Election Certification (Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_lookup_frds { - id: "^16296" - value: "Germany" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_lookup_frds { - id: "^16296" - value: "Netherlands" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_lookup_frds { - id: "^16296" - value: "Spain" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_lookup_frds { - id: "^16296" - value: "Check Republic" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_lookup_frds { - id: "^16296" - value: "United Kingdom" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_lookup_frds { - id: "^16296" - value: "Germany" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_lookup_frds { - id: "^16296" - value: "Netherlands" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_lookup_frds { - id: "^16296" - value: "Spain" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_lookup_frds { - id: "^16296" - value: "Check Republic" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_lookup_frds { - id: "^16296" - value: "United Kingdom" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -# File: "EU Election Certification #2 (Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "hard" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "hard" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -# File: "EU Election Certification (Non-Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 259200 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: ""Germany" or "Netherlands" or "Spain" or "Check Republic" or "United Kingdom" # TODO(wpcarro): scrape.attribute_id_for could not find the ID." - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -# File: "EU Election Certification #2 (Non-Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 259200 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -# File: "US Election Certification (Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.country" - is_optional: false - constant_value: "united_states_of_america" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.country" - is_optional: false - constant_value: "united_states_of_america" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -# File: "US Election Certification (Non-Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 259200 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.country" - is_optional: false - constant_value: "united_states_of_america" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -# File: "IN Election Certification (Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "Neo.country" - is_optional: false - constant_value: "india" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "Neo.country" - is_optional: false - constant_value: "india" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } -} -# File: "IN Election Certification (Non-Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 259200 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "Neo.country" - is_optional: false - constant_value: "india" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } -} -# File: "NY Election Certification (Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "us_election_ads_new_york_only" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.country" - is_optional: false - constant_value: "united_states_of_america" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.product" - is_optional: false - constant_value: "google_ads" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "us_election_ads_new_york_only" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.country" - is_optional: false - constant_value: "united_states_of_america" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.product" - is_optional: false - constant_value: "google_ads" - } -} -# File: "NY Election Certification (Non-Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 259200 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "us_election_ads_new_york_only" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.country" - is_optional: false - constant_value: "united_states_of_america" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } -} -# File: "Ticket Seller Certification (Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "event_ticket_reseller" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "event_ticket_reseller" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } -} -# File: "Ticket Seller Certification (Non-Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 259200 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "event_ticket_reseller" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } -} -# File: "Pharma Certification EMEA (Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "online_pharmacy_certification_required" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "online_pharmacy_certification_required" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } -} -# File: "Pharma Certification EMEA (Non-Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 259200 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "online_pharmacy_certification_required" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } -} -# File: "CSFP Certification (Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "complex_speculative_financial_policy" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "complex_speculative_financial_policy" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } -} -# File: "CSFP Certification (Non-Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 259200 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "complex_speculative_financial_policy" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } -} -# File: "Social Casino Games Certification (Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "social_casino_games" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "social_casino_games" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } -} -# File: "Social Casino Games Certification (NonOlympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 259200 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "social_casino_games" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } -} -# File: "Gambling Certification (Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "online_gambling" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "online_gambling" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } -} -# File: "Gambling Certification (Non-Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 259200 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "online_gambling" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } -} -# File: "Addiction Services Certification (Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "addiction_services" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "addiction_services" - } -} -# File: "Addiction Services Certification (Non-Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 259200 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "addiction_services" - } -} -# File: "HTML5 Application (Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_HTML5_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.request" - is_optional: false - constant_value: "whitelisting" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.component" - is_optional: false - constant_value: "html5_ads" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_HTML5_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.request" - is_optional: false - constant_value: "whitelisting" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.component" - is_optional: false - constant_value: "html5_ads" - } -} -# File: "HTML5 Application (Non-Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_HTML5_autoconsult" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.request" - is_optional: false - constant_value: "whitelisting" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.component" - is_optional: false - constant_value: "html5_ads" - } -} -# File: "Free Desktop Software Policy (Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "unwanted_software" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "unwanted_software" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } -} -# File: "Free Desktop Software Policy (Non-Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 259200 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "unwanted_software" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } -} -# File: "Untrustworthy Promotions (Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_accountappeals" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_accountappeals_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "accounts_review" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: "^1421" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.policy" - is_optional: false - signal_type: "^2356" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.website_req" - is_optional: false - parent_frd_id: "^1677" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.who_pays" - is_optional: false - parent_frd_id: "^14657" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.summary_of_issue" - is_optional: false - parent_frd_id: "^5305" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.sample_keywords" - is_optional: false - parent_frd_id: "^1881" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_address_street" - is_optional: false - parent_frd_id: "^1880" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_address_town" - is_optional: false - parent_frd_id: "^1879" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_address_zip" - is_optional: false - parent_frd_id: "^1885" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_country_req" - is_optional: false - parent_frd_id: "^1886" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.business_desc" - is_optional: false - parent_frd_id: "^14660" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.countries_business_serve" - is_optional: false - parent_frd_id: "^14659" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.name" - is_optional: false - parent_frd_id: "^1665" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.owner_or_emp" - is_optional: false - parent_frd_id: "^14661" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.payment_option" - is_optional: false - parent_frd_id: "^1882" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.phone_number" - is_optional: false - parent_frd_id: "^30248" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_accountappeals" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_accountappeals_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "accounts_review" - } - inputs { - type: SIGNAL - consult_frd_id: "GOOGLE_ADS_INTERNAL_CUSTOMER_ID" - is_optional: false - signal_type: "^1421" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.policy" - is_optional: false - signal_type: "^2356" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.website_req" - is_optional: false - parent_frd_id: "^1677" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.who_pays" - is_optional: false - parent_frd_id: "^14657" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.summary_of_issue" - is_optional: false - parent_frd_id: "^5305" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.sample_keywords" - is_optional: false - parent_frd_id: "^1881" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_address_street" - is_optional: false - parent_frd_id: "^1880" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_address_town" - is_optional: false - parent_frd_id: "^1879" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_address_zip" - is_optional: false - parent_frd_id: "^1885" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_country_req" - is_optional: false - parent_frd_id: "^1886" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.business_desc" - is_optional: false - parent_frd_id: "^14660" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.countries_business_serve" - is_optional: false - parent_frd_id: "^14659" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.name" - is_optional: false - parent_frd_id: "^1665" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.owner_or_emp" - is_optional: false - parent_frd_id: "^14661" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.payment_option" - is_optional: false - parent_frd_id: "^1882" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.phone_number" - is_optional: false - parent_frd_id: "^30248" - } -} -# File: "Untrustworthy Promotions (Non-Olympus)" -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_accountappeals" - max_wait_time_for_consult_secs: 172800 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_accountappeals_autoconsult" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "accounts_review" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.policy" - is_optional: false - signal_type: "^2356" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.website_req" - is_optional: false - parent_frd_id: "^1677" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.who_pays" - is_optional: false - parent_frd_id: "^14657" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.summary_of_issue" - is_optional: false - parent_frd_id: "^5305" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.sample_keywords" - is_optional: false - parent_frd_id: "^1881" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_address_street" - is_optional: false - parent_frd_id: "^1880" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_address_town" - is_optional: false - parent_frd_id: "^1879" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_address_zip" - is_optional: false - parent_frd_id: "^1885" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.billing_country_req" - is_optional: false - parent_frd_id: "^1886" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.business_desc" - is_optional: false - parent_frd_id: "^14660" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.countries_business_serve" - is_optional: false - parent_frd_id: "^14659" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.name" - is_optional: false - parent_frd_id: "^1665" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.owner_or_emp" - is_optional: false - parent_frd_id: "^14661" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.payment_option" - is_optional: false - parent_frd_id: "^1882" - } - inputs { - type: PARENT_FRD - consult_frd_id: "Form.phone_number" - is_optional: false - parent_frd_id: "^30248" - } -} -################################################################# -# csv_to_proto: Test failure. -################################################################# -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_lookup_frds { - id: "^16296" - value: "Germany" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_lookup_frds { - id: "^16296" - value: "Netherlands" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_lookup_frds { - id: "^16296" - value: "Spain" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_lookup_frds { - id: "^16296" - value: "Check Republic" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus" - } - parent_lookup_frds { - id: "^16296" - value: "United Kingdom" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_lookup_frds { - id: "^16296" - value: "Germany" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_lookup_frds { - id: "^16296" - value: "Netherlands" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_lookup_frds { - id: "^16296" - value: "Spain" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_lookup_frds { - id: "^16296" - value: "Check Republic" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} -consult_settings { - taxonomy_id: 9249441 - view_id: "Routing - Ads_certs" - max_wait_time_for_consult_secs: 86400 - reroute_on_customer_interaction: true - parent_lookup_frds { - id: "^88149" - value: "ads_certs_autoconsult" - } - parent_lookup_frds { - id: "^87379" - value: "olympus_plus" - } - parent_lookup_frds { - id: "^16296" - value: "United Kingdom" - } - parent_return_routing_frds { - id: "ROBOT_WORKFLOW_STATE" - value: "automation_escalate" - } - consult_routing_frds { - id: "ORGANIZATION" - value: "trust_safety" - } - consult_routing_frds { - id: "VERTICAL" - value: "ads" - } - consult_routing_frds { - id: "REQUEST_TYPE" - value: "Certifications" - } - inputs { - type: PARENT_FRD - consult_frd_id: "neo.country" - is_optional: false - parent_frd_id: "^16296" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.policy" - is_optional: false - constant_value: "elections" - } - inputs { - type: CONSTANT - consult_frd_id: "neo.complexity" - is_optional: false - constant_value: "easy" - } - inputs { - type: SIGNAL - consult_frd_id: "neo.product" - is_optional: false - signal_type: "^68613" - } -} diff --git a/universe/ac_types/parse.py b/universe/ac_types/parse.py deleted file mode 100644 index 872f3f0c3fcc..000000000000 --- a/universe/ac_types/parse.py +++ /dev/null @@ -1,138 +0,0 @@ -import re -import string -from test_utils import simple_assert - - -def if_empty(x, parser): - """If the field is empty, use `x`, otherwise, call `parser` on it.""" - def fn(y): - if y == "": - return x - else: - return parser(y) - - return fn - - -# nullable :: Parser -> Parser -def nullable(parser): - def fn(x): - if x == "": - return None - else: - return parser(x) - - return fn - - -def required(column_name, parser): - def fn(x): - if x == "": - raise Exception( - "\"{}\" is a required field and cannot be empty".format( - column_name)) - else: - return parser(x) - - return fn - - -def apply_parser(parser, row): - """Calls each value in `parser` on the corresponding field in the - dictionary, `row`.""" - result = {} - for k, fn in parser.items(): - result[k] = fn(row[k]) - return result - - -def raise_parse_error(x, expected): - """Raises a generic `Exception` when `x` is not a member of the `expected` - set.""" - raise Exception("\"{}\" is none of the following: \"{}\"".format( - x, ", ".join(expected))) - - -def as_hours(x): - match = re.search(r'(\d+) hours', x) - if match: - try: - return int(match[1]) - except: - raise Exception('Failed to parse {} as an int'.format(match[1])) - else: - raise Exception('Failed to parse {} as hours'.format(x)) - - -actual = as_hours('24 hours') -expected = 24 -simple_assert(actual, expected, name='as_hours') - - -def as_mapping(mapping): - def fn(x): - if mapping[x]: - return mapping[x] - else: - raise_parse_error(x, set(mapping.keys())) - - return fn - - -# as_yes_no :: String -> Boolean -def as_yes_no(x): - """Attempt to parse `x`, a Yes or No value, into a boolean.""" - if x == "Yes": - return True - elif x == "No": - return False - else: - raise_parse_error(x, {"Yes", "No"}) - - -# as_data_source_type :: String -> String -def as_data_source_type(x): - """Attempt to parse `x` as the Data Source Type column, which is an enum - defined in the go/consult-types-authwf-auto-consult sheet.""" - acceptable = {"Hard-Code", "N/A", "Atlas", "Form"} - if x not in acceptable: - raise_parse_error(x, acceptable) - return x - - -# as_type :: String -> String -def as_type(x): - """Attempt to parse `x` as the Type column, which is an enum defined in the - go/consult-types-authwf-auto-consult sheet.""" - acceptable = { - "Parent Routing FRD", "Consult Parameter", "Consult Routing FRD", - "Input", "Return Routing FRD" - } - if x not in acceptable: - raise_parse_error(x, acceptable) - return x - - -def as_int(x): - return int(x) - - -def as_union_type(x): - if " or " in x: - return [string.trim_surrounding('"', x) for x in x.split(" or ")] - else: - return [x] - - -simple_assert(as_union_type('Non-Union'), ['Non-Union'], name='as_union_type') - -simple_assert(as_union_type( - '"Germany" or "Netherlands" or "Spain" or "Check Republic" or "United Kingdom"' -), ['Germany', 'Netherlands', 'Spain', 'Check Republic', 'United Kingdom'], - name='as_union_type') - - -# identity :: a -> a -def identity(x): - """Returns `x` unchanged.""" - return x diff --git a/universe/ac_types/parse.pyc b/universe/ac_types/parse.pyc deleted file mode 100644 index b1be813ba770..000000000000 --- a/universe/ac_types/parse.pyc +++ /dev/null Binary files differdiff --git a/universe/ac_types/prelude.py b/universe/ac_types/prelude.py deleted file mode 100644 index 21a809288fd8..000000000000 --- a/universe/ac_types/prelude.py +++ /dev/null @@ -1,19 +0,0 @@ -from test_utils import simple_assert - - -def pipe(x, fns): - """Apply `x` to the first function in `fns` and then use its output as the - input for the next function in the list.""" - result = x - for f in fns: - result = f(result) - return result - - -actual = pipe(10, [ - lambda x: x + 3, - lambda x: x - 1, - lambda x: x * 2, -]) -expected = (((10 + 3) - 1) * 2) -simple_assert(actual, expected, name="pipe") diff --git a/universe/ac_types/pretty.py b/universe/ac_types/pretty.py deleted file mode 100644 index ac1f7203187b..000000000000 --- a/universe/ac_types/pretty.py +++ /dev/null @@ -1,7 +0,0 @@ -from pprint import PrettyPrinter - -printer = PrettyPrinter(indent=2) - - -def pretty_print(x): - return printer.pprint(x) diff --git a/universe/ac_types/pretty.pyc b/universe/ac_types/pretty.pyc deleted file mode 100644 index 1f735fdb25e0..000000000000 --- a/universe/ac_types/pretty.pyc +++ /dev/null Binary files differdiff --git a/universe/ac_types/regex.py b/universe/ac_types/regex.py deleted file mode 100644 index e5203bedfae4..000000000000 --- a/universe/ac_types/regex.py +++ /dev/null @@ -1,18 +0,0 @@ -import re -from test_utils import simple_assert - - -def remove(regex, x): - """Attempt to remove the substring matching `re` from `x`.""" - return re.sub(regex, '', x) - - -# No occurence -simple_assert(remove(r'\s\([\w\s]+\)$', 'Atlas.CustomerId'), - 'Atlas.CustomerId', - name="remove") -# Single occurence -simple_assert(remove(r'\s\([\w\s]+\)$', - 'Atlas.CustomerId (adjusted for MCC IDs)'), - 'Atlas.CustomerId', - name="remove") diff --git a/universe/ac_types/scrape.py b/universe/ac_types/scrape.py deleted file mode 100644 index a68bdcc9afca..000000000000 --- a/universe/ac_types/scrape.py +++ /dev/null @@ -1,51 +0,0 @@ -from test_utils import simple_assert -import re -import log -import regex - - -# Warning: This is a linear search each time. Quite scrappy and hackish, but it -# works. Trademarked... -def attribute_id_for(x, error_when_absent=True): - """Return the Attribute ID for `x` as defined in attributes.pb.""" - is_next = False - known = { - 'Form.description': '^2941', - 'Form.country': '^16296', - # Entering this here since some of the CSV have malformed data, and I'm - # not currently interested in a more robust solution. - 'form.country': '^16296', - 'Form.countries_business_serve': '^14659', - 'Form.name': '^1665', - } - if x in known: - return known[x] - - for line in open('attributes.pb', 'r').readlines(): - if is_next: - return line[7:-2] - if x in line: - is_next = True - else: - is_next = False - if error_when_absent: - raise Exception("Could not find \"{}\" in the protobuf.".format(x)) - else: - return '{} # TODO(wpcarro): scrape.attribute_id_for could not find the ID.'.format( - x) - - -actual = [ - attribute_id_for('Form.description'), - attribute_id_for('Form.country'), - attribute_id_for('Form.countries_business_serve'), - attribute_id_for('Form.name'), - attribute_id_for('Atlas.CustomerId'), - attribute_id_for('Form.form-id'), - attribute_id_for('Form.Ar_descr_textbox'), - attribute_id_for('AR.ART.LastDecisionRecommended'), -] -expected = [ - '^2941', '^16296', '^14659', '^1665', '^1421', '^4297', '^6664', '^106918' -] -simple_assert(actual, expected) diff --git a/universe/ac_types/serialize.py b/universe/ac_types/serialize.py deleted file mode 100644 index 966a9024f3fa..000000000000 --- a/universe/ac_types/serialize.py +++ /dev/null @@ -1,67 +0,0 @@ -from test_utils import simple_assert -import string as string - - -def literal(x): - if x == True: - return 'true' - elif x == False: - return 'false' - elif isinstance(x, int): - return str(x) - elif x is None: - raise Exception("None!") - # `x` is a string - else: - x = string.trim_surrounding('"', x) - return "\"{}\"".format(x) - - -actual = [ - literal(True), - literal(9249441), - literal("COMPLEXITY"), - literal("\"doubly wrapped string\"") -] -expected = ["true", "9249441", "\"COMPLEXITY\"", "\"doubly wrapped string\""] -simple_assert(actual, expected, name="literal") - - -def input(input_type=None, fields=None): - header = 'inputs {' - input_type_field = ' type: {}'.format(input_type) - fields = '\n'.join( - [" {}: {}".format(k, literal(v)) for k, v in fields.items()]) - if input_type == 'SIGNAL': - fields += '\n signal_type: CID' - footer = '}' - return '\n'.join([header, input_type_field, fields, footer]) - - -actual = input(input_type='CONSTANT', - fields={ - 'consult_frd_id': 'FEATURE', - 'is_optional': False, - 'constant_value': "regular_review", - }) -expected = """inputs { - type: CONSTANT - consult_frd_id: "FEATURE" - is_optional: false - constant_value: "regular_review" -}""" -simple_assert(actual, expected, name='input') - -actual = input(input_type='CONSTANT', - fields={ - 'consult_frd_id': 'FEATURE', - 'is_optional': False, - 'constant_value': "\"doubly wrapped string\"", - }) -expected = """inputs { - type: CONSTANT - consult_frd_id: "FEATURE" - is_optional: false - constant_value: "doubly wrapped string" -}""" -simple_assert(actual, expected, name='input') diff --git a/universe/ac_types/string.py b/universe/ac_types/string.py deleted file mode 100644 index 9ef6c3ab52a6..000000000000 --- a/universe/ac_types/string.py +++ /dev/null @@ -1,90 +0,0 @@ -from test_utils import simple_assert - - -def with_banner(x): - header = '#################################################################' - text = '# {}'.format(x) - footer = '#################################################################' - return '\n'.join([header, text, footer]) - - -def starts_with(prefix, x): - """Return True if `x` starts with `prefix`.""" - return x.startswith(prefix) - - -def ends_with(prefix, x): - """Return True if `x` starts with `prefix`.""" - return x.endswith(prefix) - - -def trim_prefix(prefix, x): - """Remove `prefix` from `x` if present.""" - if x.startswith(prefix): - return x[len(prefix):] - else: - return x - - -actual = [trim_prefix('"', '"leading"'), trim_prefix('"', 'non-leading')] -expected = ['leading"', 'non-leading'] -simple_assert(actual, expected, name="trim_prefix") - - -def trim_suffix(suffix, x): - """Remove `suffix` from `x` if present.""" - if x.endswith(suffix): - amt = len(x) - len(suffix) - return x[0:amt] - else: - return x - - -actual = [ - trim_suffix('ing"', '"trailing"'), - trim_suffix('ing"', 'non-trailing') -] -expected = ['"trail', 'non-trailing'] -simple_assert(actual, expected, name="trim_suffix") - - -def trim_surrounding(b, x): - """Remove `b` from `x` if present as prefix and suffix.""" - if x.startswith(b) and x.endswith(b): - x = trim_prefix(b, x) - x = trim_suffix(b, x) - return x - else: - return x - - -actual = [ - trim_surrounding('"', '"surrounded"'), - trim_surrounding('"', 'non-surrounded'), - trim_surrounding('"', '"just-prefixed'), - trim_surrounding('"', 'just-suffixed"'), -] -expected = ['surrounded', 'non-surrounded', '"just-prefixed', 'just-suffixed"'] -simple_assert(actual, expected, name="trim_surrounding") - - -def indent(x, spaces=2): - """Indent string `x` number of `spaces`, defaulting to two.""" - return '\n'.join([' ' * spaces + line for line in x.split('\n')]) - - -actual = indent("""testing -this function -out""") -expected = """ testing - this function - out""" -simple_assert(actual, expected, name="indent") - -actual = indent("""testing -this function -out""", spaces=4) -expected = """ testing - this function - out""" -simple_assert(actual, expected, name="indent") diff --git a/universe/ac_types/string.pyc b/universe/ac_types/string.pyc deleted file mode 100644 index df93a05fd5cd..000000000000 --- a/universe/ac_types/string.pyc +++ /dev/null Binary files differdiff --git a/universe/ac_types/test_utils.py b/universe/ac_types/test_utils.py deleted file mode 100644 index 1c1570754eb6..000000000000 --- a/universe/ac_types/test_utils.py +++ /dev/null @@ -1,21 +0,0 @@ -silent_on_success = True - - -# I need to define this herein to avoid introducing a circular dependency. -def with_banner(x): - header = '#################################################################' - text = '# {}'.format(x) - footer = '#################################################################' - return '\n'.join([header, text, footer]) - - -def simple_assert(actual, expected, name=None): - try: - assert actual == expected - if silent_on_success: - return None - else: - print(with_banner('{}: Test passes!'.format(name))) - except: - print(with_banner('{}: Test failure.'.format(name))) - print(actual) diff --git a/universe/ac_types/test_utils.pyc b/universe/ac_types/test_utils.pyc deleted file mode 100644 index ed6d0ea9642f..000000000000 --- a/universe/ac_types/test_utils.pyc +++ /dev/null Binary files differdiff --git a/universe/ac_types/todo.org b/universe/ac_types/todo.org deleted file mode 100644 index e4e274cc3d21..000000000000 --- a/universe/ac_types/todo.org +++ /dev/null @@ -1,5 +0,0 @@ -* DONE Ensure order matches trix. -* DONE Use FRD identifier and not its display name for inputs.CONSTANT. -* DONE Ensure "Non-Sensitive Ads Review (Olympus)" support "olympus" and "olympus_plus". -* DONE Append output to consult.textproto. -* DONE Run `hg fix` on consult.textproto. |